Skip to content

Instantly share code, notes, and snippets.

@PedanXr
Created February 11, 2019 10:40
Show Gist options
  • Save PedanXr/a92ff6865bb882c6315ee4e68d5b59aa to your computer and use it in GitHub Desktop.
Save PedanXr/a92ff6865bb882c6315ee4e68d5b59aa to your computer and use it in GitHub Desktop.
##
# Pterodactyl Panel Docker Setup by ccarney
##
version: '2.1'
services:
##
# MariaDB (MySQL) Server
# If you rely on another MySQL/MariaDB instance,
# this can be safely removed. If you want to have
# your game servers be able to access this, be sure
# to declare your ports.
##
mysql:
env_file: .env
image: mariadb:10.2
restart: always
volumes:
- ./db:/var/lib/mysql
# Panel Cache
# This service is required for the panel to function.
# You can use either redis or memcached, but redis
# is provided by default here.
##
cache:
image: redis:alpine
restart: always
##
# Pterodactyl Panel
# This is the main service that will be seen publically.
##
panel:
depends_on:
- cache
- mysql
env_file: .env
image: ccarney16/pterodactyl-panel:latest
restart: always
volumes:
- ./letsencrypt:/etc/letsencrypt
- ./letsencrypt/webroot/.well-known:/var/www/html/public/.well-known
- ./data:/data
ports:
- 8543:80
- 8544:443
##
# Let's Encrypt Certbot
# This service provides free SSL certificates that can be used to connect to the world.
# Uncomment if you are using the panel on its own (without a reverse proxy). It is
# recommended to use the webroot plugin. To get a certificate, run "docker-compose
# run --rm certbot --webroot -w /etc/letsencrypt/webroot -d {domain}" and follow
# the instructions on screen.
##
certbot:
command: renew
image: certbot/certbot
volumes:
- ./letsencrypt:/etc/letsencrypt
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment