mirror of
https://github.com/Dokploy/templates
synced 2025-06-26 18:16:07 +00:00
feat: add pyrodactyl template
This commit is contained in:
50
blueprints/pyrodactyl/docker-compose.yml
Normal file
50
blueprints/pyrodactyl/docker-compose.yml
Normal file
@@ -0,0 +1,50 @@
|
|||||||
|
services:
|
||||||
|
database:
|
||||||
|
image: mariadb:10.5
|
||||||
|
restart: always
|
||||||
|
command: --default-authentication-plugin=mysql_native_password
|
||||||
|
volumes:
|
||||||
|
- "pterodb:/var/lib/mysql"
|
||||||
|
environment:
|
||||||
|
MYSQL_DATABASE: "panel"
|
||||||
|
MYSQL_USER: "pterodactyl"
|
||||||
|
MYSQL_PASSWORD:
|
||||||
|
MYSQL_ROOT_PASSWORD:
|
||||||
|
cache:
|
||||||
|
image: redis:alpine
|
||||||
|
restart: always
|
||||||
|
panel:
|
||||||
|
image: ghcr.io/pyrohost/pyrodactyl:main
|
||||||
|
restart: always
|
||||||
|
links:
|
||||||
|
- database
|
||||||
|
- cache
|
||||||
|
volumes:
|
||||||
|
- "pterovar:/app/var/"
|
||||||
|
- "pteronginx:/etc/nginx/http.d/"
|
||||||
|
- "pterocerts:/etc/letsencrypt/"
|
||||||
|
- "pterologs:/app/storage/logs"
|
||||||
|
environment:
|
||||||
|
APP_ENV: "production"
|
||||||
|
APP_ENVIRONMENT_ONLY: "false"
|
||||||
|
CACHE_DRIVER:
|
||||||
|
SESSION_DRIVER:
|
||||||
|
QUEUE_DRIVER:
|
||||||
|
REDIS_HOST:
|
||||||
|
DB_HOST:
|
||||||
|
DB_PORT:
|
||||||
|
MYSQL_PASSWORD:
|
||||||
|
MYSQL_ROOT_PASSWORD:
|
||||||
|
RECAPTCHA_ENABLED:
|
||||||
|
networks:
|
||||||
|
default:
|
||||||
|
ipam:
|
||||||
|
config:
|
||||||
|
- subnet: 172.20.0.0/16
|
||||||
|
|
||||||
|
volumes:
|
||||||
|
pterodb:
|
||||||
|
pterovar:
|
||||||
|
pteronginx:
|
||||||
|
pterocerts:
|
||||||
|
pterologs:
|
||||||
BIN
blueprints/pyrodactyl/image.png
Normal file
BIN
blueprints/pyrodactyl/image.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 4.2 KiB |
35
blueprints/pyrodactyl/template.toml
Normal file
35
blueprints/pyrodactyl/template.toml
Normal file
@@ -0,0 +1,35 @@
|
|||||||
|
[variables]
|
||||||
|
main_domain = "${domain}"
|
||||||
|
db_password = "${password:32}"
|
||||||
|
db_root_password = "${password:32}"
|
||||||
|
secret_key = "${base64:48}"
|
||||||
|
|
||||||
|
[config]
|
||||||
|
env = [
|
||||||
|
"Domain=${main_domain}",
|
||||||
|
"RECAPTCHA_ENABLED=true",
|
||||||
|
"APP_URL={$main_domain}",
|
||||||
|
"APP_TIMEZONE=UTC",
|
||||||
|
"APP_SERVICE_AUTHOR=noreply@example.com",
|
||||||
|
"MAIL_FROM=noreply@example.com",
|
||||||
|
"MAIL_DRIVER=smtp",
|
||||||
|
"MAIL_HOST=mail",
|
||||||
|
"MAIL_PORT=1025",
|
||||||
|
"MAIL_USERNAME=",
|
||||||
|
"MAIL_PASSWORD=",
|
||||||
|
"MAIL_ENCRYPTION=true",
|
||||||
|
"MYSQL_PASSWORD=${db_password}",
|
||||||
|
"MYSQL_ROOT_PASSWORD=${db_root_password}",
|
||||||
|
"DB_PORT=3306",
|
||||||
|
"CACHE_DRIVER=redis",
|
||||||
|
"SESSION_DRIVER=redis",
|
||||||
|
"QUEUE_DRIVER=redis",
|
||||||
|
"REDIS_HOST=cache",
|
||||||
|
"DB_HOST=database",
|
||||||
|
]
|
||||||
|
mounts = []
|
||||||
|
|
||||||
|
[[config.domains]]
|
||||||
|
serviceName = "panel"
|
||||||
|
port = 80
|
||||||
|
host = "${main_domain}"
|
||||||
17
meta.json
17
meta.json
@@ -807,6 +807,23 @@
|
|||||||
"management"
|
"management"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"id": "pyrodactyl",
|
||||||
|
"name": "Pyrodactyl",
|
||||||
|
"version": "main",
|
||||||
|
"description": "Pyrodactyl is the Pterodactyl-based game server panel that's faster, smaller, safer, and more accessible than Pelican. ",
|
||||||
|
"logo": "pyrodactyl.png",
|
||||||
|
"links": {
|
||||||
|
"github": "https://github.com/pyrohost/pyrodactyl",
|
||||||
|
"website": "https://pyrodactyl.dev",
|
||||||
|
"docs": "https://pyrodactyl.dev/docs"
|
||||||
|
},
|
||||||
|
"tags": [
|
||||||
|
"self-hosted",
|
||||||
|
"open-source",
|
||||||
|
"management"
|
||||||
|
]
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"id": "influxdb",
|
"id": "influxdb",
|
||||||
"name": "InfluxDB",
|
"name": "InfluxDB",
|
||||||
|
|||||||
Reference in New Issue
Block a user