Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -203,6 +203,8 @@ Each environment is essentially a bunch of different services all governed by `d
- A PR merged to either `development` or `master` will trigger CI to build container images that are then tagged (based on the branch name and ":latest" respectively) and stored in our GitHub Packages container image repository.
- CI triggers a webhook that tells the host systems to pull and run new container images and restart any services that have been updated.

**IMPORTANT!** - The CI/CD process uses Docker Compose to build the specific container images that will be used in external environments. Success of the the build-and-deploy workflow is dependent on constructed services in `docker-compose.yaml`. If considering making changes there, please have a PR reviewed by devops folks :pray: :pray: :pray:

### Control of the deployed environment

The environment and secrets used for deployment live in <https://github.com/cmu-delphi/delphi-ansible-web>. Any changes to the environment should be made there and then tested and validated by devops folks.
16 changes: 10 additions & 6 deletions docker-compose.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -18,14 +18,16 @@ services:
ports:
- "3306:3306"

# Production service - "service", "image", and "container_name" should all contain the same
# reference, based on the name of the service.
sdwebapp:
image: ${REGISTRY}signal_documentation-webapp${TAG}
image: ${REGISTRY}signal_documentation-sdwebapp${TAG}
build:
context: .

env_file:
- ./.env
container_name: signal_documentation-webapp
container_name: signal_documentation-sdwebapp
restart: on-failure
command: sh -c "python3 /usr/src/signal_documentation/src/manage.py migrate --noinput &&
python3 /usr/src/signal_documentation/src/manage.py collectstatic --noinput &&
Expand All @@ -47,13 +49,15 @@ services:
restart: always
ports:
- "6379:6379"


# Production service - "service", "image", and "container_name" should all contain the same
# reference, based on the name of the service.
sdnginx:
image: ${REGISTRY}signal_documentation-nginx${TAG}
image: ${REGISTRY}signal_documentation-sdnginx${TAG}
build: ./nginx
env_file:
- ./.env
container_name: signal_documentation-nginx
container_name: signal_documentation-sdnginx
restart: on-failure
volumes:
- ./src/staticfiles:/staticfiles
Expand Down Expand Up @@ -107,7 +111,7 @@ services:

volumes:
mysql:
webapp:
sdwebapp:
static:
celery:
celery-beat: