--- 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