Envs
Hydrodactyl Environment Variables
General Application Settings
| Variable | Type | Description | Default |
|---|---|---|---|
SKIP_SEED | boolean | Skips database seeding during initialization. | false |
APP_NAME | string | Name of the application. | Hydrodactyl |
APP_ENV | string | Application environment (e.g., production, development). | production |
APP_DEBUG | boolean | Enables debug mode for detailed error reporting. | false |
APP_URL | url | Public URL for the application. | http://localhost |
APP_TIMEZONE | string | Application timezone (e.g., UTC, America/New_York). | UTC |
APP_LOCALE | string | Default locale for translations. | en |
APP_FALLBACK_LOCALE | string | Fallback locale for translations. | en |
APP_FAKER_LOCALE | string | Locale for Faker data generation. | en_US |
APP_KEY | string | Application key for encryption (32 characters). | - |
APP_PREVIOUS_KEYS | string | Comma-separated list of previous encryption keys. | - |
APP_MAINTENANCE_DRIVER | string | Driver for maintenance mode (file, cache). | file |
APP_MAINTENANCE_STORE | string | Storage for maintenance mode data. | database |
APP_REPORT_ALL_EXCEPTIONS | boolean | Reports all exceptions, even handled ones. | false |
APP_ACTIVITY_PRUNE_DAYS | integer | Days after which activity logs are pruned. | 90 |
APP_ACTIVITY_HIDE_ADMIN | boolean | Hides admin activities from logs. | false |
APP_ENVIRONMENT_ONLY | boolean | Enables restricted mode, ignoring database configs. | false |
APP_SERVICE_AUTHOR | string | UUID or email identifying the service author. | unknown@unknown.com |
APP_CORS_ALLOWED_ORIGINS | string | Comma-separated list of allowed CORS origins. | - |
PTERODACTYL_USE_ASSET_HASH | boolean | Enables asset hashing for JS/CSS files. | false |
PTERODACTYL_SEND_INSTALL_NOTIFICATION | boolean | Sends email on server install completion. | true |
PTERODACTYL_SEND_REINSTALL_NOTIFICATION | boolean | Sends email on server reinstall. | true |
Database Configuration
| Variable | Type | Description | Default |
|---|---|---|---|
DB_CONNECTION | string | Default database connection (mysql, mariadb, pgsql). | mysql |
DB_URL | string | Database connection URL. | - |
DATABASE_URL | string | Alias for DB_URL. | - |
DB_HOST | string | Database host. | 127.0.0.1 |
DB_PORT | string | Database port. | 3306 (MySQL/MariaDB), 5432 (PostgreSQL) |
DB_DATABASE | string | Database name. | panel |
DB_USERNAME | string | Database username. | pterodactyl |
DB_PASSWORD | string | Database password. | - |
DB_SOCKET | string | Unix socket for database connection. | - |
DB_CHARSET | string | Database charset. | utf8mb4 (MySQL/MariaDB), utf8 (PostgreSQL) |
DB_COLLATION | string | Database collation. | utf8mb4_unicode_ci (MySQL/MariaDB) |
DB_PREFIX | string | Database table prefix. | - |
DB_STRICT_MODE | boolean | Enables strict mode for MySQL/MariaDB. | false |
DB_TIMEZONE | string | Database timezone offset. | Derived from APP_TIMEZONE |
DB_SSLMODE | string | SSL mode for database connection. | prefer |
MYSQL_ATTR_SSL_CA | string | Path to SSL CA certificate for MySQL. | - |
MYSQL_ATTR_SSL_CERT | string | Path to SSL certificate for MySQL. | - |
MYSQL_ATTR_SSL_KEY | string | Path to SSL key for MySQL. | - |
MYSQL_ATTR_SSL_VERIFY_SERVER_CERT | boolean | Verifies server certificate for MySQL. | true |
DB_SCHEMA | string | Schema for PostgreSQL. | public |
Authentication
| Variable | Type | Description | Default |
|---|---|---|---|
AUTH_PASSWORD_TIMEOUT | integer (seconds) | Password confirmation timeout duration. | 10800 (3 hours) |
APP_2FA_REQUIRED | integer | Enforces 2FA (0: optional, 1: required). | 0 |
APP_2FA_WINDOW | integer | 2FA time window for validation. | 4 |
CAPTCHA_ENABLED | boolean | Enables CAPTCHA for authentication forms. | false |
CAPTCHA_PROVIDER | string | CAPTCHA provider (none, turnstile, hcaptcha, recaptcha). | none |
TURNSTILE_SITE_KEY | string | Turnstile CAPTCHA site key. | - |
TURNSTILE_SECRET_KEY | string | Turnstile CAPTCHA secret key. | - |
HCAPTCHA_SITE_KEY | string | hCaptcha site key. | - |
HCAPTCHA_SECRET_KEY | string | hCaptcha secret key. | - |
RECAPTCHA_SITE_KEY | string | reCAPTCHA site key. | - |
RECAPTCHA_SECRET_KEY | string | reCAPTCHA secret key. | - |
CAPTCHA_LOGIN | boolean | Enables CAPTCHA on login form. | false |
CAPTCHA_FORGOT_PASSWORD | boolean | Enables CAPTCHA on forgot password form. | false |
CAPTCHA_RESET_PASSWORD | boolean | Enables CAPTCHA on reset password form. | false |
Backup Configuration
| Variable | Type | Description | Default |
|---|---|---|---|
APP_BACKUP_DRIVER | string | Backup driver (elytra, wings, s3, rustic_local, rustic_s3). | rustic_local |
BACKUP_PRESIGNED_URL_LIFESPAN | integer (minutes) | Lifespan of presigned backup URLs. | 60 |
BACKUP_MAX_PART_SIZE | integer (bytes) | Maximum size of backup parts. | 5368709120 (5GB) |
BACKUP_PRUNE_AGE | integer (minutes) | Time before backups are pruned (0 to disable). | 360 (6 hours) |
AWS S3 Settings
| Variable | Type | Description | Default |
|---|---|---|---|
AWS_DEFAULT_REGION | string | AWS region for S3 services. | us-east-1 |
AWS_ACCESS_KEY_ID | string | AWS access key for authentication. | - |
AWS_SECRET_ACCESS_KEY | string | AWS secret key for authentication. | - |
AWS_BACKUPS_BUCKET | string | S3 bucket for backups. | - |
AWS_BUCKET | string | S3 bucket for general file storage. | - |
AWS_URL | string | Custom S3 URL. | - |
AWS_ENDPOINT | string | Custom AWS endpoint. | - |
AWS_USE_PATH_STYLE_ENDPOINT | boolean | Enables path-style endpoint for S3. | false |
AWS_BACKUPS_USE_ACCELERATE | boolean | Enables S3 transfer acceleration. | false |
AWS_BACKUPS_STORAGE_CLASS | string | S3 storage class for backups (e.g., STANDARD, GLACIER). | - |
Rustic Backup Settings
| Variable | Type | Description | Default |
|---|---|---|---|
RUSTIC_BINARY_PATH | string | Path to the Rustic binary. | rustic |
RUSTIC_REPOSITORY_BASE_PATH | string | Base path for Rustic repository. | /var/lib/pterodactyl/rustic-repos |
RUSTIC_REPOSITORY_VERSION | integer | Version of the Rustic repository. | 2 |
RUSTIC_TREE_PACK_SIZE_MB | integer | Size of tree packs in MB. | 4 |
RUSTIC_DATA_PACK_SIZE_MB | integer | Size of data packs in MB. | 32 |
RUSTIC_LOCAL_USE_COLD_STORAGE | boolean | Enables cold storage for local backups. | false |
RUSTIC_LOCAL_HOT_REPOSITORY_PATH | string | Path for hot storage repository. | - |
RUSTIC_S3_ENDPOINT | string | S3 endpoint for Rustic backups. | - |
RUSTIC_S3_REGION | string | S3 region for Rustic backups. | us-east-1 |
RUSTIC_S3_BUCKET | string | S3 bucket for Rustic backups. | - |
RUSTIC_S3_PREFIX | string | Prefix for S3 bucket paths. | rustic-repos/ |
RUSTIC_S3_ACCESS_KEY_ID | string | AWS access key for Rustic S3. | - |
RUSTIC_S3_SECRET_ACCESS_KEY | string | AWS secret key for Rustic S3. | - |
RUSTIC_S3_USE_COLD_STORAGE | boolean | Enables cold storage for S3 backups. | false |
RUSTIC_S3_HOT_BUCKET | string | S3 bucket for hot storage. | - |
RUSTIC_S3_COLD_STORAGE_CLASS | string | S3 cold storage class (e.g., GLACIER). | GLACIER |
RUSTIC_S3_FORCE_PATH_STYLE | boolean | Forces path-style S3 URLs. | false |
RUSTIC_S3_DISABLE_SSL | boolean | Disables SSL for S3 connections. | false |
RUSTIC_S3_CA_CERT_PATH | string | Path to custom CA certificate for S3. | - |
Broadcasting
| Variable | Type | Description | Default |
|---|---|---|---|
BROADCAST_DRIVER | string | Broadcasting driver (pusher, ably, redis, log, null). | null |
PUSHER_APP_KEY | string | Pusher app key. | - |
PUSHER_APP_SECRET | string | Pusher app secret. | - |
PUSHER_APP_ID | string | Pusher app ID. | - |
PUSHER_HOST | string | Pusher host. | api-<PUSHER_APP_CLUSTER>.pusher.com |
PUSHER_APP_CLUSTER | string | Pusher cluster. | mt1 |
PUSHER_PORT | string | Pusher port. | 443 |
PUSHER_SCHEME | string | Pusher scheme (http, https). | https |
ABLY_KEY | string | Ably API key. | - |
Caching
| Variable | Type | Description | Default |
|---|---|---|---|
CACHE_STORE | string | Cache store driver (array, database, file, memcached, redis, octane, null). | redis |
CACHE_DRIVER | string | Alias for CACHE_STORE. | redis |
DB_CACHE_CONNECTION | string | Database connection for cache. | - |
DB_CACHE_TABLE | string | Database table for cache storage. | cache |
DB_CACHE_LOCK_CONNECTION | string | Database connection for cache locks. | - |
DB_CACHE_LOCK_TABLE | string | Database table for cache locks. | - |
MEMCACHED_PERSISTENT_ID | string | Persistent ID for Memcached. | - |
MEMCACHED_USERNAME | string | Memcached username. | - |
MEMCACHED_PASSWORD | string | Memcached password. | - |
MEMCACHED_HOST | string | Memcached host. | 127.0.0.1 |
MEMCACHED_PORT | integer | Memcached port. | 11211 |
REDIS_CACHE_CONNECTION | string | Redis connection for cache. | default |
REDIS_CACHE_LOCK_CONNECTION | string | Redis connection for cache locks. | default |
CACHE_PREFIX | string | Prefix for cache keys. | pterodactyl_cache_ |
Session Management
| Variable | Type | Description | Default |
|---|---|---|---|
SESSION_DRIVER | string | Session storage driver (file, cookie, database, redis, etc.). | redis |
SESSION_LIFETIME | integer (minutes) | Session idle timeout. | 720 (12 hours) |
SESSION_EXPIRE_ON_CLOSE | boolean | Expires session when browser closes. | false |
SESSION_ENCRYPT | boolean | Encrypts session data. | true |
SESSION_CONNECTION | string | Database connection for sessions. | - |
SESSION_TABLE | string | Database table for sessions. | sessions |
SESSION_STORE | string | Cache store for sessions. | - |
SESSION_COOKIE | string | Session cookie name. | pterodactyl_session |
SESSION_PATH | string | Path for session cookie. | / |
SESSION_DOMAIN | string | Domain for session cookie. | - |
SESSION_SECURE_COOKIE | boolean | Enables HTTPS-only cookies. | - |
SESSION_HTTP_ONLY | boolean | Restricts cookie access to HTTP. | true |
SESSION_SAME_SITE | string | SameSite cookie attribute (lax, strict, none). | lax |
SESSION_PARTITIONED_COOKIE | boolean | Enables partitioned cookies for cross-site contexts. | false |
Redis Configuration
| Variable | Type | Description | Default |
|---|---|---|---|
REDIS_CLIENT | string | Redis client (predis, phpredis). | predis |
REDIS_CLUSTER | string | Redis cluster mode. | redis |
REDIS_PREFIX | string | Prefix for Redis keys. | pterodactyl_database_ |
REDIS_SCHEME | string | Redis connection scheme (tcp, unix). | tcp |
REDIS_PATH | string | Path to Redis socket. | /run/redis/redis.sock |
REDIS_HOST | string | Redis host. | localhost |
REDIS_USERNAME | string | Redis username. | - |
REDIS_PASSWORD | string | Redis password. | - |
REDIS_PORT | string | Redis port. | 6379 |
REDIS_DATABASE | integer | Redis database for general use. | 0 |
REDIS_DATABASE_SESSIONS | integer | Redis database for sessions. | 1 |
REDIS_VERIFY_PEER | boolean | Verifies peer for Redis SSL. | true |
REDIS_VERIFY_PEER_NAME | boolean | Verifies peer name for Redis SSL. | true |
REDIS_CAFILE | string | Path to Redis CA certificate. | - |
REDIS_LOCAL_CERT | string | Path to Redis local certificate. | - |
REDIS_LOCAL_PK | string | Path to Redis private key. | - |
Filesystem Configuration
| Variable | Type | Description | Default |
|---|---|---|---|
FILESYSTEM_DISK | string | Default filesystem disk (local, s3). | local |
Hashing Configuration
| Variable | Type | Description | Default |
|---|---|---|---|
BCRYPT_ROUNDS | integer | Number of rounds for bcrypt hashing. | 10 |
Hashids Configuration
| Variable | Type | Description | Default |
|---|---|---|---|
HASHIDS_SALT | string | Salt for Hashids. | - |
HASHIDS_LENGTH | integer | Length of Hashids. | 8 |
HASHIDS_ALPHABET | string | Alphabet for Hashids. | abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890 |
API Rate Limiting
| Variable | Type | Description | Default |
|---|---|---|---|
APP_API_CLIENT_RATELIMIT | integer | Requests per minute for client API. | 720 |
APP_API_APPLICATION_RATELIMIT | integer | Requests per minute for application API. | 240 |
Pagination
| Variable | Type | Description | Default |
|---|---|---|---|
APP_PAGINATE_FRONT_SERVERS | integer | Servers per page on frontend. | 15 |
APP_PAGINATE_ADMIN_SERVERS | integer | Servers per page in admin panel. | 25 |
APP_PAGINATE_ADMIN_USERS | integer | Users per page in admin panel. | 25 |
APP_PAGINATE_API_NODES | integer | Nodes per page in API. | 25 |
APP_PAGINATE_API_SERVERS | integer | Servers per page in API. | 25 |
APP_PAGINATE_API_USERS | integer | Users per page in API. | 25 |
Guzzle HTTP Client
| Variable | Type | Description | Default |
|---|---|---|---|
GUZZLE_TIMEOUT | integer (seconds) | Timeout for Guzzle requests. | 15 |
GUZZLE_CONNECT_TIMEOUT | integer (seconds) | Connection timeout for Guzzle. | 5 |
Client Features
| Variable | Type | Description | Default |
|---|---|---|---|
PTERODACTYL_CLIENT_DATABASES_ENABLED | boolean | Allows clients to create databases. | true |
PTERODACTYL_CLIENT_DATABASES_ALLOW_RANDOM | boolean | Allows random database names. | true |
PTERODACTYL_PER_SCHEDULE_TASK_LIMIT | integer | Max tasks per schedule. | 10 |
PTERODACTYL_CLIENT_ALLOCATIONS_ENABLED | boolean | Allows clients to manage allocations. | false |
PTERODACTYL_CLIENT_ALLOCATIONS_RANGE_START | integer | Start of allocation port range. | - |
PTERODACTYL_CLIENT_ALLOCATIONS_RANGE_END | integer | End of allocation port range. | - |
PTERODACTYL_FILES_MAX_EDIT_SIZE | integer (bytes) | Max file size for web editor. | 4194304 (4MB) |
Logging Configuration
| Variable | Type | Description | Default |
|---|---|---|---|
LOG_CHANNEL | string | Default log channel (single, daily, etc.). | daily |
LOG_DEPRECATIONS_CHANNEL | string | Channel for deprecation logs. | null |
LOG_DEPRECATIONS_TRACE | boolean | Includes stack trace in deprecation logs. | false |
LOG_STACK | string | Comma-separated list of log channels for stack. | single |
LOG_LEVEL | string | Minimum log level (debug, info, etc.). | debug |
LOG_DAILY_DAYS | integer | Days to retain daily logs. | 7 |
LOG_SLACK_WEBHOOK_URL | string | Slack webhook URL for logs. | - |
LOG_SLACK_USERNAME | string | Slack username for logs. | Laravel Log |
LOG_SLACK_EMOJI | string | Slack emoji for logs. | :boom: |
LOG_PAPERTRAIL_HANDLER | string | Papertrail handler class. | SyslogUdpHandler |
PAPERTRAIL_URL | string | Papertrail host. | - |
PAPERTRAIL_PORT | string | Papertrail port. | - |
LOG_SYSLOG_FACILITY | string | Syslog facility. | LOG_USER |
LOG_STDERR_FORMATTER | string | Formatter for stderr logs. | - |
Mail Configuration
| Variable | Type | Description | Default |
|---|---|---|---|
MAIL_MAILER | string | Default mailer (smtp, mailgun, ses, etc.). | smtp |
MAIL_DRIVER | string | Alias for MAIL_MAILER. | smtp |
MAIL_HOST | string | SMTP host. | 127.0.0.1 |
MAIL_PORT | string | SMTP port. | 2525 |
MAIL_ENCRYPTION | string | SMTP encryption (tls, ssl). | tls |
MAIL_USERNAME | string | SMTP username. | - |
MAIL_PASSWORD | string | SMTP password. | - |
MAIL_EHLO_DOMAIN | string | EHLO domain for SMTP. | - |
SERVER_NAME | string | Alias for MAIL_EHLO_DOMAIN. | - |
MAIL_LOG_CHANNEL | string | Log channel for mail logging. | - |
MAIL_FROM_ADDRESS | string | Default "from" email address. | hello@example.com |
MAIL_FROM | string | Alias for MAIL_FROM_ADDRESS. | hello@example.com |
MAIL_FROM_NAME | string | Default "from" name. | Hydrodactyl Panel |
POSTMARK_TOKEN | string | Postmark API token. | - |
RESEND_KEY | string | Resend API key. | - |
Queue Configuration
| Variable | Type | Description | Default |
|---|---|---|---|
QUEUE_CONNECTION | string | Default queue connection (sync, redis, etc.). | redis |
QUEUE_DRIVER | string | Alias for QUEUE_CONNECTION. | redis |
DB_QUEUE_CONNECTION | string | Database connection for queue. | - |
DB_QUEUE_TABLE | string | Database table for queue jobs. | jobs |
DB_QUEUE | string | Queue name for database driver. | standard |
DB_QUEUE_RETRY_AFTER | integer (seconds) | Retry delay for database queue. | 90 |
BEANSTALKD_QUEUE_HOST | string | Beanstalkd host. | localhost |
BEANSTALKD_QUEUE | string | Beanstalkd queue name. | default |
BEANSTALKD_QUEUE_RETRY_AFTER | integer (seconds) | Retry delay for Beanstalkd queue. | 90 |
SQS_PREFIX | string | SQS queue prefix. | https://sqs.us-east-1.amazonaws.com/your-account-id |
SQS_QUEUE | string | SQS queue name. | default |
SQS_SUFFIX | string | SQS queue suffix. | - |
REDIS_QUEUE_CONNECTION | string | Redis connection for queue. | default |
REDIS_QUEUE | string | Redis queue name. | standard |
QUEUE_STANDARD | string | Alias for REDIS_QUEUE. | standard |
REDIS_QUEUE_RETRY_AFTER | integer (seconds) | Retry delay for Redis queue. | 90 |
QUEUE_FAILED_DRIVER | string | Driver for failed jobs (database-uuids, file, etc.). | database-uuids |
Sanctum Configuration
| Variable | Type | Description | Default |
|---|---|---|---|
SANCTUM_STATEFUL_DOMAINS | string | Comma-separated list of stateful domains. | localhost,localhost:3000,127.0.0.1,127.0.0.1:8000,::1 |
Trusted Proxies
| Variable | Type | Description | Default |
|---|---|---|---|
TRUSTED_PROXIES | string | Comma-separated proxy IPs, *, or **. | - |
View Configuration
| Variable | Type | Description | Default |
|---|---|---|---|
VIEW_COMPILED_PATH | string | Path for compiled Blade templates. | storage/framework/views |
Third-Party Services
| Variable | Type | Description | Default |
|---|---|---|---|
SLACK_BOT_USER_OAUTH_TOKEN | string | Slack bot OAuth token. | - |
SLACK_BOT_USER_DEFAULT_CHANNEL | string | Default Slack channel for notifications. | - |