61 lines
1.9 KiB
YAML
61 lines
1.9 KiB
YAML
# documentation: https://docs.strapi.io/
|
|
# slogan: Open-source headless CMS to build powerful APIs with built-in content management.
|
|
# tags: cms, headless, mysql, api
|
|
# logo: svgs/strapi.svg
|
|
# port: 1337
|
|
|
|
services:
|
|
strapi:
|
|
image: "elestio/strapi-development:latest"
|
|
environment:
|
|
- SERVICE_FQDN_STRAPI_1337
|
|
- DATABASE_CLIENT=postgres
|
|
- DATABASE_HOST=postgresql
|
|
- DATABASE_PORT=5432
|
|
- "DATABASE_NAME=${POSTGRESQL_DATABASE:-strapi}"
|
|
- DATABASE_USERNAME=$SERVICE_USER_POSTGRESQL
|
|
- DATABASE_PASSWORD=$SERVICE_PASSWORD_POSTGRESQL
|
|
- JWT_SECRET=$SERVICE_BASE64_64_SECRET
|
|
- ADMIN_JWT_SECRET=$SERVICE_BASE64_64_SECRET
|
|
- APP_KEYS=$SERVICE_BASE64_64_KEY
|
|
- STRAPI_TELEMETRY_DISABLED=${STRAPI_TELEMETRY_DISABLED:-true}
|
|
- STRAPI_LICENSE=${STRAPI_LICENSE}
|
|
- NODE_ENV=${NODE_ENV:-development}
|
|
- BROWSER=${BROWSER:-true}
|
|
- STRAPI_PLUGIN_I18N_INIT_LOCALE_CODE=${STRAPI_PLUGIN_I18N_INIT_LOCALE_CODE:-en}
|
|
- STRAPI_ENFORCE_SOURCEMAPS=${STRAPI_ENFORCE_SOURCEMAPS:-false}
|
|
- FAST_REFRESH=${FAST_REFRESH:-true}
|
|
volumes:
|
|
- "strapi-config:/opt/app/config"
|
|
- "strapi-src:/opt/app/src"
|
|
- "strapi-uploads:/opt/app/public/uploads"
|
|
healthcheck:
|
|
test:
|
|
- CMD
|
|
- wget
|
|
- "-q"
|
|
- "--spider"
|
|
- "http://127.0.0.1:1337/"
|
|
interval: 5s
|
|
timeout: 20s
|
|
retries: 10
|
|
depends_on:
|
|
postgresql:
|
|
condition: service_healthy
|
|
postgresql:
|
|
image: "elestio/postgres:latest"
|
|
environment:
|
|
- "POSTGRES_DB=${POSTGRESQL_DATABASE:-strapi}"
|
|
- POSTGRES_USER=$SERVICE_USER_POSTGRESQL
|
|
- POSTGRES_PASSWORD=$SERVICE_PASSWORD_POSTGRESQL
|
|
- PGDATA=/var/lib/postgresql/data
|
|
volumes:
|
|
- "strapi-postgresql-data:/var/lib/postgresql/data"
|
|
healthcheck:
|
|
test:
|
|
- CMD-SHELL
|
|
- "pg_isready -U $${POSTGRES_USER} -d $${POSTGRES_DB}"
|
|
interval: 5s
|
|
timeout: 20s
|
|
retries: 10
|