Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
pterodactyl
GitHub Repository: pterodactyl/panel
Path: blob/1.0-develop/config/database.php
7382 views
1
<?php
2
3
use Illuminate\Support\Str;
4
use Pterodactyl\Helpers\Time;
5
6
return [
7
/*
8
|--------------------------------------------------------------------------
9
| Default Database Connection Name
10
|--------------------------------------------------------------------------
11
|
12
| Here you may specify which of the database connections below you wish
13
| to use as your default connection for database operations. This is
14
| the connection which will be utilized unless another connection
15
| is explicitly specified when you execute a query / statement.
16
|
17
*/
18
19
'default' => env('DB_CONNECTION', 'mysql'),
20
21
/*
22
|--------------------------------------------------------------------------
23
| Database Connections
24
|--------------------------------------------------------------------------
25
|
26
| Here are each of the database connections setup for your application.
27
| Of course, examples of configuring each database platform that is
28
| supported by Laravel is shown below to make development simple.
29
|
30
|
31
| All database work in Laravel is done through the PHP PDO facilities
32
| so make sure you have the driver for your particular database of
33
| choice installed on your machine before you begin development.
34
|
35
*/
36
37
'connections' => [
38
'mysql' => [
39
'driver' => 'mysql',
40
'url' => env('DB_URL', env('DATABASE_URL')),
41
'host' => env('DB_HOST', '127.0.0.1'),
42
'port' => env('DB_PORT', '3306'),
43
'database' => env('DB_DATABASE', 'panel'),
44
'username' => env('DB_USERNAME', 'pterodactyl'),
45
'password' => env('DB_PASSWORD', ''),
46
'unix_socket' => env('DB_SOCKET', ''),
47
'charset' => env('DB_CHARSET', 'utf8mb4'),
48
'collation' => env('DB_COLLATION', 'utf8mb4_unicode_ci'),
49
'prefix' => env('DB_PREFIX', ''),
50
'prefix_indexes' => true,
51
'strict' => env('DB_STRICT_MODE', false), // TODO: true by default
52
'engine' => null,
53
'timezone' => env('DB_TIMEZONE', Time::getMySQLTimezoneOffset(env('APP_TIMEZONE', 'UTC'))),
54
'sslmode' => env('DB_SSLMODE', 'prefer'),
55
'options' => extension_loaded('pdo_mysql') ? array_filter([
56
PDO::MYSQL_ATTR_SSL_CA => env('MYSQL_ATTR_SSL_CA'),
57
PDO::MYSQL_ATTR_SSL_CERT => env('MYSQL_ATTR_SSL_CERT'),
58
PDO::MYSQL_ATTR_SSL_KEY => env('MYSQL_ATTR_SSL_KEY'),
59
PDO::MYSQL_ATTR_SSL_VERIFY_SERVER_CERT => env('MYSQL_ATTR_SSL_VERIFY_SERVER_CERT', true),
60
]) : [],
61
],
62
63
'mariadb' => [
64
'driver' => 'mariadb',
65
'url' => env('DB_URL', env('DATABASE_URL')),
66
'host' => env('DB_HOST', '127.0.0.1'),
67
'port' => env('DB_PORT', '3306'),
68
'database' => env('DB_DATABASE', 'panel'),
69
'username' => env('DB_USERNAME', 'pterodactyl'),
70
'password' => env('DB_PASSWORD', ''),
71
'unix_socket' => env('DB_SOCKET', ''),
72
'charset' => env('DB_CHARSET', 'utf8mb4'),
73
'collation' => env('DB_COLLATION', 'utf8mb4_unicode_ci'),
74
'prefix' => env('DB_PREFIX', ''),
75
'prefix_indexes' => true,
76
'strict' => env('DB_STRICT_MODE', true),
77
'engine' => null,
78
'timezone' => env('DB_TIMEZONE', Time::getMySQLTimezoneOffset(env('APP_TIMEZONE', 'UTC'))),
79
'sslmode' => env('DB_SSLMODE', 'prefer'),
80
'options' => extension_loaded('pdo_mysql') ? array_filter([
81
PDO::MYSQL_ATTR_SSL_CA => env('MYSQL_ATTR_SSL_CA'),
82
PDO::MYSQL_ATTR_SSL_CERT => env('MYSQL_ATTR_SSL_CERT'),
83
PDO::MYSQL_ATTR_SSL_KEY => env('MYSQL_ATTR_SSL_KEY'),
84
PDO::MYSQL_ATTR_SSL_VERIFY_SERVER_CERT => env('MYSQL_ATTR_SSL_VERIFY_SERVER_CERT', true),
85
]) : [],
86
],
87
],
88
89
/*
90
|--------------------------------------------------------------------------
91
| Migration Repository Table
92
|--------------------------------------------------------------------------
93
|
94
| This table keeps track of all the migrations that have already run for
95
| your application. Using this information, we can determine which of
96
| the migrations on disk haven't actually been run on the database.
97
|
98
*/
99
100
'migrations' => [
101
'table' => 'migrations',
102
'update_date_on_publish' => true,
103
],
104
105
/*
106
|--------------------------------------------------------------------------
107
| Redis Databases
108
|--------------------------------------------------------------------------
109
|
110
| Redis is an open source, fast, and advanced key-value store that also
111
| provides a richer body of commands than a typical key-value system
112
| such as Memcached. You may define your connection settings here.
113
|
114
*/
115
116
'redis' => [
117
'client' => env('REDIS_CLIENT', 'predis'),
118
119
'options' => [
120
'cluster' => env('REDIS_CLUSTER', 'redis'),
121
'prefix' => env('REDIS_PREFIX', Str::slug(env('APP_NAME', 'pterodactyl'), '_') . '_database_'),
122
],
123
124
'default' => [
125
'scheme' => env('REDIS_SCHEME', 'tcp'),
126
'path' => env('REDIS_PATH', '/run/redis/redis.sock'),
127
'host' => env('REDIS_HOST', 'localhost'),
128
'username' => env('REDIS_USERNAME'),
129
'password' => env('REDIS_PASSWORD'),
130
'port' => env('REDIS_PORT', 6379),
131
'database' => env('REDIS_DATABASE', 0),
132
'context' => extension_loaded('redis') && env('REDIS_CLIENT') === 'phpredis' ? [
133
'stream' => array_filter([
134
'verify_peer' => env('REDIS_VERIFY_PEER', true),
135
'verify_peer_name' => env('REDIS_VERIFY_PEER_NAME', true),
136
'cafile' => env('REDIS_CAFILE'),
137
'local_cert' => env('REDIS_LOCAL_CERT'),
138
'local_pk' => env('REDIS_LOCAL_PK'),
139
]),
140
] : [],
141
],
142
143
'sessions' => [
144
'scheme' => env('REDIS_SCHEME', 'tcp'),
145
'path' => env('REDIS_PATH', '/run/redis/redis.sock'),
146
'host' => env('REDIS_HOST', 'localhost'),
147
'username' => env('REDIS_USERNAME'),
148
'password' => env('REDIS_PASSWORD'),
149
'port' => env('REDIS_PORT', 6379),
150
'database' => env('REDIS_DATABASE_SESSIONS', 1),
151
'context' => extension_loaded('redis') && env('REDIS_CLIENT') === 'phpredis' ? [
152
'stream' => array_filter([
153
'verify_peer' => env('REDIS_VERIFY_PEER', true),
154
'verify_peer_name' => env('REDIS_VERIFY_PEER_NAME', true),
155
'cafile' => env('REDIS_CAFILE'),
156
'local_cert' => env('REDIS_LOCAL_CERT'),
157
'local_pk' => env('REDIS_LOCAL_PK'),
158
]),
159
] : [],
160
],
161
],
162
];
163
164