platform/docker-compose.yml
Chris Anderson 732d8d1f12
Adds Docker Jobs (#63)
* Start creating action release flow

* Updates build workflow

* Removes one step

* Another try

* Tweaks to build paths

* Fixes docker ignore

* Tweaks to database migration

* Removes useless entrypoint

* Fixes to database files

* More tweaks to build

* Tweaks to base URL

* Allows for config file to override env

* Tweak to order

* Next try

* Fixes comma error

* Another try

* Adds a health endpoint

* Try Nginx proxy pass

* Re-adds environment path

* Remove auto build on branch

* Linter fixes
2023-03-04 21:11:59 -06:00

67 lines
No EOL
2 KiB
YAML

version: '3'
services:
mysql:
image: mysql:8.0.27
platform: linux/x86_64
environment:
- MYSQL_ROOT_PASSWORD=${DB_PASSWORD}
expose:
- 3306
volumes:
- mysql_data:/var/lib/mysql
restart: unless-stopped
healthcheck:
test: "/usr/bin/mysql parcelvoy --user=root --password=$$MYSQL_ROOT_PASSWORD --execute 'SELECT 1;'"
interval: 1s
retries: 120
api:
image: 'ghcr.io/parcelvoy/api:latest'
restart: always
ports:
- 3001:3001
links:
- mysql:mysql
depends_on:
mysql:
condition: service_healthy
environment:
NODE_ENV: ${NODE_ENV}
BASE_URL: ${BASE_URL}
APP_SECRET: ${APP_SECRET}
PORT: 3000
DB_CLIENT: ${DB_CLIENT}
DB_HOST: mysql
DB_USERNAME: ${DB_USERNAME}
DB_PASSWORD: ${DB_PASSWORD}
DB_PORT: 3306
DB_DATABASE: ${DB_DATABASE}
STORAGE_DRIVER: ${STORAGE_DRIVER}
STORAGE_BASE_URL: ${STORAGE_BASE_URL}
AWS_S3_BUCKET: ${AWS_S3_BUCKET}
QUEUE_DRIVER: ${QUEUE_DRIVER}
AWS_SQS_QUEUE_URL: ${AWS_SQS_QUEUE_URL}
AWS_ACCESS_KEY_ID: ${AWS_ACCESS_KEY_ID}
AWS_SECRET_ACCESS_KEY: ${S3_LOCAWS_SECRET_ACCESS_KEYAL_STACK}
AWS_REGION: ${AWS_REGION}
AUTH_DRIVER: ${AUTH_DRIVER}
AUTH_SAML_CALLBACK_URL: ${AUTH_SAML_CALLBACK_URL}
AUTH_SAML_ENTRY_POINT_URL: ${AUTH_SAML_ENTRY_POINT_URL}
AUTH_SAML_ISSUER: ${AUTH_SAML_ISSUER}
AUTH_SAML_CERT: ${AUTH_SAML_CERT}
AUTH_SAML_IS_AUTHN_SIGNED: ${AUTH_SAML_IS_AUTHN_SIGNED}
AUTH_OPENID_ISSUER_URL: ${AUTH_OPENID_ISSUER_URL}
AUTH_OPENID_CLIENT_ID: ${AUTH_OPENID_CLIENT_ID}
AUTH_OPENID_CLIENT_SECRET: ${AUTH_OPENID_CLIENT_SECRET}
AUTH_OPENID_REDIRECT_URI: ${AUTH_OPENID_REDIRECT_URI}
AUTH_OPENID_DOMAIN_WHITELIST: ${AUTH_OPENID_DOMAIN_WHITELIST}
ui:
image: 'ghcr.io/parcelvoy/ui:latest'
depends_on:
- api
environment:
API_BASE_URL: ${API_BASE_URL}
ports:
- 80:3000
volumes:
mysql_data:
driver: local