services: database: image: docker.io/mariadb:10.5 restart: always command: --default-authentication-plugin=mysql_native_password volumes: - "./database:/var/lib/mysql" environment: MYSQL_DATABASE: "panel" MYSQL_USER: "pterodactyl" MYSQL_PASSWORD: "%MYSQL_PASSWORD%" MYSQL_ROOT_PASSWORD: "%MYSQL_ROOT_PASSWORD%" cache: image: docker.io/redis:alpine restart: always panel: image: ghcr.io/pterodactyl/panel:v%VERSION% restart: always ports: - "80:80" - "443:443" links: - database - cache volumes: - "./var:/app/var/" - "./nginx:/etc/nginx/http.d/" - "./certs:/etc/letsencrypt/" - "./logs:/app/storage/logs" environment: DB_PASSWORD: "%MYSQL_PASSWORD%" APP_ENV: "production" APP_ENVIRONMENT_ONLY: "false" CACHE_DRIVER: "redis" SESSION_DRIVER: "redis" QUEUE_DRIVER: "redis" REDIS_HOST: "cache" DB_HOST: "database" DB_PORT: "3306" RECAPTCHA_ENABLED: "false" TRUSTED_PROXIES: "*" APP_TIMEZONE: "%APP_TIMEZONE%" APP_SERVICE_AUTHOR: "mail@example.com" networks: default: ipam: config: - subnet: 172.20.0.0/16