# --- Domain Settings ---
DOMAIN=example.com
SUBDOMAIN=panel.
TZ=UTC
# --- Networking ---
PORT_HTTP=80
# This should be your internal DNS / IP address
HOSTNAME=localhost
# --- Database ---
# These must match what is set in the 'database' service
MYSQL_PASS=
MYSQL_PASS_ROOT=
# --- Mail (SMTP) ---
MAIL_FROM=noreply@example.com
MAIL_SERVER=smtp.gmail.com
MAIL_PORT=587
MAIL_USERNAME=your-email@gmail.com
MAIL_PASS=your-app-password
# --- Security ---
#Must be a random 32 character string - use your password generator
HASHIDS_SALT=
# --- Cloudflare Tunnel ---
CFPOLICY=bypass
CFACCESSNAME=Pterodactyl Panel
CFDURATION=8h
Confirm the Panel is running
Check the Portainer logs for the panel container, you should see something similar to below
Confirm the Login page loads
Browse to http://yourserver:port and confirm you see the below
Create your Admin user
Open up Portainer and navigate to the Panel container
Click on Console and change the command to '/bin/sh'
Hit Connect
Input the below command and next through the prompts (set account as administrator)
Log into Pterodactyl with your newly created administrator account
Configure the Panel
Enforce 2FA
Click on the Settings cog in the top right hand corner
Click on Settings
Set 'Require 2FA authentication' to 'All Users' and hit Save
Click on 'Enable 2FA' and follow the steps
Save your backup codes somewhere
Create Node Locations
Click on Locations, then 'create new'
Create 2 locations,
a location for 'On Prem' nodes
a location for 'Off Prem' nodes
Confirm the Proxy address loads
As you have configured the Panel using Dockflare, you do not need to take any additional steps for this.
Browse to the ${SUBDOMAIN}${DOMAIN} you set in your .env file and ensure the page loads. If it was freshly created, you may need to wait some time for DNS to sync.