From c3e09149dda6cdf319e80022faee97cac4d5244f Mon Sep 17 00:00:00 2001 From: DaneEveritt Date: Mon, 15 Feb 2021 00:05:40 +0000 Subject: [PATCH] deploy: 854b16f8994f8459b468ea27e93c9d4a60d3ba84 --- 404.html | 4 ++-- assets/js/71.68b2bd22.js | 1 + assets/js/71.af7c9f39.js | 1 - assets/js/{app.bb29d01f.js => app.80f646d2.js} | 4 ++-- community/about.html | 4 ++-- community/config/eggs/creating_a_custom_egg.html | 4 ++-- community/config/eggs/creating_a_custom_image.html | 4 ++-- community/config/nodes/add_node.html | 4 ++-- community/customization/panel.html | 4 ++-- community/customization/wings.html | 4 ++-- community/games/minecraft.html | 4 ++-- community/installation-guides/panel/centos7.html | 4 ++-- community/installation-guides/panel/centos8.html | 4 ++-- community/installation-guides/panel/debian10.html | 4 ++-- community/installation-guides/panel/debian9.html | 4 ++-- community/installation-guides/panel/ubuntu1804.html | 4 ++-- community/installation-guides/panel/ubuntu2004.html | 4 ++-- community/installation-guides/wings/centos7.html | 4 ++-- community/installation-guides/wings/centos8.html | 4 ++-- community/installation-guides/wings/debian10.html | 4 ++-- community/installation-guides/wings/debian9.html | 4 ++-- community/installation-guides/wings/ubuntu1804.html | 4 ++-- community/installation-guides/wings/ubuntu2004.html | 4 ++-- community/tutorials/artisan.html | 4 ++-- community/tutorials/custom_theme_setup.html | 4 ++-- daemon/0.6/configuration.html | 4 ++-- daemon/0.6/debian_8_docker.html | 4 ++-- daemon/0.6/installing.html | 4 ++-- daemon/0.6/kernel_modifications.html | 4 ++-- daemon/0.6/standalone_sftp.html | 4 ++-- daemon/0.6/upgrade/0.4_to_0.5.html | 4 ++-- daemon/0.6/upgrade/0.5.html | 4 ++-- daemon/0.6/upgrade/0.5_to_0.6.html | 4 ++-- daemon/0.6/upgrade/0.6.html | 4 ++-- daemon/0.6/upgrading.html | 4 ++-- guides/mounts.html | 4 ++-- index.html | 4 ++-- ops/publish_release.html | 4 ++-- panel/0.7/configuration.html | 4 ++-- panel/0.7/getting_started.html | 4 ++-- panel/0.7/troubleshooting.html | 4 ++-- panel/0.7/upgrade/0.6_to_0.7.html | 4 ++-- panel/0.7/upgrade/0.7.html | 4 ++-- panel/0.7/upgrading.html | 4 ++-- panel/0.7/webserver_configuration.html | 4 ++-- panel/1.0/additional_configuration.html | 4 ++-- panel/1.0/getting_started.html | 4 ++-- panel/1.0/upgrade/0.7_to_1.0.html | 4 ++-- panel/1.0/upgrade/1.0.html | 4 ++-- panel/1.0/upgrading.html | 4 ++-- panel/1.0/webserver_configuration.html | 12 ++++++------ project/about.html | 4 ++-- project/community.html | 4 ++-- project/introduction.html | 4 ++-- project/terms.html | 4 ++-- tutorials/creating_ssl_certificates.html | 4 ++-- tutorials/mysql_setup.html | 4 ++-- wings/1.0/configuration.html | 4 ++-- wings/1.0/installing.html | 4 ++-- wings/1.0/migrating.html | 4 ++-- wings/1.0/upgrading.html | 4 ++-- 61 files changed, 123 insertions(+), 123 deletions(-) create mode 100644 assets/js/71.68b2bd22.js delete mode 100644 assets/js/71.af7c9f39.js rename assets/js/{app.bb29d01f.js => app.80f646d2.js} (99%) diff --git a/404.html b/404.html index 779294e8..e91b7ff0 100644 --- a/404.html +++ b/404.html @@ -14,7 +14,7 @@ - + @@ -49,6 +49,6 @@ legacy

  • - + diff --git a/assets/js/71.68b2bd22.js b/assets/js/71.68b2bd22.js new file mode 100644 index 00000000..049f2119 --- /dev/null +++ b/assets/js/71.68b2bd22.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[71],{410:function(t,e,a){"use strict";a.r(e);var n=a(46),r=Object(n.a)({},(function(){var t=this,e=t.$createElement,a=t._self._c||e;return a("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[a("h1",{attrs:{id:"webserver-configuration"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#webserver-configuration"}},[t._v("#")]),t._v(" Webserver Configuration")]),t._v(" "),a("p"),a("div",{staticClass:"table-of-contents"},[a("ul",[a("li",[a("a",{attrs:{href:"#nginx"}},[t._v("NGINX")]),a("ul",[a("li",[a("a",{attrs:{href:"#nginx-with-ssl"}},[t._v("NGINX With SSL")])]),a("li",[a("a",{attrs:{href:"#nginx-without-ssl"}},[t._v("NGINX Without SSL")])]),a("li",[a("a",{attrs:{href:"#enabling-configuration"}},[t._v("Enabling Configuration")])])])]),a("li",[a("a",{attrs:{href:"#apache"}},[t._v("Apache")]),a("ul",[a("li",[a("a",{attrs:{href:"#apache-with-ssl"}},[t._v("Apache With SSL")])]),a("li",[a("a",{attrs:{href:"#apache-without-ssl"}},[t._v("Apache Without SSL")])]),a("li",[a("a",{attrs:{href:"#enabling-configuration"}},[t._v("Enabling Configuration")])])])])])]),a("p"),t._v(" "),a("div",{staticClass:"custom-block danger"},[a("p",{staticClass:"custom-block-title"},[t._v("DANGER")]),t._v(" "),a("p",[t._v("You should remove the default Apache or NGINX configuration as it will expose application secrets to malicious\nusers by default.")])]),t._v(" "),a("h2",{attrs:{id:"nginx"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#nginx"}},[t._v("#")]),t._v(" NGINX")]),t._v(" "),a("p",[t._v("You should paste the contents of the file below, replacing "),a("code",[t._v("")]),t._v(" with the domain you intend to use for the panel in a file called\n"),a("code",[t._v("pterodactyl.conf")]),t._v(", and place it in "),a("code",[t._v("/etc/nginx/sites-available/")]),t._v(", or — if on CentOS, "),a("code",[t._v("/etc/nginx/conf.d/")]),t._v(".")]),t._v(" "),a("h3",{attrs:{id:"nginx-with-ssl"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#nginx-with-ssl"}},[t._v("#")]),t._v(" NGINX With SSL")]),t._v(" "),a("p",[t._v("This configuration assumes that you will be using SSL on both the Panel and Daemons for significantly improved communication\nsecurity between users and the Panel. You will need to get a valid SSL certificate which can be done for free by using\nLet's Encrypt.")]),t._v(" "),a("div",{staticClass:"custom-block warning"},[a("p",{staticClass:"custom-block-title"},[t._v("WARNING")]),t._v(" "),a("p",[t._v("When using the SSL configuration you MUST create SSL certificates, otherwise your NGINX will fail to start. See "),a("RouterLink",{attrs:{to:"/tutorials/creating_ssl_certificates.html"}},[t._v("Creating SSL Certificates")]),t._v(" documentation page for how to create these certificates before continuing.")],1)]),t._v(" "),a("div",{staticClass:"language-conf extra-class"},[a("div",{staticClass:"highlight-lines"},[a("br"),a("br"),a("br"),a("br"),a("div",{staticClass:"highlighted"},[t._v(" ")]),a("br"),a("br"),a("br"),a("br"),a("br"),a("div",{staticClass:"highlighted"},[t._v(" ")]),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("div",{staticClass:"highlighted"},[t._v(" ")]),a("div",{staticClass:"highlighted"},[t._v(" ")]),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br")]),a("pre",{pre:!0,attrs:{class:"language-text"}},[a("code",[t._v('server_tokens off;\n\nserver {\n listen 80;\n server_name ;\n return 301 https://$server_name$request_uri;\n}\n\nserver {\n listen 443 ssl http2;\n server_name ;\n\n root /var/www/pterodactyl/public;\n index index.php;\n\n access_log /var/log/nginx/pterodactyl.app-access.log;\n error_log /var/log/nginx/pterodactyl.app-error.log error;\n\n # allow larger file uploads and longer script runtimes\n client_max_body_size 100m;\n client_body_timeout 120s;\n\n sendfile off;\n\n # SSL Configuration\n ssl_certificate /etc/letsencrypt/live//fullchain.pem;\n ssl_certificate_key /etc/letsencrypt/live//privkey.pem;\n ssl_session_cache shared:SSL:10m;\n ssl_protocols TLSv1.2 TLSv1.3;\n ssl_ciphers "ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384";\n ssl_prefer_server_ciphers on;\n\n # See https://hstspreload.org/ before uncommenting the line below.\n # add_header Strict-Transport-Security "max-age=15768000; preload;";\n add_header X-Content-Type-Options nosniff;\n add_header X-XSS-Protection "1; mode=block";\n add_header X-Robots-Tag none;\n add_header Content-Security-Policy "frame-ancestors \'self\'";\n add_header X-Frame-Options DENY;\n add_header Referrer-Policy same-origin;\n\n location / {\n try_files $uri $uri/ /index.php?$query_string;\n }\n\n location ~ \\.php$ {\n fastcgi_split_path_info ^(.+\\.php)(/.+)$;\n fastcgi_pass unix:/run/php/php7.4-fpm.sock;\n fastcgi_index index.php;\n include fastcgi_params;\n fastcgi_param PHP_VALUE "upload_max_filesize = 100M \\n post_max_size=100M";\n fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;\n fastcgi_param HTTP_PROXY "";\n fastcgi_intercept_errors off;\n fastcgi_buffer_size 16k;\n fastcgi_buffers 4 16k;\n fastcgi_connect_timeout 300;\n fastcgi_send_timeout 300;\n fastcgi_read_timeout 300;\n include /etc/nginx/fastcgi_params;\n }\n\n location ~ /\\.ht {\n deny all;\n }\n}\n')])])]),a("p",[t._v("Continue reading to the bottom of this section for the final steps with NGINX!")]),t._v(" "),a("h3",{attrs:{id:"nginx-without-ssl"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#nginx-without-ssl"}},[t._v("#")]),t._v(" NGINX Without SSL")]),t._v(" "),a("div",{staticClass:"language-conf extra-class"},[a("div",{staticClass:"highlight-lines"},[a("br"),a("br"),a("div",{staticClass:"highlighted"},[t._v(" ")]),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br")]),a("pre",{pre:!0,attrs:{class:"language-text"}},[a("code",[t._v('server {\n listen 80;\n server_name ;\n\n root /var/www/pterodactyl/public;\n index index.html index.htm index.php;\n charset utf-8;\n\n location / {\n try_files $uri $uri/ /index.php?$query_string;\n }\n\n location = /favicon.ico { access_log off; log_not_found off; }\n location = /robots.txt { access_log off; log_not_found off; }\n\n access_log off;\n error_log /var/log/nginx/pterodactyl.app-error.log error;\n\n # allow larger file uploads and longer script runtimes\n client_max_body_size 100m;\n client_body_timeout 120s;\n\n sendfile off;\n\n location ~ \\.php$ {\n fastcgi_split_path_info ^(.+\\.php)(/.+)$;\n fastcgi_pass unix:/run/php/php7.4-fpm.sock;\n fastcgi_index index.php;\n include fastcgi_params;\n fastcgi_param PHP_VALUE "upload_max_filesize = 100M \\n post_max_size=100M";\n fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;\n fastcgi_param HTTP_PROXY "";\n fastcgi_intercept_errors off;\n fastcgi_buffer_size 16k;\n fastcgi_buffers 4 16k;\n fastcgi_connect_timeout 300;\n fastcgi_send_timeout 300;\n fastcgi_read_timeout 300;\n }\n\n location ~ /\\.ht {\n deny all;\n }\n}\n')])])]),a("h3",{attrs:{id:"enabling-configuration"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#enabling-configuration"}},[t._v("#")]),t._v(" Enabling Configuration")]),t._v(" "),a("p",[t._v("The final step is to enable your NGINX configuration and restart it.")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# You do not need to symlink this file if you are using CentOS.")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token function"}},[t._v("sudo")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token function"}},[t._v("ln")]),t._v(" -s /etc/nginx/sites-available/pterodactyl.conf /etc/nginx/sites-enabled/pterodactyl.conf\n\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# You need to restart nginx regardless of OS.")]),t._v("\nsystemctl restart nginx\n")])])]),a("h2",{attrs:{id:"apache"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#apache"}},[t._v("#")]),t._v(" Apache")]),t._v(" "),a("p",[t._v("You should paste the contents of the file below, replacing "),a("code",[t._v("")]),t._v(" with the domain you intend to use for the panel in a file called\n"),a("code",[t._v("pterodactyl.conf")]),t._v(", and place it in "),a("code",[t._v("/etc/apache2/sites-available")]),t._v(", or — if on CentOS, "),a("code",[t._v("/etc/httpd/conf.d/")]),t._v(".")]),t._v(" "),a("p",[t._v("Note: When using Apache, make sure you have the "),a("code",[t._v("libapache2-mod-php")]),t._v(" package installed or else PHP will not display on your webserver.")]),t._v(" "),a("h3",{attrs:{id:"apache-with-ssl"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#apache-with-ssl"}},[t._v("#")]),t._v(" Apache With SSL")]),t._v(" "),a("p",[t._v("Like the nginx configuration, this assumes you will be using SSL on both the Panel and Daemons for improved security.")]),t._v(" "),a("div",{staticClass:"custom-block warning"},[a("p",{staticClass:"custom-block-title"},[t._v("WARNING")]),t._v(" "),a("p",[t._v("When using the SSL configuration you MUST create SSL certificates, otherwise your Apache will fail to start. See "),a("RouterLink",{attrs:{to:"/tutorials/creating_ssl_certificates.html"}},[t._v("Creating SSL Certificates")]),t._v(" documentation page for how to create these certificates before continuing.")],1)]),t._v(" "),a("div",{staticClass:"language-conf extra-class"},[a("div",{staticClass:"highlight-lines"},[a("br"),a("div",{staticClass:"highlighted"},[t._v(" ")]),a("br"),a("br"),a("br"),a("br"),a("br"),a("div",{staticClass:"highlighted"},[t._v(" ")]),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("div",{staticClass:"highlighted"},[t._v(" ")]),a("div",{staticClass:"highlighted"},[t._v(" ")]),a("br"),a("br")]),a("pre",{pre:!0,attrs:{class:"language-text"}},[a("code",[t._v('\n ServerName \n RewriteEngine On\n RewriteCond %{HTTPS} !=on\n RewriteRule ^/?(.*) https://%{SERVER_NAME}/$1 [R,L] \n\n\n ServerName \n DocumentRoot "/var/www/pterodactyl/public"\n AllowEncodedSlashes On\n php_value upload_max_filesize 100M\n php_value post_max_size 100M\n \n AllowOverride all\n \n SSLEngine on\n SSLCertificateFile /etc/letsencrypt/live//fullchain.pem\n SSLCertificateKeyFile /etc/letsencrypt/live//privkey.pem\n \n')])])]),a("h3",{attrs:{id:"apache-without-ssl"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#apache-without-ssl"}},[t._v("#")]),t._v(" Apache Without SSL")]),t._v(" "),a("div",{staticClass:"language-conf extra-class"},[a("div",{staticClass:"highlight-lines"},[a("br"),a("div",{staticClass:"highlighted"},[t._v(" ")]),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br")]),a("pre",{pre:!0,attrs:{class:"language-text"}},[a("code",[t._v('\n ServerName \n DocumentRoot "/var/www/pterodactyl/public"\n AllowEncodedSlashes On\n php_value upload_max_filesize 100M\n php_value post_max_size 100M\n \n AllowOverride all\n \n\n')])])]),a("h3",{attrs:{id:"enabling-configuration-2"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#enabling-configuration-2"}},[t._v("#")]),t._v(" Enabling Configuration")]),t._v(" "),a("p",[t._v("Once you've created the file above, simply run the commands below. If you are on CentOS "),a("em",[t._v("you do not need to run the commands\nbelow!")]),t._v(" You only need to run "),a("code",[t._v("systemctl restart httpd")]),t._v(".")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# You do not need to run any of these commands on CentOS")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token function"}},[t._v("sudo")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token function"}},[t._v("ln")]),t._v(" -s /etc/apache2/sites-available/pterodactyl.conf /etc/apache2/sites-enabled/pterodactyl.conf\n"),a("span",{pre:!0,attrs:{class:"token function"}},[t._v("sudo")]),t._v(" a2enmod rewrite\nsystemctl restart apache2\n")])])])])}),[],!1,null,null,null);e.default=r.exports}}]); \ No newline at end of file diff --git a/assets/js/71.af7c9f39.js b/assets/js/71.af7c9f39.js deleted file mode 100644 index 68c61820..00000000 --- a/assets/js/71.af7c9f39.js +++ /dev/null @@ -1 +0,0 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[71],{410:function(t,e,a){"use strict";a.r(e);var n=a(46),r=Object(n.a)({},(function(){var t=this,e=t.$createElement,a=t._self._c||e;return a("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[a("h1",{attrs:{id:"webserver-configuration"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#webserver-configuration"}},[t._v("#")]),t._v(" Webserver Configuration")]),t._v(" "),a("p"),a("div",{staticClass:"table-of-contents"},[a("ul",[a("li",[a("a",{attrs:{href:"#nginx"}},[t._v("NGINX")]),a("ul",[a("li",[a("a",{attrs:{href:"#nginx-with-ssl"}},[t._v("NGINX With SSL")])]),a("li",[a("a",{attrs:{href:"#nginx-without-ssl"}},[t._v("NGINX Without SSL")])]),a("li",[a("a",{attrs:{href:"#enabling-configuration"}},[t._v("Enabling Configuration")])])])]),a("li",[a("a",{attrs:{href:"#apache"}},[t._v("Apache")]),a("ul",[a("li",[a("a",{attrs:{href:"#apache-with-ssl"}},[t._v("Apache With SSL")])]),a("li",[a("a",{attrs:{href:"#apache-without-ssl"}},[t._v("Apache Without SSL")])]),a("li",[a("a",{attrs:{href:"#enabling-configuration"}},[t._v("Enabling Configuration")])])])])])]),a("p"),t._v(" "),a("div",{staticClass:"custom-block danger"},[a("p",{staticClass:"custom-block-title"},[t._v("DANGER")]),t._v(" "),a("p",[t._v("You should remove the default Apache or NGINX configuration as it will expose application secrets to malicious\nusers by default.")])]),t._v(" "),a("h2",{attrs:{id:"nginx"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#nginx"}},[t._v("#")]),t._v(" NGINX")]),t._v(" "),a("p",[t._v("You should paste the contents of the file below, replacing "),a("code",[t._v("")]),t._v(" with your domain name being used in a file called\n"),a("code",[t._v("pterodactyl.conf")]),t._v(" and place it in "),a("code",[t._v("/etc/nginx/sites-available/")]),t._v(", or — if on CentOS, "),a("code",[t._v("/etc/nginx/conf.d/")]),t._v(".")]),t._v(" "),a("h3",{attrs:{id:"nginx-with-ssl"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#nginx-with-ssl"}},[t._v("#")]),t._v(" NGINX With SSL")]),t._v(" "),a("p",[t._v("This configuration assumes that you will be using SSL on both the Panel and Daemons for significantly improved communication\nsecurity between users and the Panel. You will need to get a valid SSL certificate which can be done for free by using\nLet's Encrypt.")]),t._v(" "),a("div",{staticClass:"custom-block warning"},[a("p",{staticClass:"custom-block-title"},[t._v("WARNING")]),t._v(" "),a("p",[t._v("When using the SSL configuration you MUST create SSL certificates, otherwise your NGINX will fail to start. See "),a("RouterLink",{attrs:{to:"/tutorials/creating_ssl_certificates.html"}},[t._v("Creating SSL Certificates")]),t._v(" documentation page for how to create these certificates before continuing.")],1)]),t._v(" "),a("div",{staticClass:"language-conf extra-class"},[a("div",{staticClass:"highlight-lines"},[a("br"),a("br"),a("br"),a("br"),a("div",{staticClass:"highlighted"},[t._v(" ")]),a("br"),a("br"),a("br"),a("br"),a("br"),a("div",{staticClass:"highlighted"},[t._v(" ")]),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("div",{staticClass:"highlighted"},[t._v(" ")]),a("div",{staticClass:"highlighted"},[t._v(" ")]),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br")]),a("pre",{pre:!0,attrs:{class:"language-text"}},[a("code",[t._v('server_tokens off;\n\nserver {\n listen 80;\n server_name ;\n return 301 https://$server_name$request_uri;\n}\n\nserver {\n listen 443 ssl http2;\n server_name ;\n\n root /var/www/pterodactyl/public;\n index index.php;\n\n access_log /var/log/nginx/pterodactyl.app-access.log;\n error_log /var/log/nginx/pterodactyl.app-error.log error;\n\n # allow larger file uploads and longer script runtimes\n client_max_body_size 100m;\n client_body_timeout 120s;\n\n sendfile off;\n\n # SSL Configuration\n ssl_certificate /etc/letsencrypt/live//fullchain.pem;\n ssl_certificate_key /etc/letsencrypt/live//privkey.pem;\n ssl_session_cache shared:SSL:10m;\n ssl_protocols TLSv1.2 TLSv1.3;\n ssl_ciphers "ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384";\n ssl_prefer_server_ciphers on;\n\n # See https://hstspreload.org/ before uncommenting the line below.\n # add_header Strict-Transport-Security "max-age=15768000; preload;";\n add_header X-Content-Type-Options nosniff;\n add_header X-XSS-Protection "1; mode=block";\n add_header X-Robots-Tag none;\n add_header Content-Security-Policy "frame-ancestors \'self\'";\n add_header X-Frame-Options DENY;\n add_header Referrer-Policy same-origin;\n\n location / {\n try_files $uri $uri/ /index.php?$query_string;\n }\n\n location ~ \\.php$ {\n fastcgi_split_path_info ^(.+\\.php)(/.+)$;\n fastcgi_pass unix:/run/php/php7.4-fpm.sock;\n fastcgi_index index.php;\n include fastcgi_params;\n fastcgi_param PHP_VALUE "upload_max_filesize = 100M \\n post_max_size=100M";\n fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;\n fastcgi_param HTTP_PROXY "";\n fastcgi_intercept_errors off;\n fastcgi_buffer_size 16k;\n fastcgi_buffers 4 16k;\n fastcgi_connect_timeout 300;\n fastcgi_send_timeout 300;\n fastcgi_read_timeout 300;\n include /etc/nginx/fastcgi_params;\n }\n\n location ~ /\\.ht {\n deny all;\n }\n}\n')])])]),a("p",[t._v("Continue reading to the bottom of this section for the final steps with NGINX!")]),t._v(" "),a("h3",{attrs:{id:"nginx-without-ssl"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#nginx-without-ssl"}},[t._v("#")]),t._v(" NGINX Without SSL")]),t._v(" "),a("div",{staticClass:"language-conf extra-class"},[a("div",{staticClass:"highlight-lines"},[a("br"),a("br"),a("div",{staticClass:"highlighted"},[t._v(" ")]),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br")]),a("pre",{pre:!0,attrs:{class:"language-text"}},[a("code",[t._v('server {\n listen 80;\n server_name ;\n\n root /var/www/pterodactyl/public;\n index index.html index.htm index.php;\n charset utf-8;\n\n location / {\n try_files $uri $uri/ /index.php?$query_string;\n }\n\n location = /favicon.ico { access_log off; log_not_found off; }\n location = /robots.txt { access_log off; log_not_found off; }\n\n access_log off;\n error_log /var/log/nginx/pterodactyl.app-error.log error;\n\n # allow larger file uploads and longer script runtimes\n client_max_body_size 100m;\n client_body_timeout 120s;\n\n sendfile off;\n\n location ~ \\.php$ {\n fastcgi_split_path_info ^(.+\\.php)(/.+)$;\n fastcgi_pass unix:/run/php/php7.4-fpm.sock;\n fastcgi_index index.php;\n include fastcgi_params;\n fastcgi_param PHP_VALUE "upload_max_filesize = 100M \\n post_max_size=100M";\n fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;\n fastcgi_param HTTP_PROXY "";\n fastcgi_intercept_errors off;\n fastcgi_buffer_size 16k;\n fastcgi_buffers 4 16k;\n fastcgi_connect_timeout 300;\n fastcgi_send_timeout 300;\n fastcgi_read_timeout 300;\n }\n\n location ~ /\\.ht {\n deny all;\n }\n}\n')])])]),a("h3",{attrs:{id:"enabling-configuration"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#enabling-configuration"}},[t._v("#")]),t._v(" Enabling Configuration")]),t._v(" "),a("p",[t._v("The final step is to enable your NGINX configuration and restart it.")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# You do not need to symlink this file if you are using CentOS.")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token function"}},[t._v("sudo")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token function"}},[t._v("ln")]),t._v(" -s /etc/nginx/sites-available/pterodactyl.conf /etc/nginx/sites-enabled/pterodactyl.conf\n\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# You need to restart nginx regardless of OS.")]),t._v("\nsystemctl restart nginx\n")])])]),a("h2",{attrs:{id:"apache"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#apache"}},[t._v("#")]),t._v(" Apache")]),t._v(" "),a("p",[t._v("You should paste the contents of the file below, replacing "),a("code",[t._v("")]),t._v(" with your domain name being used in a file called\n"),a("code",[t._v("pterodactyl.conf")]),t._v(" and place it in "),a("code",[t._v("/etc/apache2/sites-available")]),t._v(", or — if on CentOS, "),a("code",[t._v("/etc/httpd/conf.d/")]),t._v(".")]),t._v(" "),a("p",[t._v("Note: When using Apache, make sure you have the "),a("code",[t._v("libapache2-mod-php")]),t._v(" package installed or else PHP will not display on your webserver.")]),t._v(" "),a("h3",{attrs:{id:"apache-with-ssl"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#apache-with-ssl"}},[t._v("#")]),t._v(" Apache With SSL")]),t._v(" "),a("p",[t._v("Like the nginx configuration, this assumes you will be using SSL on both the Panel and Daemons for improved security.")]),t._v(" "),a("div",{staticClass:"custom-block warning"},[a("p",{staticClass:"custom-block-title"},[t._v("WARNING")]),t._v(" "),a("p",[t._v("When using the SSL configuration you MUST create SSL certificates, otherwise your Apache will fail to start. See "),a("RouterLink",{attrs:{to:"/tutorials/creating_ssl_certificates.html"}},[t._v("Creating SSL Certificates")]),t._v(" documentation page for how to create these certificates before continuing.")],1)]),t._v(" "),a("div",{staticClass:"language-conf extra-class"},[a("div",{staticClass:"highlight-lines"},[a("br"),a("div",{staticClass:"highlighted"},[t._v(" ")]),a("br"),a("br"),a("br"),a("br"),a("br"),a("div",{staticClass:"highlighted"},[t._v(" ")]),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("div",{staticClass:"highlighted"},[t._v(" ")]),a("div",{staticClass:"highlighted"},[t._v(" ")]),a("br"),a("br")]),a("pre",{pre:!0,attrs:{class:"language-text"}},[a("code",[t._v('\n ServerName \n RewriteEngine On\n RewriteCond %{HTTPS} !=on\n RewriteRule ^/?(.*) https://%{SERVER_NAME}/$1 [R,L] \n\n\n ServerName \n DocumentRoot "/var/www/pterodactyl/public"\n AllowEncodedSlashes On\n php_value upload_max_filesize 100M\n php_value post_max_size 100M\n \n AllowOverride all\n \n SSLEngine on\n SSLCertificateFile /etc/letsencrypt/live//fullchain.pem\n SSLCertificateKeyFile /etc/letsencrypt/live//privkey.pem\n \n')])])]),a("h3",{attrs:{id:"apache-without-ssl"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#apache-without-ssl"}},[t._v("#")]),t._v(" Apache Without SSL")]),t._v(" "),a("div",{staticClass:"language-conf extra-class"},[a("div",{staticClass:"highlight-lines"},[a("br"),a("div",{staticClass:"highlighted"},[t._v(" ")]),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br"),a("br")]),a("pre",{pre:!0,attrs:{class:"language-text"}},[a("code",[t._v('\n ServerName \n DocumentRoot "/var/www/pterodactyl/public"\n AllowEncodedSlashes On\n php_value upload_max_filesize 100M\n php_value post_max_size 100M\n \n AllowOverride all\n \n\n')])])]),a("h3",{attrs:{id:"enabling-configuration-2"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#enabling-configuration-2"}},[t._v("#")]),t._v(" Enabling Configuration")]),t._v(" "),a("p",[t._v("Once you've created the file above, simply run the commands below. If you are on CentOS "),a("em",[t._v("you do not need to run the commands\nbelow!")]),t._v(" You only need to run "),a("code",[t._v("systemctl restart httpd")]),t._v(".")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# You do not need to run any of these commands on CentOS")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token function"}},[t._v("sudo")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token function"}},[t._v("ln")]),t._v(" -s /etc/apache2/sites-available/pterodactyl.conf /etc/apache2/sites-enabled/pterodactyl.conf\n"),a("span",{pre:!0,attrs:{class:"token function"}},[t._v("sudo")]),t._v(" a2enmod rewrite\nsystemctl restart apache2\n")])])])])}),[],!1,null,null,null);e.default=r.exports}}]); \ No newline at end of file diff --git a/assets/js/app.bb29d01f.js b/assets/js/app.80f646d2.js similarity index 99% rename from assets/js/app.bb29d01f.js rename to assets/js/app.80f646d2.js index eceac7e1..767a7d28 100644 --- a/assets/js/app.bb29d01f.js +++ b/assets/js/app.80f646d2.js @@ -1,4 +1,4 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[0],[]]);!function(t){function e(e){for(var r,a,u=e[0],l=e[1],s=e[2],f=0,p=[];f-1}function u(t,e){return e instanceof t||e&&(e.name===t.name||e._name===t._name)}function l(t,e){for(var n in e)t[n]=e[n];return t}var s={name:"RouterView",functional:!0,props:{name:{type:String,default:"default"}},render:function(t,e){var n=e.props,r=e.children,i=e.parent,o=e.data;o.routerView=!0;for(var a=i.$createElement,u=n.name,s=i.$route,f=i._routerViewCache||(i._routerViewCache={}),p=0,d=!1;i&&i._routerRoot!==i;){var h=i.$vnode?i.$vnode.data:{};h.routerView&&p++,h.keepAlive&&i._directInactive&&i._inactive&&(d=!0),i=i.$parent}if(o.routerViewDepth=p,d){var v=f[u],g=v&&v.component;return g?(v.configProps&&c(g,o,v.route,v.configProps),a(g,o,r)):a()}var m=s.matched[p],y=m&&m.components[u];if(!m||!y)return f[u]=null,a();f[u]={component:y},o.registerRouteInstance=function(t,e){var n=m.instances[u];(e&&n!==t||!e&&n===t)&&(m.instances[u]=e)},(o.hook||(o.hook={})).prepatch=function(t,e){m.instances[u]=e.componentInstance},o.hook.init=function(t){t.data.keepAlive&&t.componentInstance&&t.componentInstance!==m.instances[u]&&(m.instances[u]=t.componentInstance)};var b=m.props&&m.props[u];return b&&(l(f[u],{route:s,configProps:b}),c(y,o,s,b)),a(y,o,r)}};function c(t,e,n,r){var i=e.props=function(t,e){switch(typeof e){case"undefined":return;case"object":return e;case"function":return e(t);case"boolean":return e?t.params:void 0;default:0}}(n,r);if(i){i=e.props=l({},i);var o=e.attrs=e.attrs||{};for(var a in i)t.props&&a in t.props||(o[a]=i[a],delete i[a])}}var f=/[!'()*]/g,p=function(t){return"%"+t.charCodeAt(0).toString(16)},d=/%2C/g,h=function(t){return encodeURIComponent(t).replace(f,p).replace(d,",")},v=decodeURIComponent;function g(t){var e={};return(t=t.trim().replace(/^(\?|#|&)/,""))?(t.split("&").forEach((function(t){var n=t.replace(/\+/g," ").split("="),r=v(n.shift()),i=n.length>0?v(n.join("=")):null;void 0===e[r]?e[r]=i:Array.isArray(e[r])?e[r].push(i):e[r]=[e[r],i]})),e):e}function m(t){var e=t?Object.keys(t).map((function(e){var n=t[e];if(void 0===n)return"";if(null===n)return h(e);if(Array.isArray(n)){var r=[];return n.forEach((function(t){void 0!==t&&(null===t?r.push(h(e)):r.push(h(e)+"="+h(t)))})),r.join("&")}return h(e)+"="+h(n)})).filter((function(t){return t.length>0})).join("&"):null;return e?"?"+e:""}var y=/\/?$/;function b(t,e,n,r){var i=r&&r.options.stringifyQuery,o=e.query||{};try{o=_(o)}catch(t){}var a={name:e.name||t&&t.name,meta:t&&t.meta||{},path:e.path||"/",hash:e.hash||"",query:o,params:e.params||{},fullPath:S(e,i),matched:t?x(t):[]};return n&&(a.redirectedFrom=S(n,i)),Object.freeze(a)}function _(t){if(Array.isArray(t))return t.map(_);if(t&&"object"==typeof t){var e={};for(var n in t)e[n]=_(t[n]);return e}return t}var w=b(null,{path:"/"});function x(t){for(var e=[];t;)e.unshift(t),t=t.parent;return e}function S(t,e){var n=t.path,r=t.query;void 0===r&&(r={});var i=t.hash;return void 0===i&&(i=""),(n||"/")+(e||m)(r)+i}function k(t,e){return e===w?t===e:!!e&&(t.path&&e.path?t.path.replace(y,"")===e.path.replace(y,"")&&t.hash===e.hash&&O(t.query,e.query):!(!t.name||!e.name)&&(t.name===e.name&&t.hash===e.hash&&O(t.query,e.query)&&O(t.params,e.params)))}function O(t,e){if(void 0===t&&(t={}),void 0===e&&(e={}),!t||!e)return t===e;var n=Object.keys(t),r=Object.keys(e);return n.length===r.length&&n.every((function(n){var r=t[n],i=e[n];return"object"==typeof r&&"object"==typeof i?O(r,i):String(r)===String(i)}))}function C(t,e,n){var r=t.charAt(0);if("/"===r)return t;if("?"===r||"#"===r)return e+t;var i=e.split("/");n&&i[i.length-1]||i.pop();for(var o=t.replace(/^\//,"").split("/"),a=0;a=0&&(e=t.slice(r),t=t.slice(0,r));var i=t.indexOf("?");return i>=0&&(n=t.slice(i+1),t=t.slice(0,i)),{path:t,query:n,hash:e}}(i.path||""),c=e&&e.path||"/",f=s.path?C(s.path,c,n||i.append):c,p=function(t,e,n){void 0===e&&(e={});var r,i=n||g;try{r=i(t||"")}catch(t){r={}}for(var o in e)r[o]=e[o];return r}(s.query,i.query,r&&r.options.parseQuery),d=i.hash||s.hash;return d&&"#"!==d.charAt(0)&&(d="#"+d),{_normalized:!0,path:f,query:p,hash:d}}var G,K=function(){},X={name:"RouterLink",props:{to:{type:[String,Object],required:!0},tag:{type:String,default:"a"},exact:Boolean,append:Boolean,replace:Boolean,activeClass:String,exactActiveClass:String,event:{type:[String,Array],default:"click"}},render:function(t){var e=this,n=this.$router,r=this.$route,i=n.resolve(this.to,r,this.append),o=i.location,a=i.route,u=i.href,s={},c=n.options.linkActiveClass,f=n.options.linkExactActiveClass,p=null==c?"router-link-active":c,d=null==f?"router-link-exact-active":f,h=null==this.activeClass?p:this.activeClass,v=null==this.exactActiveClass?d:this.exactActiveClass,g=a.redirectedFrom?b(null,H(a.redirectedFrom),null,n):a;s[v]=k(r,g),s[h]=this.exact?s[v]:function(t,e){return 0===t.path.replace(y,"/").indexOf(e.path.replace(y,"/"))&&(!e.hash||t.hash===e.hash)&&function(t,e){for(var n in e)if(!(n in t))return!1;return!0}(t.query,e.query)}(r,g);var m=function(t){Q(t)&&(e.replace?n.replace(o,K):n.push(o,K))},_={click:Q};Array.isArray(this.event)?this.event.forEach((function(t){_[t]=m})):_[this.event]=m;var w={class:s},x=!this.$scopedSlots.$hasNormal&&this.$scopedSlots.default&&this.$scopedSlots.default({href:u,route:a,navigate:m,isActive:s[h],isExactActive:s[v]});if(x){if(1===x.length)return x[0];if(x.length>1||!x.length)return 0===x.length?t():t("span",{},x)}if("a"===this.tag)w.on=_,w.attrs={href:u};else{var S=function t(e){var n;if(e)for(var r=0;r-1&&(u.params[p]=n.params[p]);return u.path=W(c.path,u.params),l(c,u,a)}if(u.path){u.params={};for(var d=0;d=t.length?n():t[i]?e(t[i],(function(){r(i+1)})):r(i+1)};r(0)}function wt(t){return function(e,n,r){var i=!1,o=0,u=null;xt(t,(function(t,e,n,l){if("function"==typeof t&&void 0===t.cid){i=!0,o++;var s,c=Ot((function(e){var i;((i=e).__esModule||kt&&"Module"===i[Symbol.toStringTag])&&(e=e.default),t.resolved="function"==typeof e?e:G.extend(e),n.components[l]=e,--o<=0&&r()})),f=Ot((function(t){var e="Failed to resolve async component "+l+": "+t;u||(u=a(t)?t:new Error(e),r(u))}));try{s=t(c,f)}catch(t){f(t)}if(s)if("function"==typeof s.then)s.then(c,f);else{var p=s.component;p&&"function"==typeof p.then&&p.then(c,f)}}})),i||r()}}function xt(t,e){return St(t.map((function(t){return Object.keys(t.components).map((function(n){return e(t.components[n],t.instances[n],t,n)}))})))}function St(t){return Array.prototype.concat.apply([],t)}var kt="function"==typeof Symbol&&"symbol"==typeof Symbol.toStringTag;function Ot(t){var e=!1;return function(){for(var n=[],r=arguments.length;r--;)n[r]=arguments[r];if(!e)return e=!0,t.apply(this,n)}}var Ct=function(t){function e(e){t.call(this),this.name=this._name="NavigationDuplicated",this.message='Navigating to current location ("'+e.fullPath+'") is not allowed',Object.defineProperty(this,"stack",{value:(new t).stack,writable:!0,configurable:!0})}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e}(Error);Ct._name="NavigationDuplicated";var jt=function(t,e){this.router=t,this.base=function(t){if(!t)if(Y){var e=document.querySelector("base");t=(t=e&&e.getAttribute("href")||"/").replace(/^https?:\/\/[^\/]+/,"")}else t="/";"/"!==t.charAt(0)&&(t="/"+t);return t.replace(/\/$/,"")}(e),this.current=w,this.pending=null,this.ready=!1,this.readyCbs=[],this.readyErrorCbs=[],this.errorCbs=[]};function Pt(t,e,n,r){var i=xt(t,(function(t,r,i,o){var a=function(t,e){"function"!=typeof t&&(t=G.extend(t));return t.options[e]}(t,e);if(a)return Array.isArray(a)?a.map((function(t){return n(t,r,i,o)})):n(a,r,i,o)}));return St(r?i.reverse():i)}function Et(t,e){if(e)return function(){return t.apply(e,arguments)}}jt.prototype.listen=function(t){this.cb=t},jt.prototype.onReady=function(t,e){this.ready?t():(this.readyCbs.push(t),e&&this.readyErrorCbs.push(e))},jt.prototype.onError=function(t){this.errorCbs.push(t)},jt.prototype.transitionTo=function(t,e,n){var r=this,i=this.router.match(t,this.current);this.confirmTransition(i,(function(){r.updateRoute(i),e&&e(i),r.ensureURL(),r.ready||(r.ready=!0,r.readyCbs.forEach((function(t){t(i)})))}),(function(t){n&&n(t),t&&!r.ready&&(r.ready=!0,r.readyErrorCbs.forEach((function(e){e(t)})))}))},jt.prototype.confirmTransition=function(t,e,n){var r=this,i=this.current,o=function(t){!u(Ct,t)&&a(t)&&(r.errorCbs.length?r.errorCbs.forEach((function(e){e(t)})):console.error(t)),n&&n(t)};if(k(t,i)&&t.matched.length===i.matched.length)return this.ensureURL(),o(new Ct(t));var l=function(t,e){var n,r=Math.max(t.length,e.length);for(n=0;n-1?decodeURI(t.slice(0,r))+t.slice(r):decodeURI(t)}else t=decodeURI(t.slice(0,n))+t.slice(n);return t}function It(t){var e=window.location.href,n=e.indexOf("#");return(n>=0?e.slice(0,n):e)+"#"+t}function Dt(t){mt?yt(It(t)):window.location.hash=t}function Mt(t){mt?bt(It(t)):window.location.replace(It(t))}var Nt=function(t){function e(e,n){t.call(this,e,n),this.stack=[],this.index=-1}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.push=function(t,e,n){var r=this;this.transitionTo(t,(function(t){r.stack=r.stack.slice(0,r.index+1).concat(t),r.index++,e&&e(t)}),n)},e.prototype.replace=function(t,e,n){var r=this;this.transitionTo(t,(function(t){r.stack=r.stack.slice(0,r.index).concat(t),e&&e(t)}),n)},e.prototype.go=function(t){var e=this,n=this.index+t;if(!(n<0||n>=this.stack.length)){var r=this.stack[n];this.confirmTransition(r,(function(){e.index=n,e.updateRoute(r)}),(function(t){u(Ct,t)&&(e.index=n)}))}},e.prototype.getCurrentLocation=function(){var t=this.stack[this.stack.length-1];return t?t.fullPath:"/"},e.prototype.ensureURL=function(){},e}(jt),Ut=function(t){void 0===t&&(t={}),this.app=null,this.apps=[],this.options=t,this.beforeHooks=[],this.resolveHooks=[],this.afterHooks=[],this.matcher=tt(t.routes||[],this);var e=t.mode||"hash";switch(this.fallback="history"===e&&!mt&&!1!==t.fallback,this.fallback&&(e="hash"),Y||(e="abstract"),this.mode=e,e){case"history":this.history=new At(this,t.base);break;case"hash":this.history=new Lt(this,t.base,this.fallback);break;case"abstract":this.history=new Nt(this,t.base);break;default:0}},Ft={currentRoute:{configurable:!0}};function zt(t,e){return t.push(e),function(){var n=t.indexOf(e);n>-1&&t.splice(n,1)}}Ut.prototype.match=function(t,e,n){return this.matcher.match(t,e,n)},Ft.currentRoute.get=function(){return this.history&&this.history.current},Ut.prototype.init=function(t){var e=this;if(this.apps.push(t),t.$once("hook:destroyed",(function(){var n=e.apps.indexOf(t);n>-1&&e.apps.splice(n,1),e.app===t&&(e.app=e.apps[0]||null)})),!this.app){this.app=t;var n=this.history;if(n instanceof At)n.transitionTo(n.getCurrentLocation());else if(n instanceof Lt){var r=function(){n.setupListeners()};n.transitionTo(n.getCurrentLocation(),r,r)}n.listen((function(t){e.apps.forEach((function(e){e._route=t}))}))}},Ut.prototype.beforeEach=function(t){return zt(this.beforeHooks,t)},Ut.prototype.beforeResolve=function(t){return zt(this.resolveHooks,t)},Ut.prototype.afterEach=function(t){return zt(this.afterHooks,t)},Ut.prototype.onReady=function(t,e){this.history.onReady(t,e)},Ut.prototype.onError=function(t){this.history.onError(t)},Ut.prototype.push=function(t,e,n){var r=this;if(!e&&!n&&"undefined"!=typeof Promise)return new Promise((function(e,n){r.history.push(t,e,n)}));this.history.push(t,e,n)},Ut.prototype.replace=function(t,e,n){var r=this;if(!e&&!n&&"undefined"!=typeof Promise)return new Promise((function(e,n){r.history.replace(t,e,n)}));this.history.replace(t,e,n)},Ut.prototype.go=function(t){this.history.go(t)},Ut.prototype.back=function(){this.go(-1)},Ut.prototype.forward=function(){this.go(1)},Ut.prototype.getMatchedComponents=function(t){var e=t?t.matched?t:this.resolve(t).route:this.currentRoute;return e?[].concat.apply([],e.matched.map((function(t){return Object.keys(t.components).map((function(e){return t.components[e]}))}))):[]},Ut.prototype.resolve=function(t,e,n){var r=H(t,e=e||this.history.current,n,this),i=this.match(r,e),o=i.redirectedFrom||i.fullPath;return{location:r,route:i,href:function(t,e,n){var r="hash"===n?"#"+e:e;return t?j(t+"/"+r):r}(this.history.base,o,this.mode),normalizedTo:r,resolved:i}},Ut.prototype.addRoutes=function(t){this.matcher.addRoutes(t),this.history.current!==w&&this.history.transitionTo(this.history.getCurrentLocation())},Object.defineProperties(Ut.prototype,Ft),Ut.install=function t(e){if(!t.installed||G!==e){t.installed=!0,G=e;var n=function(t){return void 0!==t},r=function(t,e){var r=t.$options._parentVnode;n(r)&&n(r=r.data)&&n(r=r.registerRouteInstance)&&r(t,e)};e.mixin({beforeCreate:function(){n(this.$options.router)?(this._routerRoot=this,this._router=this.$options.router,this._router.init(this),e.util.defineReactive(this,"_route",this._router.history.current)):this._routerRoot=this.$parent&&this.$parent._routerRoot||this,r(this,this)},destroyed:function(){r(this)}}),Object.defineProperty(e.prototype,"$router",{get:function(){return this._routerRoot._router}}),Object.defineProperty(e.prototype,"$route",{get:function(){return this._routerRoot._route}}),e.component("RouterView",s),e.component("RouterLink",X);var i=e.config.optionMergeStrategies;i.beforeRouteEnter=i.beforeRouteLeave=i.beforeRouteUpdate=i.created}},Ut.version="3.1.6",Y&&window.Vue&&window.Vue.use(Ut);var Bt=Ut;n(50),n(194),n(196),n(142),n(143),n(72),n(108),n(51);function qt(t){t.locales&&Object.keys(t.locales).forEach((function(e){t.locales[e].path=e})),Object.freeze(t)}n(198),n(144),n(48),n(199),n(69),n(41),n(61),n(92);function Vt(t){return(Vt="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}var Wt=n(44),Ht={DropdownLink:function(){return Promise.all([n.e(0),n.e(6)]).then(n.bind(null,340))},DropdownTransition:function(){return Promise.all([n.e(0),n.e(18)]).then(n.bind(null,317))},Home:function(){return Promise.all([n.e(2),n.e(7)]).then(n.bind(null,341))},Layout:function(){return Promise.all([n.e(0),n.e(2),n.e(1),n.e(4)]).then(n.bind(null,361))},NavLink:function(){return n.e(9).then(n.bind(null,316))},NavLinks:function(){return Promise.all([n.e(0),n.e(1)]).then(n.bind(null,332))},Navbar:function(){return Promise.all([n.e(0),n.e(1),n.e(10)]).then(n.bind(null,342))},NotFound:function(){return n.e(24).then(n.bind(null,362))},Page:function(){return n.e(16).then(n.bind(null,343))},SearchBox:function(){return n.e(13).then(n.bind(null,331))},Sidebar:function(){return Promise.all([n.e(0),n.e(1),n.e(8)]).then(n.bind(null,344))},SidebarButton:function(){return n.e(25).then(n.bind(null,334))},SidebarGroup:function(){return Promise.all([n.e(0),n.e(5)]).then(n.bind(null,333))},SidebarLink:function(){return n.e(14).then(n.bind(null,319))},SlickCarousel:function(){return Promise.all([n.e(2),n.e(26)]).then(n.bind(null,330))},VersionSelect:function(){return n.e(11).then(n.bind(null,325))},VersionSelectItem:function(){return n.e(27).then(n.bind(null,318))}},Gt={"v-680eebc3":function(){return n.e(28).then(n.bind(null,363))},"v-4e72e1d8":function(){return n.e(29).then(n.bind(null,364))},"v-7d127123":function(){return n.e(30).then(n.bind(null,365))},"v-4a1e6e3a":function(){return n.e(12).then(n.bind(null,366))},"v-10fe793a":function(){return n.e(31).then(n.bind(null,367))},"v-622f23e3":function(){return n.e(17).then(n.bind(null,368))},"v-ef34fffa":function(){return n.e(32).then(n.bind(null,369))},"v-090070fa":function(){return n.e(33).then(n.bind(null,370))},"v-67c3f2ba":function(){return n.e(15).then(n.bind(null,371))},"v-0af75f63":function(){return n.e(34).then(n.bind(null,372))},"v-cc322cfa":function(){return n.e(35).then(n.bind(null,373))},"v-4d5d0f9b":function(){return n.e(36).then(n.bind(null,374))},"v-22a01883":function(){return n.e(37).then(n.bind(null,375))},"v-047b1c1f":function(){return n.e(38).then(n.bind(null,376))},"v-030337f1":function(){return n.e(39).then(n.bind(null,377))},"v-26037fe3":function(){return n.e(40).then(n.bind(null,378))},"v-9619ebfa":function(){return n.e(41).then(n.bind(null,379))},"v-432db923":function(){return n.e(42).then(n.bind(null,380))},"v-3dac3903":function(){return n.e(43).then(n.bind(null,381))},"v-e046bab2":function(){return n.e(44).then(n.bind(null,382))},"v-e336830e":function(){return n.e(45).then(n.bind(null,383))},"v-7c7b3203":function(){return n.e(46).then(n.bind(null,384))},"v-439f9686":function(){return n.e(47).then(n.bind(null,385))},"v-07a77f72":function(){return n.e(48).then(n.bind(null,386))},"v-00d38f11":function(){return n.e(49).then(n.bind(null,387))},"v-d39223ba":function(){return n.e(19).then(n.bind(null,388))},"v-a31c3dba":function(){return n.e(50).then(n.bind(null,389))},"v-6f0eac21":function(){return n.e(51).then(n.bind(null,390))},"v-481dea23":function(){return n.e(52).then(n.bind(null,391))},"v-15b388aa":function(){return n.e(53).then(n.bind(null,392))},"v-8a6363ba":function(){return n.e(54).then(n.bind(null,393))},"v-7f0b5429":function(){return n.e(55).then(n.bind(null,394))},"v-29055241":function(){return n.e(56).then(n.bind(null,395))},"v-c0e60bfa":function(){return n.e(57).then(n.bind(null,396))},"v-2339aa03":function(){return n.e(58).then(n.bind(null,397))},"v-019cb63a":function(){return n.e(59).then(n.bind(null,398))},"v-7ffeb723":function(){return n.e(60).then(n.bind(null,399))},"v-9478f2ba":function(){return n.e(61).then(n.bind(null,400))},"v-4f03fe0f":function(){return n.e(62).then(n.bind(null,401))},"v-5baa92ba":function(){return n.e(63).then(n.bind(null,402))},"v-c249e07a":function(){return n.e(64).then(n.bind(null,403))},"v-27941b23":function(){return n.e(65).then(n.bind(null,404))},"v-6f4baca5":function(){return n.e(66).then(n.bind(null,405))},"v-fa75e63a":function(){return n.e(67).then(n.bind(null,406))},"v-f0c998de":function(){return n.e(68).then(n.bind(null,407))},"v-11e0c7ba":function(){return n.e(69).then(n.bind(null,408))},"v-46094903":function(){return n.e(70).then(n.bind(null,409))},"v-cbda523a":function(){return n.e(71).then(n.bind(null,410))},"v-a75af93a":function(){return n.e(72).then(n.bind(null,411))},"v-22ba6d3a":function(){return n.e(73).then(n.bind(null,412))},"v-d6319362":function(){return n.e(74).then(n.bind(null,413))},"v-7b99cfba":function(){return n.e(20).then(n.bind(null,414))},"v-6ec4d123":function(){return n.e(75).then(n.bind(null,415))},"v-5c5d50fa":function(){return n.e(76).then(n.bind(null,416))},"v-6cd19ba3":function(){return n.e(77).then(n.bind(null,417))},"v-55eb8eca":function(){return n.e(21).then(n.bind(null,418))},"v-1ec46263":function(){return n.e(22).then(n.bind(null,419))},"v-9213d4fa":function(){return n.e(78).then(n.bind(null,420))}};function Kt(t){var e=Object.create(null);return function(n){return e[n]||(e[n]=t(n))}}var Xt=/-(\w)/g,Qt=Kt((function(t){return t.replace(Xt,(function(t,e){return e?e.toUpperCase():""}))})),Yt=/\B([A-Z])/g,Jt=Kt((function(t){return t.replace(Yt,"-$1").toLowerCase()})),Zt=Kt((function(t){return t.charAt(0).toUpperCase()+t.slice(1)}));function te(t,e){if(e)return t(e)?t(e):e.includes("-")?t(Zt(Qt(e))):t(Zt(e))||t(Jt(e))}var ee=Object.assign({},Ht,Gt),ne=function(t){return ee[t]},re=function(t){return Gt[t]},ie=function(t){return Ht[t]},oe=function(t){return o.a.component(t)};function ae(t){return te(re,t)}function ue(t){return te(ie,t)}function le(t){return te(ne,t)}function se(t){return te(oe,t)}function ce(){for(var t=arguments.length,e=new Array(t),n=0;n"})).join("\n "):""}var e},mounted:function(){this.currentMetaTags=Object(Wt.a)(document.querySelectorAll("meta")),this.updateMeta()},methods:{updateMeta:function(){document.title=this.$title,document.documentElement.lang=this.$lang;var t=this.getMergedMetaTags();this.currentMetaTags=ge(t,this.currentMetaTags)},getMergedMetaTags:function(){var t=this.$page.frontmatter.meta||[];return ve()([{name:"description",content:this.$description}],t,this.siteMeta,me)}},watch:{$page:function(){this.updateMeta()}},beforeDestroy:function(){ge(null,this.currentMetaTags)}}],be={name:"GlobalLayout",computed:{layout:function(){var t=this.getLayout();return fe("layout",t),o.a.component(t)}},methods:{getLayout:function(){if(this.$page.path){var t=this.$page.frontmatter.layout;return t&&(this.$vuepress.getLayoutAsyncComponent(t)||this.$vuepress.getVueComponent(t))?t:"Layout"}return"NotFound"}}},_e=n(46),we=Object(_e.a)(be,(function(){var t=this.$createElement;return(this._self._c||t)(this.layout,{tag:"component"})}),[],!1,null,null,null).exports;!function(t,e,n){var r;switch(e){case"components":t[e]||(t[e]={}),Object.assign(t[e],n);break;case"mixins":t[e]||(t[e]=[]),(r=t[e]).push.apply(r,Object(Wt.a)(n));break;default:throw new Error("Unknown option name.")}}(we,"mixins",ye);var xe=[{name:"v-680eebc3",path:"/404.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-680eebc3").then(n)}},{name:"v-4e72e1d8",path:"/",component:we,beforeEnter:function(t,e,n){ce("Layout","v-4e72e1d8").then(n)}},{path:"/index.html",redirect:"/"},{name:"v-7d127123",path:"/community/about.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-7d127123").then(n)}},{name:"v-4a1e6e3a",path:"/community/config/eggs/creating_a_custom_egg.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-4a1e6e3a").then(n)}},{name:"v-10fe793a",path:"/community/config/eggs/creating_a_custom_image.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-10fe793a").then(n)}},{name:"v-622f23e3",path:"/community/config/nodes/add_node.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-622f23e3").then(n)}},{name:"v-ef34fffa",path:"/community/customization/panel.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-ef34fffa").then(n)}},{name:"v-090070fa",path:"/community/customization/wings.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-090070fa").then(n)}},{name:"v-67c3f2ba",path:"/community/games/minecraft.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-67c3f2ba").then(n)}},{name:"v-0af75f63",path:"/community/installation-guides/panel/centos7.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-0af75f63").then(n)}},{name:"v-cc322cfa",path:"/community/installation-guides/panel/centos8.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-cc322cfa").then(n)}},{name:"v-4d5d0f9b",path:"/community/installation-guides/panel/debian10.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-4d5d0f9b").then(n)}},{name:"v-22a01883",path:"/community/installation-guides/panel/debian9.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-22a01883").then(n)}},{name:"v-047b1c1f",path:"/community/installation-guides/panel/ubuntu1804.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-047b1c1f").then(n)}},{name:"v-030337f1",path:"/community/installation-guides/panel/ubuntu2004.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-030337f1").then(n)}},{name:"v-26037fe3",path:"/community/installation-guides/wings/centos7.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-26037fe3").then(n)}},{name:"v-9619ebfa",path:"/community/installation-guides/wings/centos8.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-9619ebfa").then(n)}},{name:"v-432db923",path:"/community/installation-guides/wings/debian10.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-432db923").then(n)}},{name:"v-3dac3903",path:"/community/installation-guides/wings/debian9.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-3dac3903").then(n)}},{name:"v-e046bab2",path:"/community/installation-guides/wings/ubuntu1804.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-e046bab2").then(n)}},{name:"v-e336830e",path:"/community/installation-guides/wings/ubuntu2004.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-e336830e").then(n)}},{name:"v-7c7b3203",path:"/community/tutorials/artisan.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-7c7b3203").then(n)}},{name:"v-439f9686",path:"/community/tutorials/custom_theme_setup.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-439f9686").then(n)}},{name:"v-07a77f72",path:"/daemon/0.6/configuration.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-07a77f72").then(n)}},{name:"v-00d38f11",path:"/daemon/0.6/debian_8_docker.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-00d38f11").then(n)}},{name:"v-d39223ba",path:"/daemon/0.6/installing.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-d39223ba").then(n)}},{name:"v-a31c3dba",path:"/daemon/0.6/kernel_modifications.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-a31c3dba").then(n)}},{name:"v-6f0eac21",path:"/daemon/0.6/standalone_sftp.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-6f0eac21").then(n)}},{name:"v-481dea23",path:"/daemon/0.6/upgrade/0.4_to_0.5.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-481dea23").then(n)}},{name:"v-15b388aa",path:"/daemon/0.6/upgrade/0.5.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-15b388aa").then(n)}},{name:"v-8a6363ba",path:"/daemon/0.6/upgrade/0.5_to_0.6.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-8a6363ba").then(n)}},{name:"v-7f0b5429",path:"/daemon/0.6/upgrade/0.6.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-7f0b5429").then(n)}},{name:"v-29055241",path:"/daemon/0.6/upgrading.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-29055241").then(n)}},{name:"v-c0e60bfa",path:"/guides/mounts.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-c0e60bfa").then(n)}},{name:"v-2339aa03",path:"/ops/publish_release.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-2339aa03").then(n)}},{name:"v-019cb63a",path:"/panel/0.7/configuration.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-019cb63a").then(n)}},{name:"v-7ffeb723",path:"/panel/0.7/getting_started.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-7ffeb723").then(n)}},{name:"v-9478f2ba",path:"/panel/0.7/troubleshooting.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-9478f2ba").then(n)}},{name:"v-4f03fe0f",path:"/panel/0.7/upgrade/0.6_to_0.7.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-4f03fe0f").then(n)}},{name:"v-5baa92ba",path:"/panel/0.7/upgrade/0.7.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-5baa92ba").then(n)}},{name:"v-c249e07a",path:"/panel/0.7/upgrading.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-c249e07a").then(n)}},{name:"v-27941b23",path:"/panel/0.7/webserver_configuration.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-27941b23").then(n)}},{name:"v-6f4baca5",path:"/panel/1.0/additional_configuration.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-6f4baca5").then(n)}},{name:"v-fa75e63a",path:"/panel/1.0/getting_started.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-fa75e63a").then(n)}},{name:"v-f0c998de",path:"/panel/1.0/upgrade/0.7_to_1.0.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-f0c998de").then(n)}},{name:"v-11e0c7ba",path:"/panel/1.0/upgrade/1.0.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-11e0c7ba").then(n)}},{name:"v-46094903",path:"/panel/1.0/upgrading.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-46094903").then(n)}},{name:"v-cbda523a",path:"/panel/1.0/webserver_configuration.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-cbda523a").then(n)}},{name:"v-a75af93a",path:"/project/about.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-a75af93a").then(n)}},{name:"v-22ba6d3a",path:"/project/community.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-22ba6d3a").then(n)}},{name:"v-d6319362",path:"/project/introduction.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-d6319362").then(n)}},{name:"v-7b99cfba",path:"/project/terms.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-7b99cfba").then(n)}},{name:"v-6ec4d123",path:"/tutorials/creating_ssl_certificates.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-6ec4d123").then(n)}},{name:"v-5c5d50fa",path:"/tutorials/mysql_setup.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-5c5d50fa").then(n)}},{name:"v-6cd19ba3",path:"/wings/1.0/configuration.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-6cd19ba3").then(n)}},{name:"v-55eb8eca",path:"/wings/1.0/installing.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-55eb8eca").then(n)}},{name:"v-1ec46263",path:"/wings/1.0/migrating.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-1ec46263").then(n)}},{name:"v-9213d4fa",path:"/wings/1.0/upgrading.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-9213d4fa").then(n)}},{path:"*",component:we}],Se={title:"Pterodactyl",description:"The open-source server management solution.",base:"/",headTags:[["link",{rel:"apple-touch-icon",sizes:"180x180",href:"/favicons/apple-touch-icon.png"}],["link",{rel:"icon",type:"image/png",href:"/favicons/favicon-32x32.png",sizes:"32x32"}],["link",{rel:"icon",type:"image/png",href:"/favicons/favicon-16x16.png",sizes:"16x16"}],["link",{rel:"mask-icon",href:"/favicons/safari-pinned-tab.svg",color:"#0e4688"}],["link",{rel:"manifest",href:"/favicons/manifest.json"}],["link",{rel:"shortcut icon",href:"/favicons/favicon.ico"}],["meta",{name:"msapplication-config",content:"/favicons/browserconfig.xml"}],["meta",{name:"theme-color",content:"#0e4688"}]],pages:[{frontmatter:{},regularPath:"/404.html",relativePath:"404.md",key:"v-680eebc3",path:"/404.html"},{title:"Home",frontmatter:{home:!0,heroImage:"/doc_pterry.png",actionText:"Get Started →",actionLink:"/project/introduction",features:[{title:"Security First",details:"Security is a first-class citizen on this platform with bcrypt hashing, AES-256-CBC encryption, and HTTPS support out of the box."},{title:"Modern Tooling",details:"Built on a modern stack utilizing the best design practices that make it easy to jump in and make modifications."},{title:"Docker to the Core",details:"All servers run in isolated Docker containers that limit attack vectors, provide strict resource limits, and provide environments tailored to each specific game."}],footer:"MIT Licensed | Copyright © 2015 - 2018 Dane Everitt & Contributors"},regularPath:"/",relativePath:"README.md",key:"v-4e72e1d8",path:"/"},{title:"Community Guides and Tutorials",frontmatter:{},regularPath:"/community/about.html",relativePath:"community/about.md",key:"v-7d127123",path:"/community/about.html",headers:[{level:2,title:"About",slug:"about"}]},{title:"Creating a Custom Egg",frontmatter:{},regularPath:"/community/config/eggs/creating_a_custom_egg.html",relativePath:"community/config/eggs/creating_a_custom_egg.md",key:"v-4a1e6e3a",path:"/community/config/eggs/creating_a_custom_egg.html",headers:[{level:2,title:"Create New Option",slug:"create-new-option"},{level:2,title:"Configure Process Management",slug:"configure-process-management"},{level:3,title:"Stop Command",slug:"stop-command"},{level:3,title:"Log Storage",slug:"log-storage"},{level:3,title:"Configuration Files",slug:"configuration-files"},{level:3,title:"Start Configuration",slug:"start-configuration"},{level:2,title:"Copy Settings From",slug:"copy-settings-from"},{level:2,title:"Egg Variables",slug:"egg-variables"}]},{title:"Creating a Custom Docker Image",frontmatter:{},regularPath:"/community/config/eggs/creating_a_custom_image.html",relativePath:"community/config/eggs/creating_a_custom_image.md",key:"v-10fe793a",path:"/community/config/eggs/creating_a_custom_image.html",headers:[{level:2,title:"Creating the Dockerfile",slug:"creating-the-dockerfile"},{level:2,title:"Installing Dependencies",slug:"installing-dependencies"},{level:2,title:"Creating a Container User",slug:"creating-a-container-user"},{level:2,title:"Work Directory & Entrypoint",slug:"work-directory-entrypoint"},{level:2,title:"Entrypoint Script",slug:"entrypoint-script"},{level:2,title:"Modifying the Startup Command",slug:"modifying-the-startup-command"},{level:2,title:"Run the Command",slug:"run-the-command"},{level:3,title:"Note",slug:"note"}]},{title:"Creating a New Node",frontmatter:{},regularPath:"/community/config/nodes/add_node.html",relativePath:"community/config/nodes/add_node.md",key:"v-622f23e3",path:"/community/config/nodes/add_node.html",headers:[{level:2,title:"Location",slug:"location"},{level:2,title:"Information Required",slug:"information-required"},{level:2,title:"Install the Daemon",slug:"install-the-daemon"},{level:2,title:"Configuring the Node",slug:"configuring-the-node"},{level:3,title:"Auto-Deploy",slug:"auto-deploy"}]},{title:"Building Panel Assets",frontmatter:{},regularPath:"/community/customization/panel.html",relativePath:"community/customization/panel.md",key:"v-ef34fffa",path:"/community/customization/panel.html",headers:[{level:2,title:"Install Dependencies",slug:"install-dependencies"},{level:2,title:"Build Panel Assets",slug:"build-panel-assets"}]},{title:"Building Wings",frontmatter:{},regularPath:"/community/customization/wings.html",relativePath:"community/customization/wings.md",key:"v-090070fa",path:"/community/customization/wings.html",headers:[{level:2,title:"Build Requirements",slug:"build-requirements"},{level:2,title:"Building",slug:"building"},{level:2,title:"Install the new binary",slug:"install-the-new-binary"},{level:2,title:"Troubleshooting",slug:"troubleshooting"}]},{title:"Minecraft",frontmatter:{},regularPath:"/community/games/minecraft.html",relativePath:"community/games/minecraft.md",key:"v-67c3f2ba",path:"/community/games/minecraft.html",headers:[{level:2,title:"Configuring a Server Network (BungeeCord, Waterfall, HexaCord, etc.)",slug:"configuring-a-server-network-bungeecord-waterfall-hexacord-etc"},{level:3,title:"Allocations in the Panel",slug:"allocations-in-the-panel"},{level:3,title:"proxy server settings",slug:"proxy-server-settings"},{level:3,title:"paper/spigot/bukkit settings",slug:"paper-spigot-bukkit-settings"},{level:3,title:"Firewalls",slug:"firewalls"}]},{title:"CentOS 7",frontmatter:{},regularPath:"/community/installation-guides/panel/centos7.html",relativePath:"community/installation-guides/panel/centos7.md",key:"v-0af75f63",path:"/community/installation-guides/panel/centos7.html",headers:[{level:2,title:"Install Requirements and Additional Utilities",slug:"install-requirements-and-additional-utilities"},{level:3,title:"SELinux tools",slug:"selinux-tools"},{level:3,title:"MariaDB",slug:"mariadb"},{level:3,title:"PHP 7.4",slug:"php-7-4"},{level:3,title:"Composer",slug:"composer"},{level:2,title:"Install Utility Packages",slug:"install-utility-packages"},{level:3,title:"Nginx",slug:"nginx"},{level:3,title:"Redis",slug:"redis"},{level:2,title:"Server Configuration",slug:"server-configuration"},{level:3,title:"Configuring MariaDB",slug:"configuring-mariadb"},{level:3,title:"Setup PHP",slug:"setup-php"},{level:3,title:"Nginx",slug:"nginx-2"},{level:3,title:"Redis Setup",slug:"redis-setup"},{level:2,title:"Installing the Panel",slug:"installing-the-panel"}]},{title:"CentOS 8",frontmatter:{},regularPath:"/community/installation-guides/panel/centos8.html",relativePath:"community/installation-guides/panel/centos8.md",key:"v-cc322cfa",path:"/community/installation-guides/panel/centos8.html",headers:[{level:2,title:"Install Requirements and Additional Utilities",slug:"install-requirements-and-additional-utilities"},{level:3,title:"SELinux tools",slug:"selinux-tools"},{level:3,title:"MariaDB",slug:"mariadb"},{level:3,title:"PHP 7.4",slug:"php-7-4"},{level:3,title:"Composer",slug:"composer"},{level:2,title:"Install Utility Packages",slug:"install-utility-packages"},{level:3,title:"Nginx",slug:"nginx"},{level:3,title:"Redis",slug:"redis"},{level:2,title:"Server Configuration",slug:"server-configuration"},{level:3,title:"Configuring MariaDB",slug:"configuring-mariadb"},{level:3,title:"Setup PHP",slug:"setup-php"},{level:3,title:"Nginx",slug:"nginx-2"},{level:3,title:"Redis Setup",slug:"redis-setup"},{level:2,title:"Installing the Panel",slug:"installing-the-panel"}]},{title:"Debian 10",frontmatter:{},regularPath:"/community/installation-guides/panel/debian10.html",relativePath:"community/installation-guides/panel/debian10.md",key:"v-4d5d0f9b",path:"/community/installation-guides/panel/debian10.html",headers:[{level:2,title:"Install Requirements",slug:"install-requirements"},{level:3,title:"MariaDB",slug:"mariadb"},{level:3,title:"PHP 7.4",slug:"php-7-4"},{level:3,title:"Nginx",slug:"nginx"},{level:3,title:"Redis",slug:"redis"},{level:3,title:"Additional Utilities",slug:"additional-utilities"},{level:2,title:"Server Configuration",slug:"server-configuration"},{level:3,title:"Configuring MariaDB",slug:"configuring-mariadb"},{level:3,title:"Setup PHP",slug:"setup-php"},{level:3,title:"Nginx",slug:"nginx-2"},{level:3,title:"Redis Setup",slug:"redis-setup"},{level:2,title:"Installing the Panel",slug:"installing-the-panel"}]},{title:"Debian 9",frontmatter:{},regularPath:"/community/installation-guides/panel/debian9.html",relativePath:"community/installation-guides/panel/debian9.md",key:"v-22a01883",path:"/community/installation-guides/panel/debian9.html",headers:[{level:2,title:"Install Requirements",slug:"install-requirements"},{level:3,title:"MariaDB",slug:"mariadb"},{level:3,title:"PHP 7.4",slug:"php-7-4"},{level:3,title:"Nginx",slug:"nginx"},{level:3,title:"Redis",slug:"redis"},{level:3,title:"Additional Utilities",slug:"additional-utilities"},{level:2,title:"Server Configuration",slug:"server-configuration"},{level:3,title:"Configuring MariaDB",slug:"configuring-mariadb"},{level:3,title:"Setup PHP",slug:"setup-php"},{level:3,title:"Nginx",slug:"nginx-2"},{level:3,title:"Redis Setup",slug:"redis-setup"},{level:2,title:"Installing the Panel",slug:"installing-the-panel"}]},{title:"Ubuntu 18.04",frontmatter:{},regularPath:"/community/installation-guides/panel/ubuntu1804.html",relativePath:"community/installation-guides/panel/ubuntu1804.md",key:"v-047b1c1f",path:"/community/installation-guides/panel/ubuntu1804.html",headers:[{level:2,title:"Install Requirements",slug:"install-requirements"},{level:3,title:"MariaDB",slug:"mariadb"},{level:3,title:"PHP 7.4",slug:"php-7-4"},{level:3,title:"Nginx",slug:"nginx"},{level:3,title:"Redis",slug:"redis"},{level:3,title:"Additional Utilities",slug:"additional-utilities"},{level:2,title:"Server Configuration",slug:"server-configuration"},{level:3,title:"Configuring MariaDB",slug:"configuring-mariadb"},{level:3,title:"Setup PHP",slug:"setup-php"},{level:3,title:"Nginx",slug:"nginx-2"},{level:3,title:"Redis Setup",slug:"redis-setup"},{level:2,title:"Installing the Panel",slug:"installing-the-panel"}]},{title:"Ubuntu 20.04",frontmatter:{},regularPath:"/community/installation-guides/panel/ubuntu2004.html",relativePath:"community/installation-guides/panel/ubuntu2004.md",key:"v-030337f1",path:"/community/installation-guides/panel/ubuntu2004.html",headers:[{level:2,title:"Install Requirements",slug:"install-requirements"},{level:3,title:"MariaDB",slug:"mariadb"},{level:3,title:"PHP 7.4",slug:"php-7-4"},{level:3,title:"Nginx",slug:"nginx"},{level:3,title:"Redis",slug:"redis"},{level:3,title:"Additional Utilities",slug:"additional-utilities"},{level:2,title:"Server Configuration",slug:"server-configuration"},{level:3,title:"Configuring MariaDB",slug:"configuring-mariadb"},{level:3,title:"Setup PHP",slug:"setup-php"},{level:3,title:"Nginx",slug:"nginx-2"},{level:3,title:"Redis Setup",slug:"redis-setup"},{level:2,title:"Installing the Panel",slug:"installing-the-panel"}]},{title:"CentOS 7",frontmatter:{},regularPath:"/community/installation-guides/wings/centos7.html",relativePath:"community/installation-guides/wings/centos7.md",key:"v-26037fe3",path:"/community/installation-guides/wings/centos7.html",headers:[{level:2,title:"Install Requirements",slug:"install-requirements"},{level:3,title:"Docker",slug:"docker"},{level:3,title:"FirewallD Changes",slug:"firewalld-changes"},{level:2,title:"Installing Wings",slug:"installing-wings"}]},{title:"CentOS 8",frontmatter:{},regularPath:"/community/installation-guides/wings/centos8.html",relativePath:"community/installation-guides/wings/centos8.md",key:"v-9619ebfa",path:"/community/installation-guides/wings/centos8.html",headers:[{level:2,title:"Install Requirements",slug:"install-requirements"},{level:3,title:"Docker",slug:"docker"},{level:3,title:"FirewallD Changes",slug:"firewalld-changes"},{level:2,title:"Installing Wings",slug:"installing-wings"}]},{title:"Debian 10",frontmatter:{},regularPath:"/community/installation-guides/wings/debian10.html",relativePath:"community/installation-guides/wings/debian10.md",key:"v-432db923",path:"/community/installation-guides/wings/debian10.html",headers:[{level:2,title:"Install Requirements",slug:"install-requirements"},{level:3,title:"Docker",slug:"docker"},{level:2,title:"Installing Wings",slug:"installing-wings"}]},{title:"Debian 9",frontmatter:{},regularPath:"/community/installation-guides/wings/debian9.html",relativePath:"community/installation-guides/wings/debian9.md",key:"v-3dac3903",path:"/community/installation-guides/wings/debian9.html",headers:[{level:2,title:"Install Requirements",slug:"install-requirements"},{level:3,title:"Docker",slug:"docker"},{level:2,title:"Installing Wings",slug:"installing-wings"}]},{title:"Ubuntu 18.04",frontmatter:{},regularPath:"/community/installation-guides/wings/ubuntu1804.html",relativePath:"community/installation-guides/wings/ubuntu1804.md",key:"v-e046bab2",path:"/community/installation-guides/wings/ubuntu1804.html",headers:[{level:2,title:"Install Requirements",slug:"install-requirements"},{level:3,title:"Docker",slug:"docker"},{level:2,title:"Installing Wings",slug:"installing-wings"}]},{title:"Ubuntu 20.04",frontmatter:{},regularPath:"/community/installation-guides/wings/ubuntu2004.html",relativePath:"community/installation-guides/wings/ubuntu2004.md",key:"v-e336830e",path:"/community/installation-guides/wings/ubuntu2004.html",headers:[{level:2,title:"Install Requirements",slug:"install-requirements"},{level:3,title:"Docker",slug:"docker"},{level:2,title:"Installing Wings",slug:"installing-wings"}]},{title:"Artisan CLI",frontmatter:{},regularPath:"/community/tutorials/artisan.html",relativePath:"community/tutorials/artisan.md",key:"v-7c7b3203",path:"/community/tutorials/artisan.html",headers:[{level:2,title:"User Management",slug:"user-management"},{level:3,title:"Create User",slug:"create-user"},{level:3,title:"Delete User",slug:"delete-user"},{level:3,title:"Disable 2FA",slug:"disable-2fa"},{level:2,title:"Server & Node Management",slug:"server-node-management"},{level:3,title:"Create Location",slug:"create-location"},{level:3,title:"Delete Location",slug:"delete-location"},{level:3,title:"Server Bulk Power",slug:"server-bulk-power"},{level:3,title:"Server Rebuild",slug:"server-rebuild"},{level:2,title:"Panel Management",slug:"panel-management"},{level:3,title:"View Panel Info",slug:"view-panel-info"},{level:2,title:"Theme Management",slug:"theme-management"},{level:3,title:"List All Themes",slug:"list-all-themes"},{level:3,title:"Install a Theme",slug:"install-a-theme"},{level:3,title:"Create a Theme",slug:"create-a-theme"},{level:3,title:"Remove a Theme",slug:"remove-a-theme"}]},{title:"Creating a theme for Pterodactyl",frontmatter:{},regularPath:"/community/tutorials/custom_theme_setup.html",relativePath:"community/tutorials/custom_theme_setup.md",key:"v-439f9686",path:"/community/tutorials/custom_theme_setup.html",headers:[{level:2,title:"Using CLI",slug:"using-cli"},{level:3,title:"Set your newly created theme as default",slug:"set-your-newly-created-theme-as-default"},{level:3,title:"Setting your theme name in .env",slug:"setting-your-theme-name-in-env"}]},{title:"Additional Configuration",frontmatter:{},regularPath:"/daemon/0.6/configuration.html",relativePath:"daemon/0.6/configuration.md",key:"v-07a77f72",path:"/daemon/0.6/configuration.html",headers:[{level:2,title:"Output Throttles",slug:"output-throttles"},{level:2,title:"Custom Network Interfaces",slug:"custom-network-interfaces"},{level:2,title:"Private Registries",slug:"private-registries"},{level:2,title:"Security Policies",slug:"security-policies"},{level:2,title:"Container Policy",slug:"container-policy"},{level:3,title:"Default Security Opts Array",slug:"default-security-opts-array"},{level:3,title:"Default Capabilities Drop Array",slug:"default-capabilities-drop-array"},{level:2,title:"Enabling Cloudflare",slug:"enabling-cloudflare"}]},{title:"Docker on Debian 8",frontmatter:{},regularPath:"/daemon/0.6/debian_8_docker.html",relativePath:"daemon/0.6/debian_8_docker.md",key:"v-00d38f11",path:"/daemon/0.6/debian_8_docker.html",headers:[{level:2,title:"Install Docker",slug:"install-docker"},{level:2,title:"Update GRUB Startup",slug:"update-grub-startup"},{level:2,title:"Add Backports Repo",slug:"add-backports-repo"},{level:2,title:"Update Software & Setup Docker",slug:"update-software-setup-docker"}]},{title:"Installation",frontmatter:{},regularPath:"/daemon/0.6/installing.html",relativePath:"daemon/0.6/installing.md",key:"v-d39223ba",path:"/daemon/0.6/installing.html",headers:[{level:2,title:"Supported Systems",slug:"supported-systems"},{level:2,title:"System Requirements",slug:"system-requirements"},{level:2,title:"Dependencies",slug:"dependencies"},{level:3,title:"Installing Docker",slug:"installing-docker"},{level:3,title:"Installing Nodejs",slug:"installing-nodejs"},{level:2,title:"Installing Daemon Software",slug:"installing-daemon-software"},{level:2,title:"Configure Daemon",slug:"configure-daemon"},{level:2,title:"Starting the Daemon",slug:"starting-the-daemon"},{level:3,title:"Daemonizing (using systemd)",slug:"daemonizing-using-systemd"}]},{title:"Kernel Modifications",frontmatter:{},regularPath:"/daemon/0.6/kernel_modifications.html",relativePath:"daemon/0.6/kernel_modifications.md",key:"v-a31c3dba",path:"/daemon/0.6/kernel_modifications.html",headers:[{level:2,title:"Update Kernel",slug:"update-kernel"},{level:2,title:"Confirm Kernel",slug:"confirm-kernel"},{level:2,title:"Set Default Boot",slug:"set-default-boot"},{level:2,title:"Boot from hard disk",slug:"boot-from-hard-disk"}]},{title:"Standalone SFTP Server",frontmatter:{},regularPath:"/daemon/0.6/standalone_sftp.html",relativePath:"daemon/0.6/standalone_sftp.md",key:"v-6f0eac21",path:"/daemon/0.6/standalone_sftp.html",headers:[{level:2,title:"Disable Daemon's Server",slug:"disable-daemon-s-server"},{level:2,title:"Run the Standalone Server",slug:"run-the-standalone-server"},{level:3,title:"Start the Server",slug:"start-the-server"},{level:2,title:"Daemonize Server",slug:"daemonize-server"},{level:3,title:"Customizing Startup",slug:"customizing-startup"}]},{title:"Upgrading 0.4.X to 0.5.X",frontmatter:{},regularPath:"/daemon/0.6/upgrade/0.4_to_0.5.html",relativePath:"daemon/0.6/upgrade/0.4_to_0.5.md",key:"v-481dea23",path:"/daemon/0.6/upgrade/0.4_to_0.5.html",headers:[{level:2,title:"Docker Adjustments",slug:"docker-adjustments"},{level:2,title:"Download Files",slug:"download-files"},{level:2,title:"SFTP Cleanup",slug:"sftp-cleanup"},{level:2,title:"File Migration",slug:"file-migration"},{level:3,title:"Rebuild Containers",slug:"rebuild-containers"}]},{title:"Upgrading 0.5 Series",frontmatter:{},regularPath:"/daemon/0.6/upgrade/0.5.html",relativePath:"daemon/0.6/upgrade/0.5.md",key:"v-15b388aa",path:"/daemon/0.6/upgrade/0.5.html",headers:[{level:2,title:"Download Newest Release",slug:"download-newest-release"},{level:2,title:"Update Components",slug:"update-components"}]},{title:"Upgrading 0.5.X to 0.6.X",frontmatter:{},regularPath:"/daemon/0.6/upgrade/0.5_to_0.6.html",relativePath:"daemon/0.6/upgrade/0.5_to_0.6.md",key:"v-8a6363ba",path:"/daemon/0.6/upgrade/0.5_to_0.6.html",headers:[{level:2,title:"Breaking Changes",slug:"breaking-changes"},{level:2,title:"Download Files",slug:"download-files"},{level:3,title:"Start the Daemon",slug:"start-the-daemon"},{level:2,title:"Rebuild Containers",slug:"rebuild-containers"}]},{title:"Upgrading 0.6 Series",frontmatter:{},regularPath:"/daemon/0.6/upgrade/0.6.html",relativePath:"daemon/0.6/upgrade/0.6.md",key:"v-7f0b5429",path:"/daemon/0.6/upgrade/0.6.html",headers:[{level:2,title:"Download Newest Release",slug:"download-newest-release"},{level:2,title:"Update Components",slug:"update-components"}]},{title:"Upgrading",frontmatter:{},regularPath:"/daemon/0.6/upgrading.html",relativePath:"daemon/0.6/upgrading.md",key:"v-29055241",path:"/daemon/0.6/upgrading.html",headers:[{level:2,title:"Version Specific Guides",slug:"version-specific-guides"}]},{title:"Using Mounts",frontmatter:{},regularPath:"/guides/mounts.html",relativePath:"guides/mounts.md",key:"v-c0e60bfa",path:"/guides/mounts.html",headers:[{level:2,title:"Wings Configuration",slug:"wings-configuration"},{level:2,title:"Panel Configuration",slug:"panel-configuration"},{level:3,title:"Creating a Mount",slug:"creating-a-mount"},{level:3,title:"Assigning a Mount to a Server",slug:"assigning-a-mount-to-a-server"}]},{title:"Publishing a Release",frontmatter:{},regularPath:"/ops/publish_release.html",relativePath:"ops/publish_release.md",key:"v-2339aa03",path:"/ops/publish_release.html",headers:[{level:2,title:"Pick a Codename",slug:"pick-a-codename"},{level:2,title:"Create the Release Branch",slug:"create-the-release-branch"},{level:2,title:"Tag a Release",slug:"tag-a-release"},{level:3,title:"Update the Release on GitHub",slug:"update-the-release-on-github"},{level:2,title:"Generate Signatures & Hashes",slug:"generate-signatures-hashes"},{level:3,title:"Create Checksum",slug:"create-checksum"},{level:3,title:"GPG Sign Release",slug:"gpg-sign-release"},{level:3,title:"Attach to Release",slug:"attach-to-release"},{level:2,title:"Update Documentation",slug:"update-documentation"},{level:2,title:"Update CDN",slug:"update-cdn"},{level:2,title:"Make Discord Announcement",slug:"make-discord-announcement"},{level:2,title:"Example Process",slug:"example-process"}]},{title:"Environment Configuration",frontmatter:{},regularPath:"/panel/0.7/configuration.html",relativePath:"panel/0.7/configuration.md",key:"v-019cb63a",path:"/panel/0.7/configuration.html",headers:[{level:2,title:"Reporting All Exceptions",slug:"reporting-all-exceptions"},{level:2,title:"Client Databases",slug:"client-databases"},{level:2,title:"Reverse Proxy Setup",slug:"reverse-proxy-setup"},{level:3,title:"NGINX Specific Configuration",slug:"nginx-specific-configuration"},{level:3,title:"Cloudflare Specific Configuration",slug:"cloudflare-specific-configuration"},{level:2,title:"Increasing the Editable File Size",slug:"increasing-the-editable-file-size"},{level:2,title:"Disable or Modify ReCaptcha",slug:"disable-or-modify-recaptcha"},{level:3,title:"Using Your Own Keys",slug:"using-your-own-keys"}]},{title:"Getting Started",frontmatter:{},regularPath:"/panel/0.7/getting_started.html",relativePath:"panel/0.7/getting_started.md",key:"v-7ffeb723",path:"/panel/0.7/getting_started.html",headers:[{level:2,title:"Picking a Server OS",slug:"picking-a-server-os"},{level:2,title:"Dependencies",slug:"dependencies"},{level:3,title:"Example Dependency Installation",slug:"example-dependency-installation"},{level:3,title:"Installing Composer",slug:"installing-composer"},{level:2,title:"Download Files",slug:"download-files"},{level:2,title:"Installation",slug:"installation"},{level:3,title:"Environment Configuration",slug:"environment-configuration"},{level:3,title:"Database Setup",slug:"database-setup"},{level:3,title:"Add The First User",slug:"add-the-first-user"},{level:3,title:"Set Permissions",slug:"set-permissions"},{level:2,title:"Queue Listeners",slug:"queue-listeners"},{level:3,title:"Crontab Configuration",slug:"crontab-configuration"},{level:3,title:"Create Queue Worker",slug:"create-queue-worker"}]},{title:"Troubleshooting",frontmatter:{},regularPath:"/panel/0.7/troubleshooting.html",relativePath:"panel/0.7/troubleshooting.md",key:"v-9478f2ba",path:"/panel/0.7/troubleshooting.html",headers:[{level:2,title:"Reading Error Logs",slug:"reading-error-logs"},{level:3,title:"Parsing the Error",slug:"parsing-the-error"},{level:3,title:"Understanding the Error",slug:"understanding-the-error"},{level:3,title:"Utilizing GREP",slug:"utilizing-grep"},{level:2,title:"Transfer Exceptions / XHR Poll Error",slug:"transfer-exceptions-xhr-poll-error"},{level:3,title:"Example Errors",slug:"example-errors"},{level:3,title:"Basic Debugging Steps",slug:"basic-debugging-steps"},{level:3,title:"More Advanced Debugging Steps",slug:"more-advanced-debugging-steps"},{level:2,title:"Invalid MAC Exception",slug:"invalid-mac-exception"},{level:2,title:"SELinux Issues",slug:"selinux-issues"},{level:3,title:"Redis Permissions Errors",slug:"redis-permissions-errors"},{level:3,title:"In case there is any weirdness with parts of the panel",slug:"in-case-there-is-any-weirdness-with-parts-of-the-panel"},{level:3,title:"Daemon Connection Errors",slug:"daemon-connection-errors"},{level:2,title:"FirewallD issues",slug:"firewalld-issues"},{level:2,title:"Database Errors",slug:"database-errors"},{level:3,title:"DatabaseController.php:142",slug:"databasecontroller-php-142"}]},{title:"Upgrading 0.6 to 0.7",frontmatter:{},regularPath:"/panel/0.7/upgrade/0.6_to_0.7.html",relativePath:"panel/0.7/upgrade/0.6_to_0.7.md",key:"v-4f03fe0f",path:"/panel/0.7/upgrade/0.6_to_0.7.html",headers:[{level:2,title:"Fetch Updated Files",slug:"fetch-updated-files"},{level:2,title:"Clear Compiled Assets",slug:"clear-compiled-assets"},{level:2,title:"Update Dependencies",slug:"update-dependencies"},{level:2,title:"Update Environment",slug:"update-environment"},{level:2,title:"Database Updates",slug:"database-updates"},{level:2,title:"Cleanup API Keys",slug:"cleanup-api-keys"},{level:2,title:"Set Permissions",slug:"set-permissions"}]},{title:"Upgrading 0.7 Series",frontmatter:{},regularPath:"/panel/0.7/upgrade/0.7.html",relativePath:"panel/0.7/upgrade/0.7.md",key:"v-5baa92ba",path:"/panel/0.7/upgrade/0.7.html",headers:[{level:2,title:"Fetch Updated Files",slug:"fetch-updated-files"},{level:2,title:"Update Dependencies",slug:"update-dependencies"},{level:2,title:"Clear Compiled Template Cache",slug:"clear-compiled-template-cache"},{level:2,title:"Database Updates",slug:"database-updates"},{level:2,title:"Set Permissions",slug:"set-permissions"}]},{title:"Upgrading",frontmatter:{},regularPath:"/panel/0.7/upgrading.html",relativePath:"panel/0.7/upgrading.md",key:"v-c249e07a",path:"/panel/0.7/upgrading.html",headers:[{level:2,title:"Maintenance Mode",slug:"maintenance-mode"},{level:2,title:"Restarting Queue Workers",slug:"restarting-queue-workers"},{level:2,title:"Version Specific Guides",slug:"version-specific-guides"}]},{title:"Webserver Configuration",frontmatter:{},regularPath:"/panel/0.7/webserver_configuration.html",relativePath:"panel/0.7/webserver_configuration.md",key:"v-27941b23",path:"/panel/0.7/webserver_configuration.html",headers:[{level:2,title:"NGINX",slug:"nginx"},{level:3,title:"NGINX With SSL",slug:"nginx-with-ssl"},{level:3,title:"NGINX Without SSL",slug:"nginx-without-ssl"},{level:3,title:"Enabling Configuration",slug:"enabling-configuration"},{level:2,title:"Apache",slug:"apache"},{level:3,title:"Apache With SSL",slug:"apache-with-ssl"},{level:3,title:"Apache Without SSL",slug:"apache-without-ssl"},{level:3,title:"Enabling Configuration",slug:"enabling-configuration-2"}]},{title:"Additional Configuration",frontmatter:{},regularPath:"/panel/1.0/additional_configuration.html",relativePath:"panel/1.0/additional_configuration.md",key:"v-6f4baca5",path:"/panel/1.0/additional_configuration.html",headers:[{level:2,title:"Backups",slug:"backups"},{level:3,title:"Using S3 Backups",slug:"using-s3-backups"},{level:2,title:"reCAPTCHA",slug:"recaptcha"},{level:3,title:"Configuring reCAPTCHA",slug:"configuring-recaptcha"},{level:3,title:"Disabling reCAPTCHA",slug:"disabling-recaptcha"}]},{title:"Getting Started",frontmatter:{},regularPath:"/panel/1.0/getting_started.html",relativePath:"panel/1.0/getting_started.md",key:"v-fa75e63a",path:"/panel/1.0/getting_started.html",headers:[{level:2,title:"Picking a Server OS",slug:"picking-a-server-os"},{level:2,title:"Dependencies",slug:"dependencies"},{level:3,title:"Example Dependency Installation",slug:"example-dependency-installation"},{level:3,title:"Installing Composer",slug:"installing-composer"},{level:2,title:"Download Files",slug:"download-files"},{level:2,title:"Installation",slug:"installation"},{level:3,title:"Environment Configuration",slug:"environment-configuration"},{level:3,title:"Database Setup",slug:"database-setup"},{level:3,title:"Add The First User",slug:"add-the-first-user"},{level:3,title:"Set Permissions",slug:"set-permissions"},{level:2,title:"Queue Listeners",slug:"queue-listeners"},{level:3,title:"Crontab Configuration",slug:"crontab-configuration"},{level:3,title:"Create Queue Worker",slug:"create-queue-worker"}]},{title:"Upgrading 0.7 Series to 1.0 Series",frontmatter:{},regularPath:"/panel/1.0/upgrade/0.7_to_1.0.html",relativePath:"panel/1.0/upgrade/0.7_to_1.0.md",key:"v-f0c998de",path:"/panel/1.0/upgrade/0.7_to_1.0.html",headers:[{level:2,title:"Enter Maintenance Mode",slug:"enter-maintenance-mode"},{level:2,title:"Update Dependencies",slug:"update-dependencies"},{level:2,title:"Fetch Updated Files",slug:"fetch-updated-files"},{level:2,title:"Update Dependencies",slug:"update-dependencies-2"},{level:2,title:"Clear Compiled Template Cache",slug:"clear-compiled-template-cache"},{level:2,title:"Database Updates",slug:"database-updates"},{level:2,title:"Set Permissions",slug:"set-permissions"},{level:2,title:"Restarting Queue Workers",slug:"restarting-queue-workers"},{level:2,title:"Exit Maintenance Mode",slug:"exit-maintenance-mode"},{level:2,title:"Switch to Wings",slug:"switch-to-wings"}]},{title:"Upgrading 1.0 Series",frontmatter:{},regularPath:"/panel/1.0/upgrade/1.0.html",relativePath:"panel/1.0/upgrade/1.0.md",key:"v-11e0c7ba",path:"/panel/1.0/upgrade/1.0.html",headers:[{level:2,title:"Fetch Updated Files",slug:"fetch-updated-files"},{level:2,title:"Update Dependencies",slug:"update-dependencies"},{level:2,title:"Clear Compiled Template Cache",slug:"clear-compiled-template-cache"},{level:2,title:"Database Updates",slug:"database-updates"},{level:2,title:"Set Permissions",slug:"set-permissions"},{level:2,title:"Restarting Queue Workers",slug:"restarting-queue-workers"}]},{title:"Upgrading",frontmatter:{},regularPath:"/panel/1.0/upgrading.html",relativePath:"panel/1.0/upgrading.md",key:"v-46094903",path:"/panel/1.0/upgrading.html",headers:[{level:2,title:"Maintenance Mode",slug:"maintenance-mode"},{level:2,title:"Restarting Queue Workers",slug:"restarting-queue-workers"},{level:2,title:"Version Specific Guides",slug:"version-specific-guides"}]},{title:"Webserver Configuration",frontmatter:{},regularPath:"/panel/1.0/webserver_configuration.html",relativePath:"panel/1.0/webserver_configuration.md",key:"v-cbda523a",path:"/panel/1.0/webserver_configuration.html",headers:[{level:2,title:"NGINX",slug:"nginx"},{level:3,title:"NGINX With SSL",slug:"nginx-with-ssl"},{level:3,title:"NGINX Without SSL",slug:"nginx-without-ssl"},{level:3,title:"Enabling Configuration",slug:"enabling-configuration"},{level:2,title:"Apache",slug:"apache"},{level:3,title:"Apache With SSL",slug:"apache-with-ssl"},{level:3,title:"Apache Without SSL",slug:"apache-without-ssl"},{level:3,title:"Enabling Configuration",slug:"enabling-configuration-2"}]},{title:"About",frontmatter:{},regularPath:"/project/about.html",relativePath:"project/about.md",key:"v-a75af93a",path:"/project/about.html",headers:[{level:2,title:"Core Project Team",slug:"core-project-team"},{level:2,title:"Community Team",slug:"community-team"},{level:2,title:"License",slug:"license"},{level:2,title:"GPG Signature",slug:"gpg-signature"}]},{title:"Community Standards",frontmatter:{},regularPath:"/project/community.html",relativePath:"project/community.md",key:"v-22ba6d3a",path:"/project/community.html",headers:[{level:2,title:"Community Guidelines",slug:"community-guidelines"},{level:3,title:"Be Mature",slug:"be-mature"},{level:3,title:"Limit the Drama",slug:"limit-the-drama"},{level:3,title:"Be Patient",slug:"be-patient"},{level:3,title:"No Commercial Services",slug:"no-commercial-services"},{level:3,title:"No Mention or Ping Spam",slug:"no-mention-or-ping-spam"}]},{title:"Introduction",frontmatter:{},regularPath:"/project/introduction.html",relativePath:"project/introduction.md",key:"v-d6319362",path:"/project/introduction.html",headers:[{level:2,title:"Supported Games",slug:"supported-games"},{level:2,title:"Responsible Disclosure",slug:"responsible-disclosure"}]},{title:"Terminology",frontmatter:{},regularPath:"/project/terms.html",relativePath:"project/terms.md",key:"v-7b99cfba",path:"/project/terms.html",headers:[{level:2,title:"Example Setup Diagram",slug:"example-setup-diagram"}]},{title:"Creating SSL Certificates",frontmatter:{},regularPath:"/tutorials/creating_ssl_certificates.html",relativePath:"tutorials/creating_ssl_certificates.md",key:"v-6ec4d123",path:"/tutorials/creating_ssl_certificates.html",headers:[{level:2,title:"Method 1: Using Certbot",slug:"method-1-using-certbot"},{level:3,title:"Creating a Certificate",slug:"creating-a-certificate"},{level:3,title:"Auto Renewal",slug:"auto-renewal"},{level:3,title:"Troubleshooting",slug:"troubleshooting"},{level:2,title:"Method 2: Using acme.sh (Cloudflare)",slug:"method-2-using-acme-sh-cloudflare"},{level:3,title:"Obtaining CloudFlare API Key",slug:"obtaining-cloudflare-api-key"},{level:3,title:"Creating a Certificate",slug:"creating-a-certificate-2"},{level:3,title:"Auto Renewal",slug:"auto-renewal-2"}]},{title:"Setting up MySQL",frontmatter:{},regularPath:"/tutorials/mysql_setup.html",relativePath:"tutorials/mysql_setup.md",key:"v-5c5d50fa",path:"/tutorials/mysql_setup.html",headers:[{level:2,title:"Creating a database for Pterodactyl",slug:"creating-a-database-for-pterodactyl"},{level:3,title:"Logging In",slug:"logging-in"},{level:3,title:"Creating a user",slug:"creating-a-user"},{level:3,title:"Create a database",slug:"create-a-database"},{level:3,title:"Assigning permissions",slug:"assigning-permissions"},{level:2,title:"Creating a Database Host for Nodes",slug:"creating-a-database-host-for-nodes"},{level:3,title:"Creating a user",slug:"creating-a-user-2"},{level:3,title:"Assigning permissions",slug:"assigning-permissions-2"},{level:3,title:"Allowing external database access",slug:"allowing-external-database-access"}]},{title:"Additional Configuration",frontmatter:{},regularPath:"/wings/1.0/configuration.html",relativePath:"wings/1.0/configuration.md",key:"v-6cd19ba3",path:"/wings/1.0/configuration.html",headers:[{level:2,title:"Private Registries",slug:"private-registries"},{level:3,title:"Available Keys",slug:"available-keys"},{level:3,title:"Usage Example",slug:"usage-example"}]},{title:"Installing Wings",frontmatter:{},regularPath:"/wings/1.0/installing.html",relativePath:"wings/1.0/installing.md",key:"v-55eb8eca",path:"/wings/1.0/installing.html",headers:[{level:2,title:"Supported Systems",slug:"supported-systems"},{level:2,title:"System Requirements",slug:"system-requirements"},{level:2,title:"Dependencies",slug:"dependencies"},{level:3,title:"Installing Docker",slug:"installing-docker"},{level:2,title:"Installing Wings",slug:"installing-wings-2"},{level:2,title:"Configure",slug:"configure"},{level:3,title:"Starting Wings",slug:"starting-wings"},{level:3,title:"Daemonizing (using systemd)",slug:"daemonizing-using-systemd"}]},{title:"Migrating to Wings",frontmatter:{},regularPath:"/wings/1.0/migrating.html",relativePath:"wings/1.0/migrating.md",key:"v-1ec46263",path:"/wings/1.0/migrating.html",headers:[{level:2,title:"Install Wings",slug:"install-wings"},{level:2,title:"Copy New Configuration File",slug:"copy-new-configuration-file"},{level:2,title:"Remove Old Daemon",slug:"remove-old-daemon"},{level:3,title:"Remove Standalone SFTP",slug:"remove-standalone-sftp"},{level:2,title:"Daemonize Wings",slug:"daemonize-wings"}]},{title:"Upgrading Wings",frontmatter:{},regularPath:"/wings/1.0/upgrading.html",relativePath:"wings/1.0/upgrading.md",key:"v-9213d4fa",path:"/wings/1.0/upgrading.html",headers:[{level:2,title:"Download Updated Binary",slug:"download-updated-binary"},{level:2,title:"Restart Process",slug:"restart-process"}]}],themeConfig:{repo:"pterodactyl/panel",docsRepo:"pterodactyl/documentation",repoLabel:"Contribute",editLinkText:"Help us improve this page.",editLinks:!0,logo:"/pterodactyl-flat.png",nav:[{text:"Documentation",link:"/project/introduction.md"},{text:"Community Guides",link:"/community/about.md"},{text:"Get Help",link:"https://pterodactyl.io/discord"},{text:"API",link:"https://dashflo.net/docs/api/pterodactyl/v1/"}],sidebar:{"/community/":[{title:"Community Guides",collapsable:!1,children:["/community/about.md"]},{title:"Panel Installation",collapsable:!1,children:["/community/installation-guides/panel/centos7.md","/community/installation-guides/panel/centos8.md","/community/installation-guides/panel/debian9.md","/community/installation-guides/panel/debian10.md","/community/installation-guides/panel/ubuntu1804.md","/community/installation-guides/panel/ubuntu2004.md"]},{title:"Wings Installation",collapsable:!1,children:["/community/installation-guides/wings/centos7.md","/community/installation-guides/wings/centos8.md","/community/installation-guides/wings/debian9.md","/community/installation-guides/wings/debian10.md","/community/installation-guides/wings/ubuntu1804.md","/community/installation-guides/wings/ubuntu2004.md"]},{title:"Creating Eggs",collapsable:!1,children:["/community/config/eggs/creating_a_custom_egg.md","/community/config/eggs/creating_a_custom_image.md"]},{title:"Game Configuration",collapsable:!1,children:["/community/games/minecraft.md"]},{title:"Tutorials",collapsable:!1,children:["/community/config/nodes/add_node.md","/community/tutorials/custom_theme_setup.md","/community/tutorials/artisan.md"]},{title:"Customization",collapsable:!1,children:["/community/customization/panel.md","/community/customization/wings.md"]}],"/":[{title:"Project Information",collapsable:!1,children:["/project/introduction.md","/project/about.md","/project/terms.md","/project/community.md"]},{title:"Panel",collapsable:!1,path:"/panel/",currentVersion:"1.0",versions:[{name:"0.7",status:"legacy",children:["/getting_started","/webserver_configuration","/upgrading","/configuration","/troubleshooting"]},{name:"1.0",status:"stable",children:["/getting_started","/webserver_configuration","/upgrading","/additional_configuration"]}]},{title:"Wings",collapsable:!1,path:"/wings/",currentVersion:"1.0",versions:[{name:"1.0",status:"stable",children:["/installing","/upgrading","/migrating","/configuration"]}]},{title:"Daemon",collapsable:!1,path:"/daemon/",versions:[{name:"0.6",status:"legacy",children:["/installing","/upgrading","/configuration","/kernel_modifications","/debian_8_docker","/standalone_sftp"]}]},{title:"Tutorials",collapsable:!1,children:["/tutorials/mysql_setup.md","/tutorials/creating_ssl_certificates.md"]},{title:"Guides",collapsable:!1,children:["/guides/mounts.md"]},{title:"Development & Ops",collapsable:!0,children:["/ops/publish_release.md"]}]}}},ke=(n(297),n(299),n(300),n(179),n(76),n(107));function Oe(){for(var t="/",e=new RegExp(t+"{1,}","g"),n=arguments.length,r=new Array(n),i=0;i0}var Ue={props:{pageKey:String,slotKey:{type:String,default:"default"}},render:function(t){var e=this.pageKey||this.$parent.$page.key;return fe("pageKey",e),o.a.component(e)||o.a.component(e,ae(e)),o.a.component(e)?t(e):t("")}},Fe={functional:!0,props:{slotKey:String,required:!0},render:function(t,e){var n=e.props,r=e.slots;return t("div",{class:["content__".concat(n.slotKey)]},r()[n.slotKey])}},ze=(n(306),Object(_e.a)({},(function(t,e){var n=e._c;return n("svg",{staticClass:"icon outbound",attrs:{xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true",x:"0px",y:"0px",viewBox:"0 0 100 100",width:"15",height:"15"}},[n("path",{attrs:{fill:"currentColor",d:"M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"}}),e._v(" "),n("polygon",{attrs:{fill:"currentColor",points:"45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"}})])}),[],!0,null,null,null).exports);function Be(){return(Be=i(regeneratorRuntime.mark((function t(e){var n,r,i,a;return regeneratorRuntime.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return n="undefined"!=typeof window&&window.__VUEPRESS_ROUTER_BASE__?window.__VUEPRESS_ROUTER_BASE__:Se.routerBase||Se.base,Me(r=new Bt({base:n,mode:"history",fallback:!1,routes:xe,scrollBehavior:function(t,e,n){return n||(t.hash?!o.a.$vuepress.$get("disableScrollBehavior")&&{selector:t.hash}:{x:0,y:0})}})),i={},t.prev=4,t.next=7,Promise.all(Ce.filter((function(t){return"function"==typeof t})).map((function(t){return t({Vue:o.a,options:i,router:r,siteData:Se,isServer:e})})));case 7:t.next=12;break;case 9:t.prev=9,t.t0=t.catch(4),console.error(t.t0);case 12:return a=new o.a(Object.assign(i,{router:r,render:function(t){return t("div",{attrs:{id:"app"}},[t("RouterView",{ref:"layout"}),t("div",{class:"global-ui"},je.map((function(e){return t(e)})))])}})),t.abrupt("return",{app:a,router:r});case 14:case"end":return t.stop()}}),t,null,[[4,9]])})))).apply(this,arguments)}o.a.config.productionTip=!1,o.a.use(Bt),o.a.use(De),o.a.mixin(function(t,e){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:o.a;qt(e),n.$vuepress.$set("siteData",e);var r=t(n.$vuepress.$get("siteData")),i=new r,a=Object.getOwnPropertyDescriptors(Object.getPrototypeOf(i)),u={};return Object.keys(a).reduce((function(t,e){return e.startsWith("$")&&(t[e]=a[e].get),t}),u),{computed:u}}((function(t){return function(){function e(){Pe(this,e)}return Ae(e,[{key:"setPage",value:function(t){this.__page=t}},{key:"$site",get:function(){return t}},{key:"$themeConfig",get:function(){return this.$site.themeConfig}},{key:"$frontmatter",get:function(){return this.$page.frontmatter}},{key:"$localeConfig",get:function(){var t,e,n=this.$site.locales,r=void 0===n?{}:n;for(var i in r)"/"===i?e=r[i]:0===this.$page.path.indexOf(i)&&(t=r[i]);return t||e||{}}},{key:"$siteTitle",get:function(){return this.$localeConfig.title||this.$site.title||""}},{key:"$title",get:function(){var t=this.$page,e=this.$page.frontmatter.metaTitle;if("string"==typeof e)return e;var n=this.$siteTitle,r=t.frontmatter.home?null:t.frontmatter.title||t.title;return n?r?r+" | "+n:n:r||"VuePress"}},{key:"$description",get:function(){var t=function(t){if(t){var e=t.filter((function(t){return"description"===t.name}))[0];if(e)return e.content}}(this.$page.frontmatter.meta);return t||(this.$page.frontmatter.description||this.$localeConfig.description||this.$site.description||"")}},{key:"$lang",get:function(){return this.$page.frontmatter.lang||this.$localeConfig.lang||"en-US"}},{key:"$localePath",get:function(){return this.$localeConfig.path||"/"}},{key:"$themeLocaleConfig",get:function(){return(this.$site.themeConfig.locales||{})[this.$localePath]||{}}},{key:"$page",get:function(){return this.__page?this.__page:function(t,e){for(var n=0;n-1}function u(t,e){return e instanceof t||e&&(e.name===t.name||e._name===t._name)}function l(t,e){for(var n in e)t[n]=e[n];return t}var s={name:"RouterView",functional:!0,props:{name:{type:String,default:"default"}},render:function(t,e){var n=e.props,r=e.children,i=e.parent,o=e.data;o.routerView=!0;for(var a=i.$createElement,u=n.name,s=i.$route,f=i._routerViewCache||(i._routerViewCache={}),p=0,d=!1;i&&i._routerRoot!==i;){var h=i.$vnode?i.$vnode.data:{};h.routerView&&p++,h.keepAlive&&i._directInactive&&i._inactive&&(d=!0),i=i.$parent}if(o.routerViewDepth=p,d){var v=f[u],g=v&&v.component;return g?(v.configProps&&c(g,o,v.route,v.configProps),a(g,o,r)):a()}var m=s.matched[p],y=m&&m.components[u];if(!m||!y)return f[u]=null,a();f[u]={component:y},o.registerRouteInstance=function(t,e){var n=m.instances[u];(e&&n!==t||!e&&n===t)&&(m.instances[u]=e)},(o.hook||(o.hook={})).prepatch=function(t,e){m.instances[u]=e.componentInstance},o.hook.init=function(t){t.data.keepAlive&&t.componentInstance&&t.componentInstance!==m.instances[u]&&(m.instances[u]=t.componentInstance)};var b=m.props&&m.props[u];return b&&(l(f[u],{route:s,configProps:b}),c(y,o,s,b)),a(y,o,r)}};function c(t,e,n,r){var i=e.props=function(t,e){switch(typeof e){case"undefined":return;case"object":return e;case"function":return e(t);case"boolean":return e?t.params:void 0;default:0}}(n,r);if(i){i=e.props=l({},i);var o=e.attrs=e.attrs||{};for(var a in i)t.props&&a in t.props||(o[a]=i[a],delete i[a])}}var f=/[!'()*]/g,p=function(t){return"%"+t.charCodeAt(0).toString(16)},d=/%2C/g,h=function(t){return encodeURIComponent(t).replace(f,p).replace(d,",")},v=decodeURIComponent;function g(t){var e={};return(t=t.trim().replace(/^(\?|#|&)/,""))?(t.split("&").forEach((function(t){var n=t.replace(/\+/g," ").split("="),r=v(n.shift()),i=n.length>0?v(n.join("=")):null;void 0===e[r]?e[r]=i:Array.isArray(e[r])?e[r].push(i):e[r]=[e[r],i]})),e):e}function m(t){var e=t?Object.keys(t).map((function(e){var n=t[e];if(void 0===n)return"";if(null===n)return h(e);if(Array.isArray(n)){var r=[];return n.forEach((function(t){void 0!==t&&(null===t?r.push(h(e)):r.push(h(e)+"="+h(t)))})),r.join("&")}return h(e)+"="+h(n)})).filter((function(t){return t.length>0})).join("&"):null;return e?"?"+e:""}var y=/\/?$/;function b(t,e,n,r){var i=r&&r.options.stringifyQuery,o=e.query||{};try{o=_(o)}catch(t){}var a={name:e.name||t&&t.name,meta:t&&t.meta||{},path:e.path||"/",hash:e.hash||"",query:o,params:e.params||{},fullPath:S(e,i),matched:t?x(t):[]};return n&&(a.redirectedFrom=S(n,i)),Object.freeze(a)}function _(t){if(Array.isArray(t))return t.map(_);if(t&&"object"==typeof t){var e={};for(var n in t)e[n]=_(t[n]);return e}return t}var w=b(null,{path:"/"});function x(t){for(var e=[];t;)e.unshift(t),t=t.parent;return e}function S(t,e){var n=t.path,r=t.query;void 0===r&&(r={});var i=t.hash;return void 0===i&&(i=""),(n||"/")+(e||m)(r)+i}function k(t,e){return e===w?t===e:!!e&&(t.path&&e.path?t.path.replace(y,"")===e.path.replace(y,"")&&t.hash===e.hash&&O(t.query,e.query):!(!t.name||!e.name)&&(t.name===e.name&&t.hash===e.hash&&O(t.query,e.query)&&O(t.params,e.params)))}function O(t,e){if(void 0===t&&(t={}),void 0===e&&(e={}),!t||!e)return t===e;var n=Object.keys(t),r=Object.keys(e);return n.length===r.length&&n.every((function(n){var r=t[n],i=e[n];return"object"==typeof r&&"object"==typeof i?O(r,i):String(r)===String(i)}))}function C(t,e,n){var r=t.charAt(0);if("/"===r)return t;if("?"===r||"#"===r)return e+t;var i=e.split("/");n&&i[i.length-1]||i.pop();for(var o=t.replace(/^\//,"").split("/"),a=0;a=0&&(e=t.slice(r),t=t.slice(0,r));var i=t.indexOf("?");return i>=0&&(n=t.slice(i+1),t=t.slice(0,i)),{path:t,query:n,hash:e}}(i.path||""),c=e&&e.path||"/",f=s.path?C(s.path,c,n||i.append):c,p=function(t,e,n){void 0===e&&(e={});var r,i=n||g;try{r=i(t||"")}catch(t){r={}}for(var o in e)r[o]=e[o];return r}(s.query,i.query,r&&r.options.parseQuery),d=i.hash||s.hash;return d&&"#"!==d.charAt(0)&&(d="#"+d),{_normalized:!0,path:f,query:p,hash:d}}var G,K=function(){},X={name:"RouterLink",props:{to:{type:[String,Object],required:!0},tag:{type:String,default:"a"},exact:Boolean,append:Boolean,replace:Boolean,activeClass:String,exactActiveClass:String,event:{type:[String,Array],default:"click"}},render:function(t){var e=this,n=this.$router,r=this.$route,i=n.resolve(this.to,r,this.append),o=i.location,a=i.route,u=i.href,s={},c=n.options.linkActiveClass,f=n.options.linkExactActiveClass,p=null==c?"router-link-active":c,d=null==f?"router-link-exact-active":f,h=null==this.activeClass?p:this.activeClass,v=null==this.exactActiveClass?d:this.exactActiveClass,g=a.redirectedFrom?b(null,H(a.redirectedFrom),null,n):a;s[v]=k(r,g),s[h]=this.exact?s[v]:function(t,e){return 0===t.path.replace(y,"/").indexOf(e.path.replace(y,"/"))&&(!e.hash||t.hash===e.hash)&&function(t,e){for(var n in e)if(!(n in t))return!1;return!0}(t.query,e.query)}(r,g);var m=function(t){Q(t)&&(e.replace?n.replace(o,K):n.push(o,K))},_={click:Q};Array.isArray(this.event)?this.event.forEach((function(t){_[t]=m})):_[this.event]=m;var w={class:s},x=!this.$scopedSlots.$hasNormal&&this.$scopedSlots.default&&this.$scopedSlots.default({href:u,route:a,navigate:m,isActive:s[h],isExactActive:s[v]});if(x){if(1===x.length)return x[0];if(x.length>1||!x.length)return 0===x.length?t():t("span",{},x)}if("a"===this.tag)w.on=_,w.attrs={href:u};else{var S=function t(e){var n;if(e)for(var r=0;r-1&&(u.params[p]=n.params[p]);return u.path=W(c.path,u.params),l(c,u,a)}if(u.path){u.params={};for(var d=0;d=t.length?n():t[i]?e(t[i],(function(){r(i+1)})):r(i+1)};r(0)}function wt(t){return function(e,n,r){var i=!1,o=0,u=null;xt(t,(function(t,e,n,l){if("function"==typeof t&&void 0===t.cid){i=!0,o++;var s,c=Ot((function(e){var i;((i=e).__esModule||kt&&"Module"===i[Symbol.toStringTag])&&(e=e.default),t.resolved="function"==typeof e?e:G.extend(e),n.components[l]=e,--o<=0&&r()})),f=Ot((function(t){var e="Failed to resolve async component "+l+": "+t;u||(u=a(t)?t:new Error(e),r(u))}));try{s=t(c,f)}catch(t){f(t)}if(s)if("function"==typeof s.then)s.then(c,f);else{var p=s.component;p&&"function"==typeof p.then&&p.then(c,f)}}})),i||r()}}function xt(t,e){return St(t.map((function(t){return Object.keys(t.components).map((function(n){return e(t.components[n],t.instances[n],t,n)}))})))}function St(t){return Array.prototype.concat.apply([],t)}var kt="function"==typeof Symbol&&"symbol"==typeof Symbol.toStringTag;function Ot(t){var e=!1;return function(){for(var n=[],r=arguments.length;r--;)n[r]=arguments[r];if(!e)return e=!0,t.apply(this,n)}}var Ct=function(t){function e(e){t.call(this),this.name=this._name="NavigationDuplicated",this.message='Navigating to current location ("'+e.fullPath+'") is not allowed',Object.defineProperty(this,"stack",{value:(new t).stack,writable:!0,configurable:!0})}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e}(Error);Ct._name="NavigationDuplicated";var jt=function(t,e){this.router=t,this.base=function(t){if(!t)if(Y){var e=document.querySelector("base");t=(t=e&&e.getAttribute("href")||"/").replace(/^https?:\/\/[^\/]+/,"")}else t="/";"/"!==t.charAt(0)&&(t="/"+t);return t.replace(/\/$/,"")}(e),this.current=w,this.pending=null,this.ready=!1,this.readyCbs=[],this.readyErrorCbs=[],this.errorCbs=[]};function Pt(t,e,n,r){var i=xt(t,(function(t,r,i,o){var a=function(t,e){"function"!=typeof t&&(t=G.extend(t));return t.options[e]}(t,e);if(a)return Array.isArray(a)?a.map((function(t){return n(t,r,i,o)})):n(a,r,i,o)}));return St(r?i.reverse():i)}function Et(t,e){if(e)return function(){return t.apply(e,arguments)}}jt.prototype.listen=function(t){this.cb=t},jt.prototype.onReady=function(t,e){this.ready?t():(this.readyCbs.push(t),e&&this.readyErrorCbs.push(e))},jt.prototype.onError=function(t){this.errorCbs.push(t)},jt.prototype.transitionTo=function(t,e,n){var r=this,i=this.router.match(t,this.current);this.confirmTransition(i,(function(){r.updateRoute(i),e&&e(i),r.ensureURL(),r.ready||(r.ready=!0,r.readyCbs.forEach((function(t){t(i)})))}),(function(t){n&&n(t),t&&!r.ready&&(r.ready=!0,r.readyErrorCbs.forEach((function(e){e(t)})))}))},jt.prototype.confirmTransition=function(t,e,n){var r=this,i=this.current,o=function(t){!u(Ct,t)&&a(t)&&(r.errorCbs.length?r.errorCbs.forEach((function(e){e(t)})):console.error(t)),n&&n(t)};if(k(t,i)&&t.matched.length===i.matched.length)return this.ensureURL(),o(new Ct(t));var l=function(t,e){var n,r=Math.max(t.length,e.length);for(n=0;n-1?decodeURI(t.slice(0,r))+t.slice(r):decodeURI(t)}else t=decodeURI(t.slice(0,n))+t.slice(n);return t}function It(t){var e=window.location.href,n=e.indexOf("#");return(n>=0?e.slice(0,n):e)+"#"+t}function Dt(t){mt?yt(It(t)):window.location.hash=t}function Mt(t){mt?bt(It(t)):window.location.replace(It(t))}var Nt=function(t){function e(e,n){t.call(this,e,n),this.stack=[],this.index=-1}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.push=function(t,e,n){var r=this;this.transitionTo(t,(function(t){r.stack=r.stack.slice(0,r.index+1).concat(t),r.index++,e&&e(t)}),n)},e.prototype.replace=function(t,e,n){var r=this;this.transitionTo(t,(function(t){r.stack=r.stack.slice(0,r.index).concat(t),e&&e(t)}),n)},e.prototype.go=function(t){var e=this,n=this.index+t;if(!(n<0||n>=this.stack.length)){var r=this.stack[n];this.confirmTransition(r,(function(){e.index=n,e.updateRoute(r)}),(function(t){u(Ct,t)&&(e.index=n)}))}},e.prototype.getCurrentLocation=function(){var t=this.stack[this.stack.length-1];return t?t.fullPath:"/"},e.prototype.ensureURL=function(){},e}(jt),Ut=function(t){void 0===t&&(t={}),this.app=null,this.apps=[],this.options=t,this.beforeHooks=[],this.resolveHooks=[],this.afterHooks=[],this.matcher=tt(t.routes||[],this);var e=t.mode||"hash";switch(this.fallback="history"===e&&!mt&&!1!==t.fallback,this.fallback&&(e="hash"),Y||(e="abstract"),this.mode=e,e){case"history":this.history=new At(this,t.base);break;case"hash":this.history=new Lt(this,t.base,this.fallback);break;case"abstract":this.history=new Nt(this,t.base);break;default:0}},Ft={currentRoute:{configurable:!0}};function zt(t,e){return t.push(e),function(){var n=t.indexOf(e);n>-1&&t.splice(n,1)}}Ut.prototype.match=function(t,e,n){return this.matcher.match(t,e,n)},Ft.currentRoute.get=function(){return this.history&&this.history.current},Ut.prototype.init=function(t){var e=this;if(this.apps.push(t),t.$once("hook:destroyed",(function(){var n=e.apps.indexOf(t);n>-1&&e.apps.splice(n,1),e.app===t&&(e.app=e.apps[0]||null)})),!this.app){this.app=t;var n=this.history;if(n instanceof At)n.transitionTo(n.getCurrentLocation());else if(n instanceof Lt){var r=function(){n.setupListeners()};n.transitionTo(n.getCurrentLocation(),r,r)}n.listen((function(t){e.apps.forEach((function(e){e._route=t}))}))}},Ut.prototype.beforeEach=function(t){return zt(this.beforeHooks,t)},Ut.prototype.beforeResolve=function(t){return zt(this.resolveHooks,t)},Ut.prototype.afterEach=function(t){return zt(this.afterHooks,t)},Ut.prototype.onReady=function(t,e){this.history.onReady(t,e)},Ut.prototype.onError=function(t){this.history.onError(t)},Ut.prototype.push=function(t,e,n){var r=this;if(!e&&!n&&"undefined"!=typeof Promise)return new Promise((function(e,n){r.history.push(t,e,n)}));this.history.push(t,e,n)},Ut.prototype.replace=function(t,e,n){var r=this;if(!e&&!n&&"undefined"!=typeof Promise)return new Promise((function(e,n){r.history.replace(t,e,n)}));this.history.replace(t,e,n)},Ut.prototype.go=function(t){this.history.go(t)},Ut.prototype.back=function(){this.go(-1)},Ut.prototype.forward=function(){this.go(1)},Ut.prototype.getMatchedComponents=function(t){var e=t?t.matched?t:this.resolve(t).route:this.currentRoute;return e?[].concat.apply([],e.matched.map((function(t){return Object.keys(t.components).map((function(e){return t.components[e]}))}))):[]},Ut.prototype.resolve=function(t,e,n){var r=H(t,e=e||this.history.current,n,this),i=this.match(r,e),o=i.redirectedFrom||i.fullPath;return{location:r,route:i,href:function(t,e,n){var r="hash"===n?"#"+e:e;return t?j(t+"/"+r):r}(this.history.base,o,this.mode),normalizedTo:r,resolved:i}},Ut.prototype.addRoutes=function(t){this.matcher.addRoutes(t),this.history.current!==w&&this.history.transitionTo(this.history.getCurrentLocation())},Object.defineProperties(Ut.prototype,Ft),Ut.install=function t(e){if(!t.installed||G!==e){t.installed=!0,G=e;var n=function(t){return void 0!==t},r=function(t,e){var r=t.$options._parentVnode;n(r)&&n(r=r.data)&&n(r=r.registerRouteInstance)&&r(t,e)};e.mixin({beforeCreate:function(){n(this.$options.router)?(this._routerRoot=this,this._router=this.$options.router,this._router.init(this),e.util.defineReactive(this,"_route",this._router.history.current)):this._routerRoot=this.$parent&&this.$parent._routerRoot||this,r(this,this)},destroyed:function(){r(this)}}),Object.defineProperty(e.prototype,"$router",{get:function(){return this._routerRoot._router}}),Object.defineProperty(e.prototype,"$route",{get:function(){return this._routerRoot._route}}),e.component("RouterView",s),e.component("RouterLink",X);var i=e.config.optionMergeStrategies;i.beforeRouteEnter=i.beforeRouteLeave=i.beforeRouteUpdate=i.created}},Ut.version="3.1.6",Y&&window.Vue&&window.Vue.use(Ut);var Bt=Ut;n(50),n(194),n(196),n(142),n(143),n(72),n(108),n(51);function qt(t){t.locales&&Object.keys(t.locales).forEach((function(e){t.locales[e].path=e})),Object.freeze(t)}n(198),n(144),n(48),n(199),n(69),n(41),n(61),n(92);function Vt(t){return(Vt="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}var Wt=n(44),Ht={DropdownLink:function(){return Promise.all([n.e(0),n.e(6)]).then(n.bind(null,340))},DropdownTransition:function(){return Promise.all([n.e(0),n.e(18)]).then(n.bind(null,317))},Home:function(){return Promise.all([n.e(2),n.e(7)]).then(n.bind(null,341))},Layout:function(){return Promise.all([n.e(0),n.e(2),n.e(1),n.e(4)]).then(n.bind(null,361))},NavLink:function(){return n.e(9).then(n.bind(null,316))},NavLinks:function(){return Promise.all([n.e(0),n.e(1)]).then(n.bind(null,332))},Navbar:function(){return Promise.all([n.e(0),n.e(1),n.e(10)]).then(n.bind(null,342))},NotFound:function(){return n.e(24).then(n.bind(null,362))},Page:function(){return n.e(16).then(n.bind(null,343))},SearchBox:function(){return n.e(13).then(n.bind(null,331))},Sidebar:function(){return Promise.all([n.e(0),n.e(1),n.e(8)]).then(n.bind(null,344))},SidebarButton:function(){return n.e(25).then(n.bind(null,334))},SidebarGroup:function(){return Promise.all([n.e(0),n.e(5)]).then(n.bind(null,333))},SidebarLink:function(){return n.e(14).then(n.bind(null,319))},SlickCarousel:function(){return Promise.all([n.e(2),n.e(26)]).then(n.bind(null,330))},VersionSelect:function(){return n.e(11).then(n.bind(null,325))},VersionSelectItem:function(){return n.e(27).then(n.bind(null,318))}},Gt={"v-680eebc3":function(){return n.e(28).then(n.bind(null,363))},"v-4e72e1d8":function(){return n.e(29).then(n.bind(null,364))},"v-7d127123":function(){return n.e(30).then(n.bind(null,365))},"v-4a1e6e3a":function(){return n.e(12).then(n.bind(null,366))},"v-10fe793a":function(){return n.e(31).then(n.bind(null,367))},"v-622f23e3":function(){return n.e(17).then(n.bind(null,368))},"v-ef34fffa":function(){return n.e(32).then(n.bind(null,369))},"v-090070fa":function(){return n.e(33).then(n.bind(null,370))},"v-67c3f2ba":function(){return n.e(15).then(n.bind(null,371))},"v-0af75f63":function(){return n.e(34).then(n.bind(null,372))},"v-cc322cfa":function(){return n.e(35).then(n.bind(null,373))},"v-4d5d0f9b":function(){return n.e(36).then(n.bind(null,374))},"v-22a01883":function(){return n.e(37).then(n.bind(null,375))},"v-047b1c1f":function(){return n.e(38).then(n.bind(null,376))},"v-030337f1":function(){return n.e(39).then(n.bind(null,377))},"v-26037fe3":function(){return n.e(40).then(n.bind(null,378))},"v-9619ebfa":function(){return n.e(41).then(n.bind(null,379))},"v-432db923":function(){return n.e(42).then(n.bind(null,380))},"v-3dac3903":function(){return n.e(43).then(n.bind(null,381))},"v-e046bab2":function(){return n.e(44).then(n.bind(null,382))},"v-e336830e":function(){return n.e(45).then(n.bind(null,383))},"v-7c7b3203":function(){return n.e(46).then(n.bind(null,384))},"v-439f9686":function(){return n.e(47).then(n.bind(null,385))},"v-07a77f72":function(){return n.e(48).then(n.bind(null,386))},"v-00d38f11":function(){return n.e(49).then(n.bind(null,387))},"v-d39223ba":function(){return n.e(19).then(n.bind(null,388))},"v-a31c3dba":function(){return n.e(50).then(n.bind(null,389))},"v-6f0eac21":function(){return n.e(51).then(n.bind(null,390))},"v-481dea23":function(){return n.e(52).then(n.bind(null,391))},"v-15b388aa":function(){return n.e(53).then(n.bind(null,392))},"v-8a6363ba":function(){return n.e(54).then(n.bind(null,393))},"v-7f0b5429":function(){return n.e(55).then(n.bind(null,394))},"v-29055241":function(){return n.e(56).then(n.bind(null,395))},"v-c0e60bfa":function(){return n.e(57).then(n.bind(null,396))},"v-2339aa03":function(){return n.e(58).then(n.bind(null,397))},"v-019cb63a":function(){return n.e(59).then(n.bind(null,398))},"v-7ffeb723":function(){return n.e(60).then(n.bind(null,399))},"v-9478f2ba":function(){return n.e(61).then(n.bind(null,400))},"v-4f03fe0f":function(){return n.e(62).then(n.bind(null,401))},"v-5baa92ba":function(){return n.e(63).then(n.bind(null,402))},"v-c249e07a":function(){return n.e(64).then(n.bind(null,403))},"v-27941b23":function(){return n.e(65).then(n.bind(null,404))},"v-6f4baca5":function(){return n.e(66).then(n.bind(null,405))},"v-fa75e63a":function(){return n.e(67).then(n.bind(null,406))},"v-f0c998de":function(){return n.e(68).then(n.bind(null,407))},"v-11e0c7ba":function(){return n.e(69).then(n.bind(null,408))},"v-46094903":function(){return n.e(70).then(n.bind(null,409))},"v-cbda523a":function(){return n.e(71).then(n.bind(null,410))},"v-a75af93a":function(){return n.e(72).then(n.bind(null,411))},"v-22ba6d3a":function(){return n.e(73).then(n.bind(null,412))},"v-d6319362":function(){return n.e(74).then(n.bind(null,413))},"v-7b99cfba":function(){return n.e(20).then(n.bind(null,414))},"v-6ec4d123":function(){return n.e(75).then(n.bind(null,415))},"v-5c5d50fa":function(){return n.e(76).then(n.bind(null,416))},"v-6cd19ba3":function(){return n.e(77).then(n.bind(null,417))},"v-55eb8eca":function(){return n.e(21).then(n.bind(null,418))},"v-1ec46263":function(){return n.e(22).then(n.bind(null,419))},"v-9213d4fa":function(){return n.e(78).then(n.bind(null,420))}};function Kt(t){var e=Object.create(null);return function(n){return e[n]||(e[n]=t(n))}}var Xt=/-(\w)/g,Qt=Kt((function(t){return t.replace(Xt,(function(t,e){return e?e.toUpperCase():""}))})),Yt=/\B([A-Z])/g,Jt=Kt((function(t){return t.replace(Yt,"-$1").toLowerCase()})),Zt=Kt((function(t){return t.charAt(0).toUpperCase()+t.slice(1)}));function te(t,e){if(e)return t(e)?t(e):e.includes("-")?t(Zt(Qt(e))):t(Zt(e))||t(Jt(e))}var ee=Object.assign({},Ht,Gt),ne=function(t){return ee[t]},re=function(t){return Gt[t]},ie=function(t){return Ht[t]},oe=function(t){return o.a.component(t)};function ae(t){return te(re,t)}function ue(t){return te(ie,t)}function le(t){return te(ne,t)}function se(t){return te(oe,t)}function ce(){for(var t=arguments.length,e=new Array(t),n=0;n"})).join("\n "):""}var e},mounted:function(){this.currentMetaTags=Object(Wt.a)(document.querySelectorAll("meta")),this.updateMeta()},methods:{updateMeta:function(){document.title=this.$title,document.documentElement.lang=this.$lang;var t=this.getMergedMetaTags();this.currentMetaTags=ge(t,this.currentMetaTags)},getMergedMetaTags:function(){var t=this.$page.frontmatter.meta||[];return ve()([{name:"description",content:this.$description}],t,this.siteMeta,me)}},watch:{$page:function(){this.updateMeta()}},beforeDestroy:function(){ge(null,this.currentMetaTags)}}],be={name:"GlobalLayout",computed:{layout:function(){var t=this.getLayout();return fe("layout",t),o.a.component(t)}},methods:{getLayout:function(){if(this.$page.path){var t=this.$page.frontmatter.layout;return t&&(this.$vuepress.getLayoutAsyncComponent(t)||this.$vuepress.getVueComponent(t))?t:"Layout"}return"NotFound"}}},_e=n(46),we=Object(_e.a)(be,(function(){var t=this.$createElement;return(this._self._c||t)(this.layout,{tag:"component"})}),[],!1,null,null,null).exports;!function(t,e,n){var r;switch(e){case"components":t[e]||(t[e]={}),Object.assign(t[e],n);break;case"mixins":t[e]||(t[e]=[]),(r=t[e]).push.apply(r,Object(Wt.a)(n));break;default:throw new Error("Unknown option name.")}}(we,"mixins",ye);var xe=[{name:"v-680eebc3",path:"/404.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-680eebc3").then(n)}},{name:"v-4e72e1d8",path:"/",component:we,beforeEnter:function(t,e,n){ce("Layout","v-4e72e1d8").then(n)}},{path:"/index.html",redirect:"/"},{name:"v-7d127123",path:"/community/about.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-7d127123").then(n)}},{name:"v-4a1e6e3a",path:"/community/config/eggs/creating_a_custom_egg.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-4a1e6e3a").then(n)}},{name:"v-10fe793a",path:"/community/config/eggs/creating_a_custom_image.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-10fe793a").then(n)}},{name:"v-622f23e3",path:"/community/config/nodes/add_node.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-622f23e3").then(n)}},{name:"v-ef34fffa",path:"/community/customization/panel.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-ef34fffa").then(n)}},{name:"v-090070fa",path:"/community/customization/wings.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-090070fa").then(n)}},{name:"v-67c3f2ba",path:"/community/games/minecraft.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-67c3f2ba").then(n)}},{name:"v-0af75f63",path:"/community/installation-guides/panel/centos7.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-0af75f63").then(n)}},{name:"v-cc322cfa",path:"/community/installation-guides/panel/centos8.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-cc322cfa").then(n)}},{name:"v-4d5d0f9b",path:"/community/installation-guides/panel/debian10.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-4d5d0f9b").then(n)}},{name:"v-22a01883",path:"/community/installation-guides/panel/debian9.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-22a01883").then(n)}},{name:"v-047b1c1f",path:"/community/installation-guides/panel/ubuntu1804.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-047b1c1f").then(n)}},{name:"v-030337f1",path:"/community/installation-guides/panel/ubuntu2004.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-030337f1").then(n)}},{name:"v-26037fe3",path:"/community/installation-guides/wings/centos7.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-26037fe3").then(n)}},{name:"v-9619ebfa",path:"/community/installation-guides/wings/centos8.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-9619ebfa").then(n)}},{name:"v-432db923",path:"/community/installation-guides/wings/debian10.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-432db923").then(n)}},{name:"v-3dac3903",path:"/community/installation-guides/wings/debian9.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-3dac3903").then(n)}},{name:"v-e046bab2",path:"/community/installation-guides/wings/ubuntu1804.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-e046bab2").then(n)}},{name:"v-e336830e",path:"/community/installation-guides/wings/ubuntu2004.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-e336830e").then(n)}},{name:"v-7c7b3203",path:"/community/tutorials/artisan.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-7c7b3203").then(n)}},{name:"v-439f9686",path:"/community/tutorials/custom_theme_setup.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-439f9686").then(n)}},{name:"v-07a77f72",path:"/daemon/0.6/configuration.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-07a77f72").then(n)}},{name:"v-00d38f11",path:"/daemon/0.6/debian_8_docker.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-00d38f11").then(n)}},{name:"v-d39223ba",path:"/daemon/0.6/installing.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-d39223ba").then(n)}},{name:"v-a31c3dba",path:"/daemon/0.6/kernel_modifications.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-a31c3dba").then(n)}},{name:"v-6f0eac21",path:"/daemon/0.6/standalone_sftp.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-6f0eac21").then(n)}},{name:"v-481dea23",path:"/daemon/0.6/upgrade/0.4_to_0.5.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-481dea23").then(n)}},{name:"v-15b388aa",path:"/daemon/0.6/upgrade/0.5.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-15b388aa").then(n)}},{name:"v-8a6363ba",path:"/daemon/0.6/upgrade/0.5_to_0.6.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-8a6363ba").then(n)}},{name:"v-7f0b5429",path:"/daemon/0.6/upgrade/0.6.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-7f0b5429").then(n)}},{name:"v-29055241",path:"/daemon/0.6/upgrading.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-29055241").then(n)}},{name:"v-c0e60bfa",path:"/guides/mounts.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-c0e60bfa").then(n)}},{name:"v-2339aa03",path:"/ops/publish_release.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-2339aa03").then(n)}},{name:"v-019cb63a",path:"/panel/0.7/configuration.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-019cb63a").then(n)}},{name:"v-7ffeb723",path:"/panel/0.7/getting_started.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-7ffeb723").then(n)}},{name:"v-9478f2ba",path:"/panel/0.7/troubleshooting.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-9478f2ba").then(n)}},{name:"v-4f03fe0f",path:"/panel/0.7/upgrade/0.6_to_0.7.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-4f03fe0f").then(n)}},{name:"v-5baa92ba",path:"/panel/0.7/upgrade/0.7.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-5baa92ba").then(n)}},{name:"v-c249e07a",path:"/panel/0.7/upgrading.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-c249e07a").then(n)}},{name:"v-27941b23",path:"/panel/0.7/webserver_configuration.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-27941b23").then(n)}},{name:"v-6f4baca5",path:"/panel/1.0/additional_configuration.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-6f4baca5").then(n)}},{name:"v-fa75e63a",path:"/panel/1.0/getting_started.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-fa75e63a").then(n)}},{name:"v-f0c998de",path:"/panel/1.0/upgrade/0.7_to_1.0.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-f0c998de").then(n)}},{name:"v-11e0c7ba",path:"/panel/1.0/upgrade/1.0.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-11e0c7ba").then(n)}},{name:"v-46094903",path:"/panel/1.0/upgrading.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-46094903").then(n)}},{name:"v-cbda523a",path:"/panel/1.0/webserver_configuration.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-cbda523a").then(n)}},{name:"v-a75af93a",path:"/project/about.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-a75af93a").then(n)}},{name:"v-22ba6d3a",path:"/project/community.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-22ba6d3a").then(n)}},{name:"v-d6319362",path:"/project/introduction.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-d6319362").then(n)}},{name:"v-7b99cfba",path:"/project/terms.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-7b99cfba").then(n)}},{name:"v-6ec4d123",path:"/tutorials/creating_ssl_certificates.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-6ec4d123").then(n)}},{name:"v-5c5d50fa",path:"/tutorials/mysql_setup.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-5c5d50fa").then(n)}},{name:"v-6cd19ba3",path:"/wings/1.0/configuration.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-6cd19ba3").then(n)}},{name:"v-55eb8eca",path:"/wings/1.0/installing.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-55eb8eca").then(n)}},{name:"v-1ec46263",path:"/wings/1.0/migrating.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-1ec46263").then(n)}},{name:"v-9213d4fa",path:"/wings/1.0/upgrading.html",component:we,beforeEnter:function(t,e,n){ce("Layout","v-9213d4fa").then(n)}},{path:"*",component:we}],Se={title:"Pterodactyl",description:"The open-source server management solution.",base:"/",headTags:[["link",{rel:"apple-touch-icon",sizes:"180x180",href:"/favicons/apple-touch-icon.png"}],["link",{rel:"icon",type:"image/png",href:"/favicons/favicon-32x32.png",sizes:"32x32"}],["link",{rel:"icon",type:"image/png",href:"/favicons/favicon-16x16.png",sizes:"16x16"}],["link",{rel:"mask-icon",href:"/favicons/safari-pinned-tab.svg",color:"#0e4688"}],["link",{rel:"manifest",href:"/favicons/manifest.json"}],["link",{rel:"shortcut icon",href:"/favicons/favicon.ico"}],["meta",{name:"msapplication-config",content:"/favicons/browserconfig.xml"}],["meta",{name:"theme-color",content:"#0e4688"}]],pages:[{frontmatter:{},regularPath:"/404.html",relativePath:"404.md",key:"v-680eebc3",path:"/404.html"},{title:"Home",frontmatter:{home:!0,heroImage:"/doc_pterry.png",actionText:"Get Started →",actionLink:"/project/introduction",features:[{title:"Security First",details:"Security is a first-class citizen on this platform with bcrypt hashing, AES-256-CBC encryption, and HTTPS support out of the box."},{title:"Modern Tooling",details:"Built on a modern stack utilizing the best design practices that make it easy to jump in and make modifications."},{title:"Docker to the Core",details:"All servers run in isolated Docker containers that limit attack vectors, provide strict resource limits, and provide environments tailored to each specific game."}],footer:"MIT Licensed | Copyright © 2015 - 2018 Dane Everitt & Contributors"},regularPath:"/",relativePath:"README.md",key:"v-4e72e1d8",path:"/"},{title:"Community Guides and Tutorials",frontmatter:{},regularPath:"/community/about.html",relativePath:"community/about.md",key:"v-7d127123",path:"/community/about.html",headers:[{level:2,title:"About",slug:"about"}]},{title:"Creating a Custom Egg",frontmatter:{},regularPath:"/community/config/eggs/creating_a_custom_egg.html",relativePath:"community/config/eggs/creating_a_custom_egg.md",key:"v-4a1e6e3a",path:"/community/config/eggs/creating_a_custom_egg.html",headers:[{level:2,title:"Create New Option",slug:"create-new-option"},{level:2,title:"Configure Process Management",slug:"configure-process-management"},{level:3,title:"Stop Command",slug:"stop-command"},{level:3,title:"Log Storage",slug:"log-storage"},{level:3,title:"Configuration Files",slug:"configuration-files"},{level:3,title:"Start Configuration",slug:"start-configuration"},{level:2,title:"Copy Settings From",slug:"copy-settings-from"},{level:2,title:"Egg Variables",slug:"egg-variables"}]},{title:"Creating a Custom Docker Image",frontmatter:{},regularPath:"/community/config/eggs/creating_a_custom_image.html",relativePath:"community/config/eggs/creating_a_custom_image.md",key:"v-10fe793a",path:"/community/config/eggs/creating_a_custom_image.html",headers:[{level:2,title:"Creating the Dockerfile",slug:"creating-the-dockerfile"},{level:2,title:"Installing Dependencies",slug:"installing-dependencies"},{level:2,title:"Creating a Container User",slug:"creating-a-container-user"},{level:2,title:"Work Directory & Entrypoint",slug:"work-directory-entrypoint"},{level:2,title:"Entrypoint Script",slug:"entrypoint-script"},{level:2,title:"Modifying the Startup Command",slug:"modifying-the-startup-command"},{level:2,title:"Run the Command",slug:"run-the-command"},{level:3,title:"Note",slug:"note"}]},{title:"Creating a New Node",frontmatter:{},regularPath:"/community/config/nodes/add_node.html",relativePath:"community/config/nodes/add_node.md",key:"v-622f23e3",path:"/community/config/nodes/add_node.html",headers:[{level:2,title:"Location",slug:"location"},{level:2,title:"Information Required",slug:"information-required"},{level:2,title:"Install the Daemon",slug:"install-the-daemon"},{level:2,title:"Configuring the Node",slug:"configuring-the-node"},{level:3,title:"Auto-Deploy",slug:"auto-deploy"}]},{title:"Building Panel Assets",frontmatter:{},regularPath:"/community/customization/panel.html",relativePath:"community/customization/panel.md",key:"v-ef34fffa",path:"/community/customization/panel.html",headers:[{level:2,title:"Install Dependencies",slug:"install-dependencies"},{level:2,title:"Build Panel Assets",slug:"build-panel-assets"}]},{title:"Building Wings",frontmatter:{},regularPath:"/community/customization/wings.html",relativePath:"community/customization/wings.md",key:"v-090070fa",path:"/community/customization/wings.html",headers:[{level:2,title:"Build Requirements",slug:"build-requirements"},{level:2,title:"Building",slug:"building"},{level:2,title:"Install the new binary",slug:"install-the-new-binary"},{level:2,title:"Troubleshooting",slug:"troubleshooting"}]},{title:"Minecraft",frontmatter:{},regularPath:"/community/games/minecraft.html",relativePath:"community/games/minecraft.md",key:"v-67c3f2ba",path:"/community/games/minecraft.html",headers:[{level:2,title:"Configuring a Server Network (BungeeCord, Waterfall, HexaCord, etc.)",slug:"configuring-a-server-network-bungeecord-waterfall-hexacord-etc"},{level:3,title:"Allocations in the Panel",slug:"allocations-in-the-panel"},{level:3,title:"proxy server settings",slug:"proxy-server-settings"},{level:3,title:"paper/spigot/bukkit settings",slug:"paper-spigot-bukkit-settings"},{level:3,title:"Firewalls",slug:"firewalls"}]},{title:"CentOS 7",frontmatter:{},regularPath:"/community/installation-guides/panel/centos7.html",relativePath:"community/installation-guides/panel/centos7.md",key:"v-0af75f63",path:"/community/installation-guides/panel/centos7.html",headers:[{level:2,title:"Install Requirements and Additional Utilities",slug:"install-requirements-and-additional-utilities"},{level:3,title:"SELinux tools",slug:"selinux-tools"},{level:3,title:"MariaDB",slug:"mariadb"},{level:3,title:"PHP 7.4",slug:"php-7-4"},{level:3,title:"Composer",slug:"composer"},{level:2,title:"Install Utility Packages",slug:"install-utility-packages"},{level:3,title:"Nginx",slug:"nginx"},{level:3,title:"Redis",slug:"redis"},{level:2,title:"Server Configuration",slug:"server-configuration"},{level:3,title:"Configuring MariaDB",slug:"configuring-mariadb"},{level:3,title:"Setup PHP",slug:"setup-php"},{level:3,title:"Nginx",slug:"nginx-2"},{level:3,title:"Redis Setup",slug:"redis-setup"},{level:2,title:"Installing the Panel",slug:"installing-the-panel"}]},{title:"CentOS 8",frontmatter:{},regularPath:"/community/installation-guides/panel/centos8.html",relativePath:"community/installation-guides/panel/centos8.md",key:"v-cc322cfa",path:"/community/installation-guides/panel/centos8.html",headers:[{level:2,title:"Install Requirements and Additional Utilities",slug:"install-requirements-and-additional-utilities"},{level:3,title:"SELinux tools",slug:"selinux-tools"},{level:3,title:"MariaDB",slug:"mariadb"},{level:3,title:"PHP 7.4",slug:"php-7-4"},{level:3,title:"Composer",slug:"composer"},{level:2,title:"Install Utility Packages",slug:"install-utility-packages"},{level:3,title:"Nginx",slug:"nginx"},{level:3,title:"Redis",slug:"redis"},{level:2,title:"Server Configuration",slug:"server-configuration"},{level:3,title:"Configuring MariaDB",slug:"configuring-mariadb"},{level:3,title:"Setup PHP",slug:"setup-php"},{level:3,title:"Nginx",slug:"nginx-2"},{level:3,title:"Redis Setup",slug:"redis-setup"},{level:2,title:"Installing the Panel",slug:"installing-the-panel"}]},{title:"Debian 10",frontmatter:{},regularPath:"/community/installation-guides/panel/debian10.html",relativePath:"community/installation-guides/panel/debian10.md",key:"v-4d5d0f9b",path:"/community/installation-guides/panel/debian10.html",headers:[{level:2,title:"Install Requirements",slug:"install-requirements"},{level:3,title:"MariaDB",slug:"mariadb"},{level:3,title:"PHP 7.4",slug:"php-7-4"},{level:3,title:"Nginx",slug:"nginx"},{level:3,title:"Redis",slug:"redis"},{level:3,title:"Additional Utilities",slug:"additional-utilities"},{level:2,title:"Server Configuration",slug:"server-configuration"},{level:3,title:"Configuring MariaDB",slug:"configuring-mariadb"},{level:3,title:"Setup PHP",slug:"setup-php"},{level:3,title:"Nginx",slug:"nginx-2"},{level:3,title:"Redis Setup",slug:"redis-setup"},{level:2,title:"Installing the Panel",slug:"installing-the-panel"}]},{title:"Debian 9",frontmatter:{},regularPath:"/community/installation-guides/panel/debian9.html",relativePath:"community/installation-guides/panel/debian9.md",key:"v-22a01883",path:"/community/installation-guides/panel/debian9.html",headers:[{level:2,title:"Install Requirements",slug:"install-requirements"},{level:3,title:"MariaDB",slug:"mariadb"},{level:3,title:"PHP 7.4",slug:"php-7-4"},{level:3,title:"Nginx",slug:"nginx"},{level:3,title:"Redis",slug:"redis"},{level:3,title:"Additional Utilities",slug:"additional-utilities"},{level:2,title:"Server Configuration",slug:"server-configuration"},{level:3,title:"Configuring MariaDB",slug:"configuring-mariadb"},{level:3,title:"Setup PHP",slug:"setup-php"},{level:3,title:"Nginx",slug:"nginx-2"},{level:3,title:"Redis Setup",slug:"redis-setup"},{level:2,title:"Installing the Panel",slug:"installing-the-panel"}]},{title:"Ubuntu 18.04",frontmatter:{},regularPath:"/community/installation-guides/panel/ubuntu1804.html",relativePath:"community/installation-guides/panel/ubuntu1804.md",key:"v-047b1c1f",path:"/community/installation-guides/panel/ubuntu1804.html",headers:[{level:2,title:"Install Requirements",slug:"install-requirements"},{level:3,title:"MariaDB",slug:"mariadb"},{level:3,title:"PHP 7.4",slug:"php-7-4"},{level:3,title:"Nginx",slug:"nginx"},{level:3,title:"Redis",slug:"redis"},{level:3,title:"Additional Utilities",slug:"additional-utilities"},{level:2,title:"Server Configuration",slug:"server-configuration"},{level:3,title:"Configuring MariaDB",slug:"configuring-mariadb"},{level:3,title:"Setup PHP",slug:"setup-php"},{level:3,title:"Nginx",slug:"nginx-2"},{level:3,title:"Redis Setup",slug:"redis-setup"},{level:2,title:"Installing the Panel",slug:"installing-the-panel"}]},{title:"Ubuntu 20.04",frontmatter:{},regularPath:"/community/installation-guides/panel/ubuntu2004.html",relativePath:"community/installation-guides/panel/ubuntu2004.md",key:"v-030337f1",path:"/community/installation-guides/panel/ubuntu2004.html",headers:[{level:2,title:"Install Requirements",slug:"install-requirements"},{level:3,title:"MariaDB",slug:"mariadb"},{level:3,title:"PHP 7.4",slug:"php-7-4"},{level:3,title:"Nginx",slug:"nginx"},{level:3,title:"Redis",slug:"redis"},{level:3,title:"Additional Utilities",slug:"additional-utilities"},{level:2,title:"Server Configuration",slug:"server-configuration"},{level:3,title:"Configuring MariaDB",slug:"configuring-mariadb"},{level:3,title:"Setup PHP",slug:"setup-php"},{level:3,title:"Nginx",slug:"nginx-2"},{level:3,title:"Redis Setup",slug:"redis-setup"},{level:2,title:"Installing the Panel",slug:"installing-the-panel"}]},{title:"CentOS 7",frontmatter:{},regularPath:"/community/installation-guides/wings/centos7.html",relativePath:"community/installation-guides/wings/centos7.md",key:"v-26037fe3",path:"/community/installation-guides/wings/centos7.html",headers:[{level:2,title:"Install Requirements",slug:"install-requirements"},{level:3,title:"Docker",slug:"docker"},{level:3,title:"FirewallD Changes",slug:"firewalld-changes"},{level:2,title:"Installing Wings",slug:"installing-wings"}]},{title:"CentOS 8",frontmatter:{},regularPath:"/community/installation-guides/wings/centos8.html",relativePath:"community/installation-guides/wings/centos8.md",key:"v-9619ebfa",path:"/community/installation-guides/wings/centos8.html",headers:[{level:2,title:"Install Requirements",slug:"install-requirements"},{level:3,title:"Docker",slug:"docker"},{level:3,title:"FirewallD Changes",slug:"firewalld-changes"},{level:2,title:"Installing Wings",slug:"installing-wings"}]},{title:"Debian 10",frontmatter:{},regularPath:"/community/installation-guides/wings/debian10.html",relativePath:"community/installation-guides/wings/debian10.md",key:"v-432db923",path:"/community/installation-guides/wings/debian10.html",headers:[{level:2,title:"Install Requirements",slug:"install-requirements"},{level:3,title:"Docker",slug:"docker"},{level:2,title:"Installing Wings",slug:"installing-wings"}]},{title:"Debian 9",frontmatter:{},regularPath:"/community/installation-guides/wings/debian9.html",relativePath:"community/installation-guides/wings/debian9.md",key:"v-3dac3903",path:"/community/installation-guides/wings/debian9.html",headers:[{level:2,title:"Install Requirements",slug:"install-requirements"},{level:3,title:"Docker",slug:"docker"},{level:2,title:"Installing Wings",slug:"installing-wings"}]},{title:"Ubuntu 18.04",frontmatter:{},regularPath:"/community/installation-guides/wings/ubuntu1804.html",relativePath:"community/installation-guides/wings/ubuntu1804.md",key:"v-e046bab2",path:"/community/installation-guides/wings/ubuntu1804.html",headers:[{level:2,title:"Install Requirements",slug:"install-requirements"},{level:3,title:"Docker",slug:"docker"},{level:2,title:"Installing Wings",slug:"installing-wings"}]},{title:"Ubuntu 20.04",frontmatter:{},regularPath:"/community/installation-guides/wings/ubuntu2004.html",relativePath:"community/installation-guides/wings/ubuntu2004.md",key:"v-e336830e",path:"/community/installation-guides/wings/ubuntu2004.html",headers:[{level:2,title:"Install Requirements",slug:"install-requirements"},{level:3,title:"Docker",slug:"docker"},{level:2,title:"Installing Wings",slug:"installing-wings"}]},{title:"Artisan CLI",frontmatter:{},regularPath:"/community/tutorials/artisan.html",relativePath:"community/tutorials/artisan.md",key:"v-7c7b3203",path:"/community/tutorials/artisan.html",headers:[{level:2,title:"User Management",slug:"user-management"},{level:3,title:"Create User",slug:"create-user"},{level:3,title:"Delete User",slug:"delete-user"},{level:3,title:"Disable 2FA",slug:"disable-2fa"},{level:2,title:"Server & Node Management",slug:"server-node-management"},{level:3,title:"Create Location",slug:"create-location"},{level:3,title:"Delete Location",slug:"delete-location"},{level:3,title:"Server Bulk Power",slug:"server-bulk-power"},{level:3,title:"Server Rebuild",slug:"server-rebuild"},{level:2,title:"Panel Management",slug:"panel-management"},{level:3,title:"View Panel Info",slug:"view-panel-info"},{level:2,title:"Theme Management",slug:"theme-management"},{level:3,title:"List All Themes",slug:"list-all-themes"},{level:3,title:"Install a Theme",slug:"install-a-theme"},{level:3,title:"Create a Theme",slug:"create-a-theme"},{level:3,title:"Remove a Theme",slug:"remove-a-theme"}]},{title:"Creating a theme for Pterodactyl",frontmatter:{},regularPath:"/community/tutorials/custom_theme_setup.html",relativePath:"community/tutorials/custom_theme_setup.md",key:"v-439f9686",path:"/community/tutorials/custom_theme_setup.html",headers:[{level:2,title:"Using CLI",slug:"using-cli"},{level:3,title:"Set your newly created theme as default",slug:"set-your-newly-created-theme-as-default"},{level:3,title:"Setting your theme name in .env",slug:"setting-your-theme-name-in-env"}]},{title:"Additional Configuration",frontmatter:{},regularPath:"/daemon/0.6/configuration.html",relativePath:"daemon/0.6/configuration.md",key:"v-07a77f72",path:"/daemon/0.6/configuration.html",headers:[{level:2,title:"Output Throttles",slug:"output-throttles"},{level:2,title:"Custom Network Interfaces",slug:"custom-network-interfaces"},{level:2,title:"Private Registries",slug:"private-registries"},{level:2,title:"Security Policies",slug:"security-policies"},{level:2,title:"Container Policy",slug:"container-policy"},{level:3,title:"Default Security Opts Array",slug:"default-security-opts-array"},{level:3,title:"Default Capabilities Drop Array",slug:"default-capabilities-drop-array"},{level:2,title:"Enabling Cloudflare",slug:"enabling-cloudflare"}]},{title:"Docker on Debian 8",frontmatter:{},regularPath:"/daemon/0.6/debian_8_docker.html",relativePath:"daemon/0.6/debian_8_docker.md",key:"v-00d38f11",path:"/daemon/0.6/debian_8_docker.html",headers:[{level:2,title:"Install Docker",slug:"install-docker"},{level:2,title:"Update GRUB Startup",slug:"update-grub-startup"},{level:2,title:"Add Backports Repo",slug:"add-backports-repo"},{level:2,title:"Update Software & Setup Docker",slug:"update-software-setup-docker"}]},{title:"Installation",frontmatter:{},regularPath:"/daemon/0.6/installing.html",relativePath:"daemon/0.6/installing.md",key:"v-d39223ba",path:"/daemon/0.6/installing.html",headers:[{level:2,title:"Supported Systems",slug:"supported-systems"},{level:2,title:"System Requirements",slug:"system-requirements"},{level:2,title:"Dependencies",slug:"dependencies"},{level:3,title:"Installing Docker",slug:"installing-docker"},{level:3,title:"Installing Nodejs",slug:"installing-nodejs"},{level:2,title:"Installing Daemon Software",slug:"installing-daemon-software"},{level:2,title:"Configure Daemon",slug:"configure-daemon"},{level:2,title:"Starting the Daemon",slug:"starting-the-daemon"},{level:3,title:"Daemonizing (using systemd)",slug:"daemonizing-using-systemd"}]},{title:"Kernel Modifications",frontmatter:{},regularPath:"/daemon/0.6/kernel_modifications.html",relativePath:"daemon/0.6/kernel_modifications.md",key:"v-a31c3dba",path:"/daemon/0.6/kernel_modifications.html",headers:[{level:2,title:"Update Kernel",slug:"update-kernel"},{level:2,title:"Confirm Kernel",slug:"confirm-kernel"},{level:2,title:"Set Default Boot",slug:"set-default-boot"},{level:2,title:"Boot from hard disk",slug:"boot-from-hard-disk"}]},{title:"Standalone SFTP Server",frontmatter:{},regularPath:"/daemon/0.6/standalone_sftp.html",relativePath:"daemon/0.6/standalone_sftp.md",key:"v-6f0eac21",path:"/daemon/0.6/standalone_sftp.html",headers:[{level:2,title:"Disable Daemon's Server",slug:"disable-daemon-s-server"},{level:2,title:"Run the Standalone Server",slug:"run-the-standalone-server"},{level:3,title:"Start the Server",slug:"start-the-server"},{level:2,title:"Daemonize Server",slug:"daemonize-server"},{level:3,title:"Customizing Startup",slug:"customizing-startup"}]},{title:"Upgrading 0.4.X to 0.5.X",frontmatter:{},regularPath:"/daemon/0.6/upgrade/0.4_to_0.5.html",relativePath:"daemon/0.6/upgrade/0.4_to_0.5.md",key:"v-481dea23",path:"/daemon/0.6/upgrade/0.4_to_0.5.html",headers:[{level:2,title:"Docker Adjustments",slug:"docker-adjustments"},{level:2,title:"Download Files",slug:"download-files"},{level:2,title:"SFTP Cleanup",slug:"sftp-cleanup"},{level:2,title:"File Migration",slug:"file-migration"},{level:3,title:"Rebuild Containers",slug:"rebuild-containers"}]},{title:"Upgrading 0.5 Series",frontmatter:{},regularPath:"/daemon/0.6/upgrade/0.5.html",relativePath:"daemon/0.6/upgrade/0.5.md",key:"v-15b388aa",path:"/daemon/0.6/upgrade/0.5.html",headers:[{level:2,title:"Download Newest Release",slug:"download-newest-release"},{level:2,title:"Update Components",slug:"update-components"}]},{title:"Upgrading 0.5.X to 0.6.X",frontmatter:{},regularPath:"/daemon/0.6/upgrade/0.5_to_0.6.html",relativePath:"daemon/0.6/upgrade/0.5_to_0.6.md",key:"v-8a6363ba",path:"/daemon/0.6/upgrade/0.5_to_0.6.html",headers:[{level:2,title:"Breaking Changes",slug:"breaking-changes"},{level:2,title:"Download Files",slug:"download-files"},{level:3,title:"Start the Daemon",slug:"start-the-daemon"},{level:2,title:"Rebuild Containers",slug:"rebuild-containers"}]},{title:"Upgrading 0.6 Series",frontmatter:{},regularPath:"/daemon/0.6/upgrade/0.6.html",relativePath:"daemon/0.6/upgrade/0.6.md",key:"v-7f0b5429",path:"/daemon/0.6/upgrade/0.6.html",headers:[{level:2,title:"Download Newest Release",slug:"download-newest-release"},{level:2,title:"Update Components",slug:"update-components"}]},{title:"Upgrading",frontmatter:{},regularPath:"/daemon/0.6/upgrading.html",relativePath:"daemon/0.6/upgrading.md",key:"v-29055241",path:"/daemon/0.6/upgrading.html",headers:[{level:2,title:"Version Specific Guides",slug:"version-specific-guides"}]},{title:"Using Mounts",frontmatter:{},regularPath:"/guides/mounts.html",relativePath:"guides/mounts.md",key:"v-c0e60bfa",path:"/guides/mounts.html",headers:[{level:2,title:"Wings Configuration",slug:"wings-configuration"},{level:2,title:"Panel Configuration",slug:"panel-configuration"},{level:3,title:"Creating a Mount",slug:"creating-a-mount"},{level:3,title:"Assigning a Mount to a Server",slug:"assigning-a-mount-to-a-server"}]},{title:"Publishing a Release",frontmatter:{},regularPath:"/ops/publish_release.html",relativePath:"ops/publish_release.md",key:"v-2339aa03",path:"/ops/publish_release.html",headers:[{level:2,title:"Pick a Codename",slug:"pick-a-codename"},{level:2,title:"Create the Release Branch",slug:"create-the-release-branch"},{level:2,title:"Tag a Release",slug:"tag-a-release"},{level:3,title:"Update the Release on GitHub",slug:"update-the-release-on-github"},{level:2,title:"Generate Signatures & Hashes",slug:"generate-signatures-hashes"},{level:3,title:"Create Checksum",slug:"create-checksum"},{level:3,title:"GPG Sign Release",slug:"gpg-sign-release"},{level:3,title:"Attach to Release",slug:"attach-to-release"},{level:2,title:"Update Documentation",slug:"update-documentation"},{level:2,title:"Update CDN",slug:"update-cdn"},{level:2,title:"Make Discord Announcement",slug:"make-discord-announcement"},{level:2,title:"Example Process",slug:"example-process"}]},{title:"Environment Configuration",frontmatter:{},regularPath:"/panel/0.7/configuration.html",relativePath:"panel/0.7/configuration.md",key:"v-019cb63a",path:"/panel/0.7/configuration.html",headers:[{level:2,title:"Reporting All Exceptions",slug:"reporting-all-exceptions"},{level:2,title:"Client Databases",slug:"client-databases"},{level:2,title:"Reverse Proxy Setup",slug:"reverse-proxy-setup"},{level:3,title:"NGINX Specific Configuration",slug:"nginx-specific-configuration"},{level:3,title:"Cloudflare Specific Configuration",slug:"cloudflare-specific-configuration"},{level:2,title:"Increasing the Editable File Size",slug:"increasing-the-editable-file-size"},{level:2,title:"Disable or Modify ReCaptcha",slug:"disable-or-modify-recaptcha"},{level:3,title:"Using Your Own Keys",slug:"using-your-own-keys"}]},{title:"Getting Started",frontmatter:{},regularPath:"/panel/0.7/getting_started.html",relativePath:"panel/0.7/getting_started.md",key:"v-7ffeb723",path:"/panel/0.7/getting_started.html",headers:[{level:2,title:"Picking a Server OS",slug:"picking-a-server-os"},{level:2,title:"Dependencies",slug:"dependencies"},{level:3,title:"Example Dependency Installation",slug:"example-dependency-installation"},{level:3,title:"Installing Composer",slug:"installing-composer"},{level:2,title:"Download Files",slug:"download-files"},{level:2,title:"Installation",slug:"installation"},{level:3,title:"Environment Configuration",slug:"environment-configuration"},{level:3,title:"Database Setup",slug:"database-setup"},{level:3,title:"Add The First User",slug:"add-the-first-user"},{level:3,title:"Set Permissions",slug:"set-permissions"},{level:2,title:"Queue Listeners",slug:"queue-listeners"},{level:3,title:"Crontab Configuration",slug:"crontab-configuration"},{level:3,title:"Create Queue Worker",slug:"create-queue-worker"}]},{title:"Troubleshooting",frontmatter:{},regularPath:"/panel/0.7/troubleshooting.html",relativePath:"panel/0.7/troubleshooting.md",key:"v-9478f2ba",path:"/panel/0.7/troubleshooting.html",headers:[{level:2,title:"Reading Error Logs",slug:"reading-error-logs"},{level:3,title:"Parsing the Error",slug:"parsing-the-error"},{level:3,title:"Understanding the Error",slug:"understanding-the-error"},{level:3,title:"Utilizing GREP",slug:"utilizing-grep"},{level:2,title:"Transfer Exceptions / XHR Poll Error",slug:"transfer-exceptions-xhr-poll-error"},{level:3,title:"Example Errors",slug:"example-errors"},{level:3,title:"Basic Debugging Steps",slug:"basic-debugging-steps"},{level:3,title:"More Advanced Debugging Steps",slug:"more-advanced-debugging-steps"},{level:2,title:"Invalid MAC Exception",slug:"invalid-mac-exception"},{level:2,title:"SELinux Issues",slug:"selinux-issues"},{level:3,title:"Redis Permissions Errors",slug:"redis-permissions-errors"},{level:3,title:"In case there is any weirdness with parts of the panel",slug:"in-case-there-is-any-weirdness-with-parts-of-the-panel"},{level:3,title:"Daemon Connection Errors",slug:"daemon-connection-errors"},{level:2,title:"FirewallD issues",slug:"firewalld-issues"},{level:2,title:"Database Errors",slug:"database-errors"},{level:3,title:"DatabaseController.php:142",slug:"databasecontroller-php-142"}]},{title:"Upgrading 0.6 to 0.7",frontmatter:{},regularPath:"/panel/0.7/upgrade/0.6_to_0.7.html",relativePath:"panel/0.7/upgrade/0.6_to_0.7.md",key:"v-4f03fe0f",path:"/panel/0.7/upgrade/0.6_to_0.7.html",headers:[{level:2,title:"Fetch Updated Files",slug:"fetch-updated-files"},{level:2,title:"Clear Compiled Assets",slug:"clear-compiled-assets"},{level:2,title:"Update Dependencies",slug:"update-dependencies"},{level:2,title:"Update Environment",slug:"update-environment"},{level:2,title:"Database Updates",slug:"database-updates"},{level:2,title:"Cleanup API Keys",slug:"cleanup-api-keys"},{level:2,title:"Set Permissions",slug:"set-permissions"}]},{title:"Upgrading 0.7 Series",frontmatter:{},regularPath:"/panel/0.7/upgrade/0.7.html",relativePath:"panel/0.7/upgrade/0.7.md",key:"v-5baa92ba",path:"/panel/0.7/upgrade/0.7.html",headers:[{level:2,title:"Fetch Updated Files",slug:"fetch-updated-files"},{level:2,title:"Update Dependencies",slug:"update-dependencies"},{level:2,title:"Clear Compiled Template Cache",slug:"clear-compiled-template-cache"},{level:2,title:"Database Updates",slug:"database-updates"},{level:2,title:"Set Permissions",slug:"set-permissions"}]},{title:"Upgrading",frontmatter:{},regularPath:"/panel/0.7/upgrading.html",relativePath:"panel/0.7/upgrading.md",key:"v-c249e07a",path:"/panel/0.7/upgrading.html",headers:[{level:2,title:"Maintenance Mode",slug:"maintenance-mode"},{level:2,title:"Restarting Queue Workers",slug:"restarting-queue-workers"},{level:2,title:"Version Specific Guides",slug:"version-specific-guides"}]},{title:"Webserver Configuration",frontmatter:{},regularPath:"/panel/0.7/webserver_configuration.html",relativePath:"panel/0.7/webserver_configuration.md",key:"v-27941b23",path:"/panel/0.7/webserver_configuration.html",headers:[{level:2,title:"NGINX",slug:"nginx"},{level:3,title:"NGINX With SSL",slug:"nginx-with-ssl"},{level:3,title:"NGINX Without SSL",slug:"nginx-without-ssl"},{level:3,title:"Enabling Configuration",slug:"enabling-configuration"},{level:2,title:"Apache",slug:"apache"},{level:3,title:"Apache With SSL",slug:"apache-with-ssl"},{level:3,title:"Apache Without SSL",slug:"apache-without-ssl"},{level:3,title:"Enabling Configuration",slug:"enabling-configuration-2"}]},{title:"Additional Configuration",frontmatter:{},regularPath:"/panel/1.0/additional_configuration.html",relativePath:"panel/1.0/additional_configuration.md",key:"v-6f4baca5",path:"/panel/1.0/additional_configuration.html",headers:[{level:2,title:"Backups",slug:"backups"},{level:3,title:"Using S3 Backups",slug:"using-s3-backups"},{level:2,title:"reCAPTCHA",slug:"recaptcha"},{level:3,title:"Configuring reCAPTCHA",slug:"configuring-recaptcha"},{level:3,title:"Disabling reCAPTCHA",slug:"disabling-recaptcha"}]},{title:"Getting Started",frontmatter:{},regularPath:"/panel/1.0/getting_started.html",relativePath:"panel/1.0/getting_started.md",key:"v-fa75e63a",path:"/panel/1.0/getting_started.html",headers:[{level:2,title:"Picking a Server OS",slug:"picking-a-server-os"},{level:2,title:"Dependencies",slug:"dependencies"},{level:3,title:"Example Dependency Installation",slug:"example-dependency-installation"},{level:3,title:"Installing Composer",slug:"installing-composer"},{level:2,title:"Download Files",slug:"download-files"},{level:2,title:"Installation",slug:"installation"},{level:3,title:"Environment Configuration",slug:"environment-configuration"},{level:3,title:"Database Setup",slug:"database-setup"},{level:3,title:"Add The First User",slug:"add-the-first-user"},{level:3,title:"Set Permissions",slug:"set-permissions"},{level:2,title:"Queue Listeners",slug:"queue-listeners"},{level:3,title:"Crontab Configuration",slug:"crontab-configuration"},{level:3,title:"Create Queue Worker",slug:"create-queue-worker"}]},{title:"Upgrading 0.7 Series to 1.0 Series",frontmatter:{},regularPath:"/panel/1.0/upgrade/0.7_to_1.0.html",relativePath:"panel/1.0/upgrade/0.7_to_1.0.md",key:"v-f0c998de",path:"/panel/1.0/upgrade/0.7_to_1.0.html",headers:[{level:2,title:"Enter Maintenance Mode",slug:"enter-maintenance-mode"},{level:2,title:"Update Dependencies",slug:"update-dependencies"},{level:2,title:"Fetch Updated Files",slug:"fetch-updated-files"},{level:2,title:"Update Dependencies",slug:"update-dependencies-2"},{level:2,title:"Clear Compiled Template Cache",slug:"clear-compiled-template-cache"},{level:2,title:"Database Updates",slug:"database-updates"},{level:2,title:"Set Permissions",slug:"set-permissions"},{level:2,title:"Restarting Queue Workers",slug:"restarting-queue-workers"},{level:2,title:"Exit Maintenance Mode",slug:"exit-maintenance-mode"},{level:2,title:"Switch to Wings",slug:"switch-to-wings"}]},{title:"Upgrading 1.0 Series",frontmatter:{},regularPath:"/panel/1.0/upgrade/1.0.html",relativePath:"panel/1.0/upgrade/1.0.md",key:"v-11e0c7ba",path:"/panel/1.0/upgrade/1.0.html",headers:[{level:2,title:"Fetch Updated Files",slug:"fetch-updated-files"},{level:2,title:"Update Dependencies",slug:"update-dependencies"},{level:2,title:"Clear Compiled Template Cache",slug:"clear-compiled-template-cache"},{level:2,title:"Database Updates",slug:"database-updates"},{level:2,title:"Set Permissions",slug:"set-permissions"},{level:2,title:"Restarting Queue Workers",slug:"restarting-queue-workers"}]},{title:"Upgrading",frontmatter:{},regularPath:"/panel/1.0/upgrading.html",relativePath:"panel/1.0/upgrading.md",key:"v-46094903",path:"/panel/1.0/upgrading.html",headers:[{level:2,title:"Maintenance Mode",slug:"maintenance-mode"},{level:2,title:"Restarting Queue Workers",slug:"restarting-queue-workers"},{level:2,title:"Version Specific Guides",slug:"version-specific-guides"}]},{title:"Webserver Configuration",frontmatter:{},regularPath:"/panel/1.0/webserver_configuration.html",relativePath:"panel/1.0/webserver_configuration.md",key:"v-cbda523a",path:"/panel/1.0/webserver_configuration.html",headers:[{level:2,title:"NGINX",slug:"nginx"},{level:3,title:"NGINX With SSL",slug:"nginx-with-ssl"},{level:3,title:"NGINX Without SSL",slug:"nginx-without-ssl"},{level:3,title:"Enabling Configuration",slug:"enabling-configuration"},{level:2,title:"Apache",slug:"apache"},{level:3,title:"Apache With SSL",slug:"apache-with-ssl"},{level:3,title:"Apache Without SSL",slug:"apache-without-ssl"},{level:3,title:"Enabling Configuration",slug:"enabling-configuration-2"}]},{title:"About",frontmatter:{},regularPath:"/project/about.html",relativePath:"project/about.md",key:"v-a75af93a",path:"/project/about.html",headers:[{level:2,title:"Core Project Team",slug:"core-project-team"},{level:2,title:"Community Team",slug:"community-team"},{level:2,title:"License",slug:"license"},{level:2,title:"GPG Signature",slug:"gpg-signature"}]},{title:"Community Standards",frontmatter:{},regularPath:"/project/community.html",relativePath:"project/community.md",key:"v-22ba6d3a",path:"/project/community.html",headers:[{level:2,title:"Community Guidelines",slug:"community-guidelines"},{level:3,title:"Be Mature",slug:"be-mature"},{level:3,title:"Limit the Drama",slug:"limit-the-drama"},{level:3,title:"Be Patient",slug:"be-patient"},{level:3,title:"No Commercial Services",slug:"no-commercial-services"},{level:3,title:"No Mention or Ping Spam",slug:"no-mention-or-ping-spam"}]},{title:"Introduction",frontmatter:{},regularPath:"/project/introduction.html",relativePath:"project/introduction.md",key:"v-d6319362",path:"/project/introduction.html",headers:[{level:2,title:"Supported Games",slug:"supported-games"},{level:2,title:"Responsible Disclosure",slug:"responsible-disclosure"}]},{title:"Terminology",frontmatter:{},regularPath:"/project/terms.html",relativePath:"project/terms.md",key:"v-7b99cfba",path:"/project/terms.html",headers:[{level:2,title:"Example Setup Diagram",slug:"example-setup-diagram"}]},{title:"Creating SSL Certificates",frontmatter:{},regularPath:"/tutorials/creating_ssl_certificates.html",relativePath:"tutorials/creating_ssl_certificates.md",key:"v-6ec4d123",path:"/tutorials/creating_ssl_certificates.html",headers:[{level:2,title:"Method 1: Using Certbot",slug:"method-1-using-certbot"},{level:3,title:"Creating a Certificate",slug:"creating-a-certificate"},{level:3,title:"Auto Renewal",slug:"auto-renewal"},{level:3,title:"Troubleshooting",slug:"troubleshooting"},{level:2,title:"Method 2: Using acme.sh (Cloudflare)",slug:"method-2-using-acme-sh-cloudflare"},{level:3,title:"Obtaining CloudFlare API Key",slug:"obtaining-cloudflare-api-key"},{level:3,title:"Creating a Certificate",slug:"creating-a-certificate-2"},{level:3,title:"Auto Renewal",slug:"auto-renewal-2"}]},{title:"Setting up MySQL",frontmatter:{},regularPath:"/tutorials/mysql_setup.html",relativePath:"tutorials/mysql_setup.md",key:"v-5c5d50fa",path:"/tutorials/mysql_setup.html",headers:[{level:2,title:"Creating a database for Pterodactyl",slug:"creating-a-database-for-pterodactyl"},{level:3,title:"Logging In",slug:"logging-in"},{level:3,title:"Creating a user",slug:"creating-a-user"},{level:3,title:"Create a database",slug:"create-a-database"},{level:3,title:"Assigning permissions",slug:"assigning-permissions"},{level:2,title:"Creating a Database Host for Nodes",slug:"creating-a-database-host-for-nodes"},{level:3,title:"Creating a user",slug:"creating-a-user-2"},{level:3,title:"Assigning permissions",slug:"assigning-permissions-2"},{level:3,title:"Allowing external database access",slug:"allowing-external-database-access"}]},{title:"Additional Configuration",frontmatter:{},regularPath:"/wings/1.0/configuration.html",relativePath:"wings/1.0/configuration.md",key:"v-6cd19ba3",path:"/wings/1.0/configuration.html",headers:[{level:2,title:"Private Registries",slug:"private-registries"},{level:3,title:"Available Keys",slug:"available-keys"},{level:3,title:"Usage Example",slug:"usage-example"}]},{title:"Installing Wings",frontmatter:{},regularPath:"/wings/1.0/installing.html",relativePath:"wings/1.0/installing.md",key:"v-55eb8eca",path:"/wings/1.0/installing.html",headers:[{level:2,title:"Supported Systems",slug:"supported-systems"},{level:2,title:"System Requirements",slug:"system-requirements"},{level:2,title:"Dependencies",slug:"dependencies"},{level:3,title:"Installing Docker",slug:"installing-docker"},{level:2,title:"Installing Wings",slug:"installing-wings-2"},{level:2,title:"Configure",slug:"configure"},{level:3,title:"Starting Wings",slug:"starting-wings"},{level:3,title:"Daemonizing (using systemd)",slug:"daemonizing-using-systemd"}]},{title:"Migrating to Wings",frontmatter:{},regularPath:"/wings/1.0/migrating.html",relativePath:"wings/1.0/migrating.md",key:"v-1ec46263",path:"/wings/1.0/migrating.html",headers:[{level:2,title:"Install Wings",slug:"install-wings"},{level:2,title:"Copy New Configuration File",slug:"copy-new-configuration-file"},{level:2,title:"Remove Old Daemon",slug:"remove-old-daemon"},{level:3,title:"Remove Standalone SFTP",slug:"remove-standalone-sftp"},{level:2,title:"Daemonize Wings",slug:"daemonize-wings"}]},{title:"Upgrading Wings",frontmatter:{},regularPath:"/wings/1.0/upgrading.html",relativePath:"wings/1.0/upgrading.md",key:"v-9213d4fa",path:"/wings/1.0/upgrading.html",headers:[{level:2,title:"Download Updated Binary",slug:"download-updated-binary"},{level:2,title:"Restart Process",slug:"restart-process"}]}],themeConfig:{repo:"pterodactyl/panel",docsRepo:"pterodactyl/documentation",repoLabel:"Contribute",editLinkText:"Help us improve this page.",editLinks:!0,logo:"/pterodactyl-flat.png",nav:[{text:"Documentation",link:"/project/introduction.md"},{text:"Community Guides",link:"/community/about.md"},{text:"Get Help",link:"https://pterodactyl.io/discord"},{text:"API",link:"https://dashflo.net/docs/api/pterodactyl/v1/"}],sidebar:{"/community/":[{title:"Community Guides",collapsable:!1,children:["/community/about.md"]},{title:"Panel Installation",collapsable:!1,children:["/community/installation-guides/panel/centos7.md","/community/installation-guides/panel/centos8.md","/community/installation-guides/panel/debian9.md","/community/installation-guides/panel/debian10.md","/community/installation-guides/panel/ubuntu1804.md","/community/installation-guides/panel/ubuntu2004.md"]},{title:"Wings Installation",collapsable:!1,children:["/community/installation-guides/wings/centos7.md","/community/installation-guides/wings/centos8.md","/community/installation-guides/wings/debian9.md","/community/installation-guides/wings/debian10.md","/community/installation-guides/wings/ubuntu1804.md","/community/installation-guides/wings/ubuntu2004.md"]},{title:"Creating Eggs",collapsable:!1,children:["/community/config/eggs/creating_a_custom_egg.md","/community/config/eggs/creating_a_custom_image.md"]},{title:"Game Configuration",collapsable:!1,children:["/community/games/minecraft.md"]},{title:"Tutorials",collapsable:!1,children:["/community/config/nodes/add_node.md","/community/tutorials/custom_theme_setup.md","/community/tutorials/artisan.md"]},{title:"Customization",collapsable:!1,children:["/community/customization/panel.md","/community/customization/wings.md"]}],"/":[{title:"Project Information",collapsable:!1,children:["/project/introduction.md","/project/about.md","/project/terms.md","/project/community.md"]},{title:"Panel",collapsable:!1,path:"/panel/",currentVersion:"1.0",versions:[{name:"0.7",status:"legacy",children:["/getting_started","/webserver_configuration","/upgrading","/configuration","/troubleshooting"]},{name:"1.0",status:"stable",children:["/getting_started","/webserver_configuration","/upgrading","/additional_configuration"]}]},{title:"Wings",collapsable:!1,path:"/wings/",currentVersion:"1.0",versions:[{name:"1.0",status:"stable",children:["/installing","/upgrading","/migrating","/configuration"]}]},{title:"Daemon",collapsable:!1,path:"/daemon/",versions:[{name:"0.6",status:"legacy",children:["/installing","/upgrading","/configuration","/kernel_modifications","/debian_8_docker","/standalone_sftp"]}]},{title:"Tutorials",collapsable:!1,children:["/tutorials/mysql_setup.md","/tutorials/creating_ssl_certificates.md"]},{title:"Guides",collapsable:!1,children:["/guides/mounts.md"]},{title:"Development & Ops",collapsable:!0,children:["/ops/publish_release.md"]}]}}},ke=(n(297),n(299),n(300),n(179),n(76),n(107));function Oe(){for(var t="/",e=new RegExp(t+"{1,}","g"),n=arguments.length,r=new Array(n),i=0;i0}var Ue={props:{pageKey:String,slotKey:{type:String,default:"default"}},render:function(t){var e=this.pageKey||this.$parent.$page.key;return fe("pageKey",e),o.a.component(e)||o.a.component(e,ae(e)),o.a.component(e)?t(e):t("")}},Fe={functional:!0,props:{slotKey:String,required:!0},render:function(t,e){var n=e.props,r=e.slots;return t("div",{class:["content__".concat(n.slotKey)]},r()[n.slotKey])}},ze=(n(306),Object(_e.a)({},(function(t,e){var n=e._c;return n("svg",{staticClass:"icon outbound",attrs:{xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true",x:"0px",y:"0px",viewBox:"0 0 100 100",width:"15",height:"15"}},[n("path",{attrs:{fill:"currentColor",d:"M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"}}),e._v(" "),n("polygon",{attrs:{fill:"currentColor",points:"45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"}})])}),[],!0,null,null,null).exports);function Be(){return(Be=i(regeneratorRuntime.mark((function t(e){var n,r,i,a;return regeneratorRuntime.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return n="undefined"!=typeof window&&window.__VUEPRESS_ROUTER_BASE__?window.__VUEPRESS_ROUTER_BASE__:Se.routerBase||Se.base,Me(r=new Bt({base:n,mode:"history",fallback:!1,routes:xe,scrollBehavior:function(t,e,n){return n||(t.hash?!o.a.$vuepress.$get("disableScrollBehavior")&&{selector:t.hash}:{x:0,y:0})}})),i={},t.prev=4,t.next=7,Promise.all(Ce.filter((function(t){return"function"==typeof t})).map((function(t){return t({Vue:o.a,options:i,router:r,siteData:Se,isServer:e})})));case 7:t.next=12;break;case 9:t.prev=9,t.t0=t.catch(4),console.error(t.t0);case 12:return a=new o.a(Object.assign(i,{router:r,render:function(t){return t("div",{attrs:{id:"app"}},[t("RouterView",{ref:"layout"}),t("div",{class:"global-ui"},je.map((function(e){return t(e)})))])}})),t.abrupt("return",{app:a,router:r});case 14:case"end":return t.stop()}}),t,null,[[4,9]])})))).apply(this,arguments)}o.a.config.productionTip=!1,o.a.use(Bt),o.a.use(De),o.a.mixin(function(t,e){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:o.a;qt(e),n.$vuepress.$set("siteData",e);var r=t(n.$vuepress.$get("siteData")),i=new r,a=Object.getOwnPropertyDescriptors(Object.getPrototypeOf(i)),u={};return Object.keys(a).reduce((function(t,e){return e.startsWith("$")&&(t[e]=a[e].get),t}),u),{computed:u}}((function(t){return function(){function e(){Pe(this,e)}return Ae(e,[{key:"setPage",value:function(t){this.__page=t}},{key:"$site",get:function(){return t}},{key:"$themeConfig",get:function(){return this.$site.themeConfig}},{key:"$frontmatter",get:function(){return this.$page.frontmatter}},{key:"$localeConfig",get:function(){var t,e,n=this.$site.locales,r=void 0===n?{}:n;for(var i in r)"/"===i?e=r[i]:0===this.$page.path.indexOf(i)&&(t=r[i]);return t||e||{}}},{key:"$siteTitle",get:function(){return this.$localeConfig.title||this.$site.title||""}},{key:"$title",get:function(){var t=this.$page,e=this.$page.frontmatter.metaTitle;if("string"==typeof e)return e;var n=this.$siteTitle,r=t.frontmatter.home?null:t.frontmatter.title||t.title;return n?r?r+" | "+n:n:r||"VuePress"}},{key:"$description",get:function(){var t=function(t){if(t){var e=t.filter((function(t){return"description"===t.name}))[0];if(e)return e.content}}(this.$page.frontmatter.meta);return t||(this.$page.frontmatter.description||this.$localeConfig.description||this.$site.description||"")}},{key:"$lang",get:function(){return this.$page.frontmatter.lang||this.$localeConfig.lang||"en-US"}},{key:"$localePath",get:function(){return this.$localeConfig.path||"/"}},{key:"$themeLocaleConfig",get:function(){return(this.$site.themeConfig.locales||{})[this.$localePath]||{}}},{key:"$page",get:function(){return this.__page?this.__page:function(t,e){for(var n=0;n - + @@ -38,6 +38,6 @@ feel are important to share with the community, but do not fit into the theme of our core documentation.

    Here you'll find in-depth OS-specific installation guides, advanced network configurations, individual game setup instructions, and so much more.

    - + diff --git a/community/config/eggs/creating_a_custom_egg.html b/community/config/eggs/creating_a_custom_egg.html index a593316a..69fb09f7 100644 --- a/community/config/eggs/creating_a_custom_egg.html +++ b/community/config/eggs/creating_a_custom_egg.html @@ -14,7 +14,7 @@ - + @@ -124,6 +124,6 @@ regex as any letters or numbers (\w\d) including underscore (Ubuntu 20.04
    - + diff --git a/community/config/eggs/creating_a_custom_image.html b/community/config/eggs/creating_a_custom_image.html index 8de20946..0d7dcc8c 100644 --- a/community/config/eggs/creating_a_custom_image.html +++ b/community/config/eggs/creating_a_custom_image.html @@ -14,7 +14,7 @@ - + @@ -99,6 +99,6 @@ curly braces {{EXAMPLE}} with a matching environment variable (such ← Creating a Custom Egg
    - + diff --git a/community/config/nodes/add_node.html b/community/config/nodes/add_node.html index ef0e37d3..72176347 100644 --- a/community/config/nodes/add_node.html +++ b/community/config/nodes/add_node.html @@ -14,7 +14,7 @@ - + @@ -47,6 +47,6 @@ for more information, or try one of the community guides for Minecraft
    - + diff --git a/community/customization/panel.html b/community/customization/panel.html index 731ddf1c..5e00491b 100644 --- a/community/customization/panel.html +++ b/community/customization/panel.html @@ -14,7 +14,7 @@ - + @@ -51,6 +51,6 @@ This also applies to style sheets. The following sections explain how to do so.< ← Artisan CLI
    - + diff --git a/community/customization/wings.html b/community/customization/wings.html index 749c2d4c..894dd4a7 100644 --- a/community/customization/wings.html +++ b/community/customization/wings.html @@ -14,7 +14,7 @@ - + @@ -46,6 +46,6 @@ systemctl start wings
    - + diff --git a/community/games/minecraft.html b/community/games/minecraft.html index 976b5a84..61abf452 100644 --- a/community/games/minecraft.html +++ b/community/games/minecraft.html @@ -14,7 +14,7 @@ - + @@ -40,6 +40,6 @@ ← Creating a Custom Docker Image
    - + diff --git a/community/installation-guides/panel/centos7.html b/community/installation-guides/panel/centos7.html index b8375bac..f9e764cf 100644 --- a/community/installation-guides/panel/centos7.html +++ b/community/installation-guides/panel/centos7.html @@ -14,7 +14,7 @@ - + @@ -168,6 +168,6 @@ server { ← Community Guides and Tutorials
    - + diff --git a/community/installation-guides/panel/centos8.html b/community/installation-guides/panel/centos8.html index 4e5df255..24ecc6fd 100644 --- a/community/installation-guides/panel/centos8.html +++ b/community/installation-guides/panel/centos8.html @@ -14,7 +14,7 @@ - + @@ -151,6 +151,6 @@ server { ← CentOS 7
    - + diff --git a/community/installation-guides/panel/debian10.html b/community/installation-guides/panel/debian10.html index 979c0c5d..0a8e33a4 100644 --- a/community/installation-guides/panel/debian10.html +++ b/community/installation-guides/panel/debian10.html @@ -14,7 +14,7 @@ - + @@ -130,6 +130,6 @@ server { ← Debian 9
    - + diff --git a/community/installation-guides/panel/debian9.html b/community/installation-guides/panel/debian9.html index 2585f85b..1b4f8e34 100644 --- a/community/installation-guides/panel/debian9.html +++ b/community/installation-guides/panel/debian9.html @@ -14,7 +14,7 @@ - + @@ -137,6 +137,6 @@ server { ← CentOS 8
    - + diff --git a/community/installation-guides/panel/ubuntu1804.html b/community/installation-guides/panel/ubuntu1804.html index 66c2f825..31bce2f2 100644 --- a/community/installation-guides/panel/ubuntu1804.html +++ b/community/installation-guides/panel/ubuntu1804.html @@ -14,7 +14,7 @@ - + @@ -130,6 +130,6 @@ server { ← Debian 10
    - + diff --git a/community/installation-guides/panel/ubuntu2004.html b/community/installation-guides/panel/ubuntu2004.html index 9c0bb39d..5721e5c1 100644 --- a/community/installation-guides/panel/ubuntu2004.html +++ b/community/installation-guides/panel/ubuntu2004.html @@ -14,7 +14,7 @@ - + @@ -130,6 +130,6 @@ server { ← Ubuntu 18.04
    - + diff --git a/community/installation-guides/wings/centos7.html b/community/installation-guides/wings/centos7.html index 10dfc297..5c3001fa 100644 --- a/community/installation-guides/wings/centos7.html +++ b/community/installation-guides/wings/centos7.html @@ -14,7 +14,7 @@ - + @@ -55,6 +55,6 @@ firewall-cmd --reload ← Ubuntu 20.04
    - + diff --git a/community/installation-guides/wings/centos8.html b/community/installation-guides/wings/centos8.html index b5498cf9..663ca018 100644 --- a/community/installation-guides/wings/centos8.html +++ b/community/installation-guides/wings/centos8.html @@ -14,7 +14,7 @@ - + @@ -55,6 +55,6 @@ firewall-cmd --reload ← CentOS 7
    - + diff --git a/community/installation-guides/wings/debian10.html b/community/installation-guides/wings/debian10.html index b344857c..730fd511 100644 --- a/community/installation-guides/wings/debian10.html +++ b/community/installation-guides/wings/debian10.html @@ -14,7 +14,7 @@ - + @@ -54,6 +54,6 @@ systemctl start docker ← Debian 9
    - + diff --git a/community/installation-guides/wings/debian9.html b/community/installation-guides/wings/debian9.html index 953b7240..485431e2 100644 --- a/community/installation-guides/wings/debian9.html +++ b/community/installation-guides/wings/debian9.html @@ -14,7 +14,7 @@ - + @@ -54,6 +54,6 @@ systemctl start docker ← CentOS 8
    - + diff --git a/community/installation-guides/wings/ubuntu1804.html b/community/installation-guides/wings/ubuntu1804.html index e6f84937..5b4e1306 100644 --- a/community/installation-guides/wings/ubuntu1804.html +++ b/community/installation-guides/wings/ubuntu1804.html @@ -14,7 +14,7 @@ - + @@ -44,6 +44,6 @@ systemctl start docker ← Debian 10
    - + diff --git a/community/installation-guides/wings/ubuntu2004.html b/community/installation-guides/wings/ubuntu2004.html index 67a7169e..68063a3e 100644 --- a/community/installation-guides/wings/ubuntu2004.html +++ b/community/installation-guides/wings/ubuntu2004.html @@ -14,7 +14,7 @@ - + @@ -44,6 +44,6 @@ systemctl start docker ← Ubuntu 18.04
    - + diff --git a/community/tutorials/artisan.html b/community/tutorials/artisan.html index 5662d1ce..1781f67a 100644 --- a/community/tutorials/artisan.html +++ b/community/tutorials/artisan.html @@ -14,7 +14,7 @@ - + @@ -61,6 +61,6 @@ ← Creating a theme for Pterodactyl
    - + diff --git a/community/tutorials/custom_theme_setup.html b/community/tutorials/custom_theme_setup.html index 0d476993..838180ad 100644 --- a/community/tutorials/custom_theme_setup.html +++ b/community/tutorials/custom_theme_setup.html @@ -14,7 +14,7 @@ - + @@ -57,6 +57,6 @@ Open up your .env file and locate APP_THEME=pterodactylCreating a New Node
    - + diff --git a/daemon/0.6/configuration.html b/daemon/0.6/configuration.html index d8d25264..285c614d 100644 --- a/daemon/0.6/configuration.html +++ b/daemon/0.6/configuration.html @@ -14,7 +14,7 @@ - + @@ -100,6 +100,6 @@ a private instance and are willing to decrease some of the security measures.

    , ]

    # Enabling Cloudflare

    Enabling Cloudflare on the daemon isn't particularly useful since users do not connect directly to the daemon port, and users need an unproxied hostname to access any servers on the node. As a result it's not possible to conceal the IP address of your node machine, but some people want to enable it regardless.

    Cloudflare only proxies the default daemon port (8080) when using HTTP. In order to get the daemon to work with Cloudflare when HTTPS is enabled you must change the daemon port to one that Cloudflare will proxy such as 8443. Since Cloudflare only proxies HTTP/HTTPS traffic for non-enterprise plans you cannot proxy the SFTP port.

    - + diff --git a/daemon/0.6/debian_8_docker.html b/daemon/0.6/debian_8_docker.html index c2fd7109..1edc3a60 100644 --- a/daemon/0.6/debian_8_docker.html +++ b/daemon/0.6/debian_8_docker.html @@ -14,7 +14,7 @@ - + @@ -74,6 +74,6 @@ supported on this kernel currently. Run the command below to do so.

    Finally, update systemd and start docker using the following commands.

    systemctl daemon-reload
     service docker start
     

    Docker should now be running and reporting no errors if you run docker info!

    - + diff --git a/daemon/0.6/installing.html b/daemon/0.6/installing.html index ad6b4af6..42c125aa 100644 --- a/daemon/0.6/installing.html +++ b/daemon/0.6/installing.html @@ -14,7 +14,7 @@ - + @@ -105,6 +105,6 @@ StartLimitInterval=600 WantedBy=multi-user.target

    Then, run the commands below to reload systemd and start the daemon.

    systemctl enable --now wings
     
    - + diff --git a/daemon/0.6/kernel_modifications.html b/daemon/0.6/kernel_modifications.html index dfde2d20..5ddc8243 100644 --- a/daemon/0.6/kernel_modifications.html +++ b/daemon/0.6/kernel_modifications.html @@ -14,7 +14,7 @@ - + @@ -74,6 +74,6 @@ command and also the version of the kernel that we installed above. Once you've update grub and reboot, and you should be set.

    sudo update-grub
     sudo reboot
     

    # Boot from hard disk

    It's possible that even after you modified the GRUB configuration the server's still booted into a OVH kernel. If this happens to you, go to the OVH control panel and check the server's booting settings and make sure it's booting from hard disk instead of network boot.

    - + diff --git a/daemon/0.6/standalone_sftp.html b/daemon/0.6/standalone_sftp.html index 82cd11d6..895e3cf8 100644 --- a/daemon/0.6/standalone_sftp.html +++ b/daemon/0.6/standalone_sftp.html @@ -14,7 +14,7 @@ - + @@ -87,6 +87,6 @@ WantedBy=multi-user.target

    Then, run the command below to enable it in systemd and start the SFTP server.

    systemctl enable --now pterosftp
     

    # Customizing Startup

    If you're trying to pass additional arguments to the server when starting it using SystemD you'll want to modify the ExecStart line. Something like ExecStart=/srv/daemon/sftp-server --port 2022 for example.

    - + diff --git a/daemon/0.6/upgrade/0.4_to_0.5.html b/daemon/0.6/upgrade/0.4_to_0.5.html index c2bc2d71..763219a3 100644 --- a/daemon/0.6/upgrade/0.4_to_0.5.html +++ b/daemon/0.6/upgrade/0.4_to_0.5.html @@ -14,7 +14,7 @@ - + @@ -78,6 +78,6 @@ well as push the latest information to their configurations. Once this is done, and then boot it. If you have all daemons running and wish to update them all at once, remove the --node flag.

    Boot the Daemon one last time in the foreground, make sure it completes without errors, and then you can stop it and restart it using your service: sudo systemctl start wings.

    Thanks!

    You're all finished! Thanks for bearing with us, this update addresses a lot of flaws in the previous implementations of the software, and also prepares your data for the eventual migration to our new daemon — which is still in the works.

    - + diff --git a/daemon/0.6/upgrade/0.5.html b/daemon/0.6/upgrade/0.5.html index c8472b43..6fcff553 100644 --- a/daemon/0.6/upgrade/0.5.html +++ b/daemon/0.6/upgrade/0.5.html @@ -14,7 +14,7 @@ - + @@ -55,6 +55,6 @@ that, run the command below to pull down the latest files and unpack them in the components and then restart the daemon.

    npm update --only=production
     systemctl restart wings
     
    - + diff --git a/daemon/0.6/upgrade/0.5_to_0.6.html b/daemon/0.6/upgrade/0.5_to_0.6.html index 87976bb8..cef52bf3 100644 --- a/daemon/0.6/upgrade/0.5_to_0.6.html +++ b/daemon/0.6/upgrade/0.5_to_0.6.html @@ -14,7 +14,7 @@ - + @@ -65,6 +65,6 @@ you will not be able to see any console output.

    Run the following command ID of the node you just upgraded, or remove the --node flag entirely to rebuild on all nodes.

    php artisan p:server:rebuild --node=###
     

    Then, restart all of the servers using the following command, or by manually restarting them one at a time in the Panel.

    php artisan p:server:bulk-power restart --nodes=###
     
    - + diff --git a/daemon/0.6/upgrade/0.6.html b/daemon/0.6/upgrade/0.6.html index 34d234ba..6f518eee 100644 --- a/daemon/0.6/upgrade/0.6.html +++ b/daemon/0.6/upgrade/0.6.html @@ -14,7 +14,7 @@ - + @@ -57,6 +57,6 @@ you are running at least version 10. You can run node -v to check, You can safely ignore this output. Do not run the audit fix command, you will break your Daemon.

    npm install --only=production --no-audit --unsafe-perm
     systemctl restart wings
     
    - + diff --git a/daemon/0.6/upgrading.html b/daemon/0.6/upgrading.html index 0470ee4c..0ec1c10f 100644 --- a/daemon/0.6/upgrading.html +++ b/daemon/0.6/upgrading.html @@ -14,7 +14,7 @@ - + @@ -49,6 +49,6 @@ legacy

  • - + diff --git a/guides/mounts.html b/guides/mounts.html index 3ce500d2..1384b406 100644 --- a/guides/mounts.html +++ b/guides/mounts.html @@ -14,7 +14,7 @@ - + @@ -55,6 +55,6 @@ ← Creating SSL Certificates
    - + diff --git a/index.html b/index.html index bf061f96..5d5b37ff 100644 --- a/index.html +++ b/index.html @@ -14,7 +14,7 @@ - + @@ -59,6 +59,6 @@

    We're committed to building the best software that we can, and have been working with game management panels for almost five years now. We've seen games change, and are committed to making the most flexible, lightweight, and future proof panel that we can.

    - + diff --git a/ops/publish_release.html b/ops/publish_release.html index e099cc5f..97069caa 100644 --- a/ops/publish_release.html +++ b/ops/publish_release.html @@ -14,7 +14,7 @@ - + @@ -95,6 +95,6 @@ gpg --detach-sig --output panel.asc panel.tar.gz
    - + diff --git a/panel/0.7/configuration.html b/panel/0.7/configuration.html index 86b11f3f..6aa539c9 100644 --- a/panel/0.7/configuration.html +++ b/panel/0.7/configuration.html @@ -14,7 +14,7 @@ - + @@ -85,6 +85,6 @@ also be set using the .env file. The default value is 50,000<

    # Disable or Modify ReCaptcha

    To disable reCAPTCHA on login or password reset, simply set RECAPTCHA_ENABLED=false in the environment file. This change will take effect immediately.

    # Using Your Own Keys

    Pterodactyl comes preconfigured using a public set of reCAPTCHA keys but you may wish to use your own site specific keys. To do so, follow the instructions below.

    1. Visit Google's reCAPTCHA Admin Console.
    2. Click "Register New Site" and fill in a name for your keys.
    3. Choose reCAPTCHA v2 and ensure that the option for Invisible is selected.
    4. Include the domain that your panel is located on.
    5. On the next page displayed, locate the "Site Key" and "Secret Key". In Pterodactyl's control panel click on "Settings" and then the "Advanced" tab. Enter the keys in the boxes "Site Key" and "Secret Key", respectively.

    Disabling Domain Verification

    If you do not want reCAPTCHA to verify the domain making the validation request you can uncheck "Verify the origin of reCaptcha solution" under "Advanced Settings" after generating your key.

    - + diff --git a/panel/0.7/getting_started.html b/panel/0.7/getting_started.html index f712c606..5d2de164 100644 --- a/panel/0.7/getting_started.html +++ b/panel/0.7/getting_started.html @@ -14,7 +14,7 @@ - + @@ -144,6 +144,6 @@ WantedBy=multi-user.target when the service starts.

    If you are are using redis for your system, you will want to make sure to enable that it will start on boot. You can do that by running the following command:

    sudo systemctl enable --now redis-server
     

    Finally, enable the service and set it to boot on machine start.

    sudo systemctl enable --now pteroq.service
     

    # Next Step: Webserver Configuration

    - + diff --git a/panel/0.7/troubleshooting.html b/panel/0.7/troubleshooting.html index b2ec1449..ac58916c 100644 --- a/panel/0.7/troubleshooting.html +++ b/panel/0.7/troubleshooting.html @@ -14,7 +14,7 @@ - + @@ -99,6 +99,6 @@ semodule -i http_port_t.pp firewall-cmd --reload

    restart docker and wings after running these to be sure the rules are applied.

    # Database Errors

    # DatabaseController.php:142

    production.ERROR: ErrorException: Undefined variable: host in /var/www/pterodactyl/app/Http/Controllers/Admin/DatabaseController.php:142
     

    The database user you are trying to use doesn't have appropriate grants/has used incorrect password.

    - + diff --git a/panel/0.7/upgrade/0.6_to_0.7.html b/panel/0.7/upgrade/0.6_to_0.7.html index 334bde0e..1f22dedf 100644 --- a/panel/0.7/upgrade/0.6_to_0.7.html +++ b/panel/0.7/upgrade/0.6_to_0.7.html @@ -14,7 +14,7 @@ - + @@ -85,6 +85,6 @@ is www-data but can vary from system to system — sometimes being # If using Apache on CentOS chown -R apache:apache *
    - + diff --git a/panel/0.7/upgrade/0.7.html b/panel/0.7/upgrade/0.7.html index e539365e..370e1456 100644 --- a/panel/0.7/upgrade/0.7.html +++ b/panel/0.7/upgrade/0.7.html @@ -14,7 +14,7 @@ - + @@ -75,6 +75,6 @@ is www-data but can vary from system to system — sometimes being # If using Apache on CentOS chown -R apache:apache *
    - + diff --git a/panel/0.7/upgrading.html b/panel/0.7/upgrading.html index 4ca90445..8c041760 100644 --- a/panel/0.7/upgrading.html +++ b/panel/0.7/upgrading.html @@ -14,7 +14,7 @@ - + @@ -57,6 +57,6 @@ php artisan down php artisan up

    # Restarting Queue Workers

    After every update, you should restart the queue worker to ensure that the new code is being loaded in and used.

    php artisan queue:restart
     

    # Version Specific Guides

    - + diff --git a/panel/0.7/webserver_configuration.html b/panel/0.7/webserver_configuration.html index 41cf6c36..c8e12dea 100644 --- a/panel/0.7/webserver_configuration.html +++ b/panel/0.7/webserver_configuration.html @@ -14,7 +14,7 @@ - + @@ -203,6 +203,6 @@ below! You only need to run systemctl restart httpd.

    sudo a2enmod rewrite systemctl restart apache2
    - + diff --git a/panel/1.0/additional_configuration.html b/panel/1.0/additional_configuration.html index 359ea8c5..865aee11 100644 --- a/panel/1.0/additional_configuration.html +++ b/panel/1.0/additional_configuration.html @@ -14,7 +14,7 @@ - + @@ -66,6 +66,6 @@ USE panel; UPDATE settings SET value = 'false' WHERE 'key' = 'settings::recaptcha:enabled';

    If the command returns with Query OK, 0 rows affected (0.000 sec) you need to use the .env method to disable reCAPTCHA

    - + diff --git a/panel/1.0/getting_started.html b/panel/1.0/getting_started.html index be0a72ea..e3d5ed89 100644 --- a/panel/1.0/getting_started.html +++ b/panel/1.0/getting_started.html @@ -14,7 +14,7 @@ - + @@ -137,6 +137,6 @@ WantedBy=multi-user.target when the service starts.

    If you are are using redis for your system, you will want to make sure to enable that it will start on boot. You can do that by running the following command:

    sudo systemctl enable --now redis-server
     

    Finally, enable the service and set it to boot on machine start.

    sudo systemctl enable --now pteroq.service
     

    # Next Step: Webserver Configuration

    - + diff --git a/panel/1.0/upgrade/0.7_to_1.0.html b/panel/1.0/upgrade/0.7_to_1.0.html index cdac30b9..7641fc41 100644 --- a/panel/1.0/upgrade/0.7_to_1.0.html +++ b/panel/1.0/upgrade/0.7_to_1.0.html @@ -14,7 +14,7 @@ - + @@ -95,6 +95,6 @@ php artisan up

    # Switch to Wings

    We've deprecated the old Node.js daemon in favor of Wings, our new server control plane written in Go. This new system is significantly faster, easier to install, and much smaller. All you need to do is install a single binary on your system and configure it to run on boot.

    You cannot use the old daemon to run servers with Pterodactyl Panel 1.0.

    Please see Migrating to Wings for instructions.

    - + diff --git a/panel/1.0/upgrade/1.0.html b/panel/1.0/upgrade/1.0.html index ab3f4f9c..12c64e74 100644 --- a/panel/1.0/upgrade/1.0.html +++ b/panel/1.0/upgrade/1.0.html @@ -14,7 +14,7 @@ - + @@ -75,6 +75,6 @@ is www-data but can vary from system to system — sometimes being chown -R apache:apache *

    # Restarting Queue Workers

    After every update you should restart the queue worker to ensure that the new code is loaded in and used.

    php artisan queue:restart
     
    - + diff --git a/panel/1.0/upgrading.html b/panel/1.0/upgrading.html index b996d861..7f216b64 100644 --- a/panel/1.0/upgrading.html +++ b/panel/1.0/upgrading.html @@ -14,7 +14,7 @@ - + @@ -58,6 +58,6 @@ php artisan down php artisan up

    # Restarting Queue Workers

    After every update you should restart the queue worker to ensure that the new code is loaded in and used.

    php artisan queue:restart
     

    # Version Specific Guides

    - + diff --git a/panel/1.0/webserver_configuration.html b/panel/1.0/webserver_configuration.html index cfeae36d..fbbb67d3 100644 --- a/panel/1.0/webserver_configuration.html +++ b/panel/1.0/webserver_configuration.html @@ -14,7 +14,7 @@ - + @@ -49,8 +49,8 @@ legacy

  • # Webserver Configuration

    DANGER

    You should remove the default Apache or NGINX configuration as it will expose application secrets to malicious -users by default.

    # NGINX

    You should paste the contents of the file below, replacing <domain> with your domain name being used in a file called -pterodactyl.conf and place it in /etc/nginx/sites-available/, or — if on CentOS, /etc/nginx/conf.d/.

    # NGINX With SSL

    This configuration assumes that you will be using SSL on both the Panel and Daemons for significantly improved communication +users by default.

    # NGINX

    You should paste the contents of the file below, replacing <domain> with the domain you intend to use for the panel in a file called +pterodactyl.conf, and place it in /etc/nginx/sites-available/, or — if on CentOS, /etc/nginx/conf.d/.

    # NGINX With SSL

    This configuration assumes that you will be using SSL on both the Panel and Daemons for significantly improved communication security between users and the Panel. You will need to get a valid SSL certificate which can be done for free by using Let's Encrypt.

    WARNING

    When using the SSL configuration you MUST create SSL certificates, otherwise your NGINX will fail to start. See Creating SSL Certificates documentation page for how to create these certificates before continuing.





     





     














     
     








































    server_tokens off;
     
    @@ -167,8 +167,8 @@ server {
     
     # You need to restart nginx regardless of OS.
     systemctl restart nginx
    -

    # Apache

    You should paste the contents of the file below, replacing <domain> with your domain name being used in a file called -pterodactyl.conf and place it in /etc/apache2/sites-available, or — if on CentOS, /etc/httpd/conf.d/.

    Note: When using Apache, make sure you have the libapache2-mod-php package installed or else PHP will not display on your webserver.

    # Apache With SSL

    Like the nginx configuration, this assumes you will be using SSL on both the Panel and Daemons for improved security.

    WARNING

    When using the SSL configuration you MUST create SSL certificates, otherwise your Apache will fail to start. See Creating SSL Certificates documentation page for how to create these certificates before continuing.


     





     








     
     


    <VirtualHost *:80>
    +

    # Apache

    You should paste the contents of the file below, replacing <domain> with the domain you intend to use for the panel in a file called +pterodactyl.conf, and place it in /etc/apache2/sites-available, or — if on CentOS, /etc/httpd/conf.d/.

    Note: When using Apache, make sure you have the libapache2-mod-php package installed or else PHP will not display on your webserver.

    # Apache With SSL

    Like the nginx configuration, this assumes you will be using SSL on both the Panel and Daemons for improved security.

    WARNING

    When using the SSL configuration you MUST create SSL certificates, otherwise your Apache will fail to start. See Creating SSL Certificates documentation page for how to create these certificates before continuing.


     





     








     
     


    <VirtualHost *:80>
       ServerName <domain>
       RewriteEngine On
       RewriteCond %{HTTPS} !=on
    @@ -203,6 +203,6 @@ below! You only need to run systemctl restart httpd.

    sudo a2enmod rewrite systemctl restart apache2
    - + diff --git a/project/about.html b/project/about.html index c35d1871..3dea243d 100644 --- a/project/about.html +++ b/project/about.html @@ -14,7 +14,7 @@ - + @@ -123,6 +123,6 @@ gkSI5o2kam0QGYUhqg== ← Introduction
    - + diff --git a/project/community.html b/project/community.html index 8694b5e6..904628d4 100644 --- a/project/community.html +++ b/project/community.html @@ -14,7 +14,7 @@ - + @@ -73,6 +73,6 @@ directly if they're not already involved in a discussion with you.

    Terminology
    - + diff --git a/project/introduction.html b/project/introduction.html index 99350fb8..203e2057 100644 --- a/project/introduction.html +++ b/project/introduction.html @@ -14,7 +14,7 @@ - + @@ -58,6 +58,6 @@ code base and hunt for security issues. If you come across anything that raises hesitate to reach out directly to support@pterodactyl.io. We ask that you please be responsible when disclosing any security concerns and do not report them on our public facing bug tracker.

    - + diff --git a/project/terms.html b/project/terms.html index 3bf529d2..5ca3113d 100644 --- a/project/terms.html +++ b/project/terms.html @@ -14,7 +14,7 @@ - + @@ -57,6 +57,6 @@ created on nodes, and you can have multiple servers per node.

    Con ← About

    - + diff --git a/tutorials/creating_ssl_certificates.html b/tutorials/creating_ssl_certificates.html index a973eaba..e661ee39 100644 --- a/tutorials/creating_ssl_certificates.html +++ b/tutorials/creating_ssl_certificates.html @@ -14,7 +14,7 @@ - + @@ -87,6 +87,6 @@ This will happen especially if you're running NGINX instead of Apache. The solut ← Setting up MySQL
    - + diff --git a/tutorials/mysql_setup.html b/tutorials/mysql_setup.html index 0924b0b4..468f1bcd 100644 --- a/tutorials/mysql_setup.html +++ b/tutorials/mysql_setup.html @@ -14,7 +14,7 @@ - + @@ -79,6 +79,6 @@ bind-address=0.0.0.0 ← Community Standards
    - + diff --git a/wings/1.0/configuration.html b/wings/1.0/configuration.html index 811f5b8d..548d6816 100644 --- a/wings/1.0/configuration.html +++ b/wings/1.0/configuration.html @@ -14,7 +14,7 @@ - + @@ -55,6 +55,6 @@ you configure something incorrectly. Proceed only if you know what each configur username: "registryusername" password: "registrypassword"
    - + diff --git a/wings/1.0/installing.html b/wings/1.0/installing.html index cc2d3414..86522a51 100644 --- a/wings/1.0/installing.html +++ b/wings/1.0/installing.html @@ -14,7 +14,7 @@ - + @@ -100,6 +100,6 @@ StartLimitInterval=600 WantedBy=multi-user.target

    Then, run the commands below to reload systemd and start Wings.

    systemctl enable --now wings
     
    - + diff --git a/wings/1.0/migrating.html b/wings/1.0/migrating.html index 2b910ae2..6566e4a0 100644 --- a/wings/1.0/migrating.html +++ b/wings/1.0/migrating.html @@ -14,7 +14,7 @@ - + @@ -98,6 +98,6 @@ systemctl enable --now wings

    What if Wings doesn't start?

    If you encounter issues starting Wings at this point, run the following command to start Wings directly and check for any specific error output.

    sudo wings --debug
     
    - + diff --git a/wings/1.0/upgrading.html b/wings/1.0/upgrading.html index 5cb269aa..d77636e6 100644 --- a/wings/1.0/upgrading.html +++ b/wings/1.0/upgrading.html @@ -14,7 +14,7 @@ - + @@ -53,6 +53,6 @@

    # Restart Process

    Finally, restart the wings process. Your running servers will not be affected and any open connections to the instance will re-connect automatically.

    systemctl restart wings
     
    - +