First-time setup and dev docker compose config overhaul #1620
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
The goal of this PR is to make the first-time setup process more robust while offering a setup variation for non-developers, to better facilitate an on-ramp for a production environment.
run_first script split
The previous
docker/run_first.sh
script has been split into two variations:run_first_for_dev.sh
, more or less in parity with the existingrun_first.sh
scriptrun_first_for_nondev.sh
, which provides for a-la-carte configuration options to enable a leaner, faster setup.Docker compose override changes
The default
docker-compose.override.yml
file is no longer included by default and is untracked. Dev-specific compose configurations that previously lived indocker-compose.yml
now live in a newdocker-compose.development.yml
. Thedocker-compose.override.yml
file is dynamically authored by either of the two run_first script variants during first-time setup.Development env variable changes
The previous
docker-compose.yml
file included explicit references to a variety of environment variable configurations that made it difficult to override. These values have been reduced to dev-specific values that are themselves generated from thedocker/.env
file. Thedocker/.env
file has been expanded with dev environment variables that can be overridden indocker/.env.local
as desired.nginx configuration changes
There is now a third nginx config:
nginx-nondev.conf
, which is used in non-dev setups. This configuration bridges the gap between pure dev nginx configs and the production nginx config to allow both previous options to remain unchanged.