Rework dockerfile and compose to separate migrations

This commit is contained in:
Andrew Godwin 2022-11-21 17:15:00 -07:00
parent f62fd13cbc
commit 45c7e0a38c
4 changed files with 37 additions and 31 deletions

View file

@ -5,3 +5,6 @@ image:
docs:
cd docs/ && make html
compose_up:
docker-compose -f docker/docker-compose.yml up

View file

@ -19,4 +19,4 @@ EXPOSE 8000
# Set some sensible defaults
ENV GUNICORN_CMD_ARGS="--workers 8"
CMD ["sh", "/takahe/docker/start.sh"]
CMD ["gunicorn", "takahe.wsgi:application", "-b", "0.0.0.0:8000"]

View file

@ -1,4 +1,28 @@
version: "3"
version: "3.4"
x-takahe-common:
&takahe-common
build: .
image: takahe:latest
environment:
DJANGO_SETTINGS_MODULE: takahe.settings.production
PGHOST: db
PGDATABASE: takahe
PGUSER: postgres
PGPASSWORD: insecure_password
TAKAHE_SECRET_KEY: insecure_secret
TAKAHE_MAIN_DOMAIN: example.com
TAKAHE_EMAIL_CONSOLE_ONLY: "true"
TAKAHE_MEDIA_BACKEND: local
TAKAHE_AUTO_ADMIN_EMAIL: admin@example.com
networks:
- external_network
- internal_network
restart: on-failure
depends_on:
- db
volumes:
- ..:/takahe/
services:
db:
@ -11,34 +35,18 @@ services:
- internal_network
restart: always
environment:
- "POSTGRES_DB=takahe"
- "POSTGRES_USER=postgres"
- "POSTGRES_PASSWORD=insecure_password"
POSTGRES_DB: takahe
POSTGRES_USER: postgres
POSTGRES_PASSWORD: insecure_password
web:
build: .
image: takahe:latest
environment:
- "DJANGO_SETTINGS_MODULE=takahe.settings.production"
- "PGHOST=db"
- "PGDATABASE=takahe"
- "PGUSER=postgres"
- "PGPASSWORD=insecure_password"
- "TAKAHE_SECRET_KEY=insecure_secret"
- "TAKAHE_MAIN_DOMAIN=example.com"
- "TAKAHE_EMAIL_CONSOLE_ONLY=True"
- "TAKAHE_MEDIA_BACKEND=local"
- "TAKAHE_AUTO_ADMIN_EMAIL=admin@example.com"
networks:
- external_network
- internal_network
restart: always
depends_on:
- db
<<: *takahe-common
ports:
- "8000:8000"
volumes:
- ../:/takahe/
setup:
<<: *takahe-common
command: ["/takahe/manage.py", "migrate"]
networks:
internal_network:

View file

@ -1,5 +0,0 @@
#!/bin/sh
python3 manage.py migrate
exec gunicorn takahe.wsgi:application -b 0.0.0.0:8000