services: billingsite: build: . command: bash -c "python manage.py makemigrations && python manage.py migrate && python manage.py collectstatic --noinput && python manage.py custom_csu --username ${DJANGO_SU_USERNAME} $( [ -n '${DJANGO_SU_EMAIL}' ] && echo '--email ${DJANGO_SU_EMAIL}' ) --password ${DJANGO_SU_PASSWORD} && python manage.py app_init --username ${DJANGO_SU_USERNAME} && gunicorn --config gunicorn/config.py --bind 0.0.0.0:${GUNICORN_PORT} mysite.wsgi:application" volumes: - static_volume:/home/app/billing/static expose: - ${GUNICORN_PORT} env_file: - .env depends_on: - billingdb restart: unless-stopped billingtatic: build: ./nginx ports: - "${NGINX_PORT}:80" env_file: - .env volumes: - static_volume:/home/app/billing/static depends_on: - billingsite restart: unless-stopped billingdb: image: postgres:alpine environment: POSTGRES_DB: ${DB_NAME} POSTGRES_USER: ${DB_USER} POSTGRES_PASSWORD: ${DB_PASSWORD} PGPORT: ${DB_PORT} volumes: - postgres_data:/var/lib/postgresql/data/ env_file: - .env restart: unless-stopped volumes: static_volume: postgres_data: