61 lines
1.4 KiB
YAML
61 lines
1.4 KiB
YAML
---
|
|
services:
|
|
db:
|
|
image: 'jc21/mariadb-aria:latest'
|
|
container_name: npm-db
|
|
restart: unless-stopped
|
|
env_file: .env
|
|
environment:
|
|
- MYSQL_ROOT_PASSWORD=${MYSQL_ROOT_PASSWORD}
|
|
- MYSQL_DATABASE=${MYSQL_DATABASE}
|
|
- MYSQL_USER=${MYSQL_USER}
|
|
- MYSQL_PASSWORD=${MYSQL_PASSWORD}
|
|
- MARIADB_AUTO_UPGRADE=1
|
|
volumes:
|
|
- ./data/mysql:/var/lib/mysql
|
|
networks:
|
|
- proxy
|
|
- proxydb
|
|
healthcheck:
|
|
test: ["CMD", "mysqladmin", "ping", "-h", "localhost", "-u${MYSQL_USER}", "-p${MYSQL_PASSWORD}"]
|
|
interval: 20s
|
|
timeout: 5s
|
|
retries: 5
|
|
start_period: 30s
|
|
|
|
app:
|
|
image: 'jc21/nginx-proxy-manager:latest'
|
|
container_name: nginx-proxy-manager
|
|
restart: unless-stopped
|
|
env_file: .env
|
|
environment:
|
|
- TZ=${TZ}
|
|
- DB_MYSQL_HOST=db
|
|
- DB_MYSQL_PORT=3306
|
|
- DB_MYSQL_USER=${MYSQL_USER}
|
|
- DB_MYSQL_PASSWORD=${MYSQL_PASSWORD}
|
|
- DB_MYSQL_NAME=${MYSQL_DATABASE}
|
|
ports:
|
|
- '80:80'
|
|
- '81:81'
|
|
- '443:443'
|
|
volumes:
|
|
- ./data/npm:/data
|
|
- ./data/letsencrypt:/etc/letsencrypt
|
|
depends_on:
|
|
- db
|
|
networks:
|
|
- proxy
|
|
- proxydb
|
|
healthcheck:
|
|
test: ["CMD", "curl", "-f", "http://localhost:81/api/status"]
|
|
interval: 20s
|
|
timeout: 5s
|
|
retries: 5
|
|
start_period: 40s
|
|
|
|
networks:
|
|
proxy:
|
|
external: true
|
|
proxydb:
|
|
external: true |