version: '2' services: database: image: mariadb:10.4 restart: always volumes: - "/srv/pterodactyl/database:/var/lib/mysql" environment: ## Database settings ## change if you want it to be more secure. - "MYSQL_ROOT_PASSWORD=apassword" - "MYSQL_DATABASE=pterodb" - "MYSQL_USER=ptero" - "MYSQL_PASSWORD=pterodbpass" cache: image: redis:alpine restart: always panel: image: quay.io/pterodactyl/panel:latest restart: always ports: - "80:80" - "443:443" links: - database - cache volumes: - "/srv/pterodactyl/var/:/app/var/" - "/srv/pterodactyl/nginx/:/etc/nginx/conf.d/" - "/srv/pterodactyl/certs/:/etc/letsencrypt/" - "/srv/pterodactyl/logs/:/var/log/" environment: ## These are defaults and should be left alone - "APP_ENV=production" - "APP_DEBUG=false" - "APP_THEME=pterodactyl" - "APP_CLEAR_TASKLOG=720" - "APP_DELETE_MINUTES=10" - "APP_ENVIRONMENT_ONLY=false" - "QUEUE_HIGH=high" - "QUEUE_STANDARD=standard" - "QUEUE_LOW=low" ## Cache settings - "CACHE_DRIVER=redis" - "SESSION_DRIVER=redis" - "QUEUE_DRIVER=redis" - "REDIS_HOST=cache" - "REDIS_PASSWORD=null" - "REDIS_PORT=6379" ## Domain settings - "APP_URL=https://your.domain.here" ## if you are running this behind a reverse proxy with ssl app_url needs to be https still. ## Timezone settings - "APP_TIMEZONE=UTC" ## http://php.net/manual/en/timezones.php ## Service egg settings - "APP_SERVICE_AUTHOR=noreply@your.domain.here" ## this is the email that gets put on eggs you create ## Database settings ## These can be left alone. Only change if you know what you are doing. - "DB_HOST=database" - "DB_PORT=3306" - "DB_DATABASE=pterodb" - "DB_USERNAME=ptero" - "DB_PASSWORD=pterodbpass" ## Email settings - "MAIL_FROM=noreply@your.domain.here" - "MAIL_DRIVER=smtp" - "MAIL_HOST=mail" - "MAIL_PORT=1025" - "MAIL_USERNAME=''" - "MAIL_PASSWORD=''" - "MAIL_ENCRYPTION=true" ## certbot settings - Used to automatically generate ssl certs and # - "LE_EMAIL=" ## uncomment if you are using ssl networks: default: ipam: config: - subnet: 172.20.0.0/16