Title: What's new in Director 4.0 ...
If you were used to Director 3, Director 4.0 attempts to remain relatively compatible and preserve certain workflows. However, it is important to note that Director 4.0 is a rewrite, aiming to take advantage of new technologies and fixing fundamental design flaws from Director 3. Director 4.0 functions quite differently, and users should be aware of this.
This page only summarizes the most important user-visible changes in Director 4.0. If you have any questions or concerns, please feel free to contact us at director@tjhsst.edu.
- Your site now runs inside a Docker container. From the Image Selection page (see Site Configuration for details), you can select a Docker image, as well as choosing any extra packages you want to install.
- You will need to select a Docker image for your site to work properly. See Site Configuration for details.
- If you had a Python virtual environment, you'll need to destroy and recreate it -- the Python Docker images have newer versions of Python, and that breaks virtualenvs.
- If you were relying on packages that were installed system-wide on Director 3.0 (like Django), you'll need to start using a virtual environment (and/or install some of them on the Image selection page).
- You cannot hardcode your site's database URL (here's why).
- It is no longer possible to select a custom run script. Your run script must be named
run.shand located in either 1) the main site directory, 2) your site'sprivatedirectory, or 3) your site'spublicdirectory. (If more than one of these is present, the first one found takes precendence.)
- Git integration has been removed because the new Director 4.0 architecture makes it more difficult to implement and we saw limited usage. Currently, there are no plans to add Git integration.
If you require Git, install it from the "Configure Docker Image" page by adding
gitto the list of packages at the bottom of the page. See this page for more information. - The buttons for exporting/importing databases have been removed. You can still export/import databases, but you'll need to use
mysqldump/pg_dump(exporting) andmysql/psql(importing) manually from the command line.