From 7ac56db60a17a4b6b3d64e8d142472640fd128e4 Mon Sep 17 00:00:00 2001 From: DaneEveritt Date: Tue, 14 Sep 2021 04:16:05 +0000 Subject: [PATCH] deploy: 917ce6180506492b915d92d568ffdbc317e2f69e --- 404.html | 12 ++++++------ assets/js/{app.3a188810.js => app.ac20086e.js} | 2 +- 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 ++-- daemon/0.6/configuration.html | 12 ++++++------ daemon/0.6/debian_8_docker.html | 12 ++++++------ daemon/0.6/installing.html | 12 ++++++------ daemon/0.6/kernel_modifications.html | 12 ++++++------ daemon/0.6/standalone_sftp.html | 12 ++++++------ daemon/0.6/upgrade/0.4_to_0.5.html | 12 ++++++------ daemon/0.6/upgrade/0.5.html | 12 ++++++------ daemon/0.6/upgrade/0.5_to_0.6.html | 12 ++++++------ daemon/0.6/upgrade/0.6.html | 12 ++++++------ daemon/0.6/upgrading.html | 12 ++++++------ guides/mounts.html | 12 ++++++------ guides/php_upgrade.html | 12 ++++++------ index.html | 12 ++++++------ ops/publish_release.html | 12 ++++++------ panel/0.7/configuration.html | 12 ++++++------ panel/0.7/getting_started.html | 12 ++++++------ panel/0.7/troubleshooting.html | 12 ++++++------ panel/0.7/upgrade/0.6_to_0.7.html | 12 ++++++------ panel/0.7/upgrade/0.7.html | 12 ++++++------ panel/0.7/upgrading.html | 12 ++++++------ panel/0.7/webserver_configuration.html | 12 ++++++------ panel/1.0/additional_configuration.html | 12 ++++++------ panel/1.0/getting_started.html | 12 ++++++------ panel/1.0/legacy_upgrade.html | 12 ++++++------ panel/1.0/troubleshooting.html | 12 ++++++------ panel/1.0/updating.html | 12 ++++++------ panel/1.0/webserver_configuration.html | 12 ++++++------ project/about.html | 12 ++++++------ project/community.html | 12 ++++++------ project/introduction.html | 12 ++++++------ project/terms.html | 12 ++++++------ tutorials/creating_ssl_certificates.html | 12 ++++++------ tutorials/mysql_setup.html | 12 ++++++------ wings/1.0/configuration.html | 12 ++++++------ wings/1.0/installing.html | 12 ++++++------ wings/1.0/migrating.html | 12 ++++++------ wings/1.0/upgrading.html | 12 ++++++------ 59 files changed, 269 insertions(+), 269 deletions(-) rename assets/js/{app.3a188810.js => app.ac20086e.js} (99%) diff --git a/404.html b/404.html index 0bcd3873..00574f7b 100644 --- a/404.html +++ b/404.html @@ -15,7 +15,7 @@ - + @@ -36,14 +36,14 @@ (opens new window)
- + diff --git a/assets/js/app.3a188810.js b/assets/js/app.ac20086e.js similarity index 99% rename from assets/js/app.3a188810.js rename to assets/js/app.ac20086e.js index 0fae44d6..947e9179 100644 --- a/assets/js/app.3a188810.js +++ b/assets/js/app.ac20086e.js @@ -8,4 +8,4 @@ * vue-router v3.5.1 * (c) 2021 Evan You * @license MIT - */function a(t,e){for(var n in e)t[n]=e[n];return t}var s=/[!'()*]/g,u=function(t){return"%"+t.charCodeAt(0).toString(16)},l=/%2C/g,c=function(t){return encodeURIComponent(t).replace(s,u).replace(l,",")};function f(t){try{return decodeURIComponent(t)}catch(t){0}return t}var p=function(t){return null==t||"object"==typeof t?t:String(t)};function d(t){var e={};return(t=t.trim().replace(/^(\?|#|&)/,""))?(t.split("&").forEach((function(t){var n=t.replace(/\+/g," ").split("="),r=f(n.shift()),i=n.length>0?f(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 h(t){var e=t?Object.keys(t).map((function(e){var n=t[e];if(void 0===n)return"";if(null===n)return c(e);if(Array.isArray(n)){var r=[];return n.forEach((function(t){void 0!==t&&(null===t?r.push(c(e)):r.push(c(e)+"="+c(t)))})),r.join("&")}return c(e)+"="+c(n)})).filter((function(t){return t.length>0})).join("&"):null;return e?"?"+e:""}var v=/\/?$/;function g(t,e,n,r){var i=r&&r.options.stringifyQuery,o=e.query||{};try{o=m(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:_(e,i),matched:t?b(t):[]};return n&&(a.redirectedFrom=_(n,i)),Object.freeze(a)}function m(t){if(Array.isArray(t))return t.map(m);if(t&&"object"==typeof t){var e={};for(var n in t)e[n]=m(t[n]);return e}return t}var y=g(null,{path:"/"});function b(t){for(var e=[];t;)e.unshift(t),t=t.parent;return e}function _(t,e){var n=t.path,r=t.query;void 0===r&&(r={});var i=t.hash;return void 0===i&&(i=""),(n||"/")+(e||h)(r)+i}function w(t,e,n){return e===y?t===e:!!e&&(t.path&&e.path?t.path.replace(v,"")===e.path.replace(v,"")&&(n||t.hash===e.hash&&x(t.query,e.query)):!(!t.name||!e.name)&&(t.name===e.name&&(n||t.hash===e.hash&&x(t.query,e.query)&&x(t.params,e.params))))}function x(t,e){if(void 0===t&&(t={}),void 0===e&&(e={}),!t||!e)return t===e;var n=Object.keys(t).sort(),r=Object.keys(e).sort();return n.length===r.length&&n.every((function(n,i){var o=t[n];if(r[i]!==n)return!1;var a=e[n];return null==o||null==a?o===a:"object"==typeof o&&"object"==typeof a?x(o,a):String(o)===String(a)}))}function S(t){for(var e=0;e=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=l.path?k(l.path,c,n||i.append):c,h=function(t,e,n){void 0===e&&(e={});var r,i=n||d;try{r=i(t||"")}catch(t){r={}}for(var o in e){var a=e[o];r[o]=Array.isArray(a)?a.map(p):p(a)}return r}(l.query,i.query,r&&r.options.parseQuery),v=i.hash||l.hash;return v&&"#"!==v.charAt(0)&&(v="#"+v),{_normalized:!0,path:f,query:h,hash:v}}var G,K=function(){},X={name:"RouterLink",props:{to:{type:[String,Object],required:!0},tag:{type:String,default:"a"},custom:Boolean,exact:Boolean,exactPath:Boolean,append:Boolean,replace:Boolean,activeClass:String,exactActiveClass:String,ariaCurrentValue:{type:String,default:"page"},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,s=i.route,u=i.href,l={},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,m=null==this.exactActiveClass?d:this.exactActiveClass,y=s.redirectedFrom?g(null,W(s.redirectedFrom),null,n):s;l[m]=w(r,y,this.exactPath),l[h]=this.exact||this.exactPath?l[m]:function(t,e){return 0===t.path.replace(v,"/").indexOf(e.path.replace(v,"/"))&&(!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,y);var b=l[m]?this.ariaCurrentValue:null,_=function(t){Q(t)&&(e.replace?n.replace(o,K):n.push(o,K))},x={click:Q};Array.isArray(this.event)?this.event.forEach((function(t){x[t]=_})):x[this.event]=_;var S={class:l},C=!this.$scopedSlots.$hasNormal&&this.$scopedSlots.default&&this.$scopedSlots.default({href:u,route:s,navigate:_,isActive:l[h],isExactActive:l[m]});if(C){if(1===C.length)return C[0];if(C.length>1||!C.length)return 0===C.length?t():t("span",{},C)}if("a"===this.tag)S.on=x,S.attrs={href:u,"aria-current":b};else{var O=function t(e){var n;if(e)for(var r=0;r-1&&(s.params[p]=n.params[p]);return s.path=H(c.path,s.params),u(c,s,a)}if(s.path){s.params={};for(var d=0;d=t.length?n():t[i]?e(t[i],(function(){r(i+1)})):r(i+1)};r(0)}var xt={redirected:2,aborted:4,cancelled:8,duplicated:16};function St(t,e){return Ot(t,e,xt.redirected,'Redirected when going from "'+t.fullPath+'" to "'+function(t){if("string"==typeof t)return t;if("path"in t)return t.path;var e={};return kt.forEach((function(n){n in t&&(e[n]=t[n])})),JSON.stringify(e,null,2)}(e)+'" via a navigation guard.')}function Ct(t,e){return Ot(t,e,xt.cancelled,'Navigation cancelled from "'+t.fullPath+'" to "'+e.fullPath+'" with a new navigation.')}function Ot(t,e,n,r){var i=new Error(r);return i._isRouter=!0,i.from=t,i.to=e,i.type=n,i}var kt=["params","query","hash"];function Pt(t){return Object.prototype.toString.call(t).indexOf("Error")>-1}function Et(t,e){return Pt(t)&&t._isRouter&&(null==e||t.type===e)}function jt(t){return function(e,n,r){var i=!1,o=0,a=null;At(t,(function(t,e,n,s){if("function"==typeof t&&void 0===t.cid){i=!0,o++;var u,l=Lt((function(e){var i;((i=e).__esModule||Tt&&"Module"===i[Symbol.toStringTag])&&(e=e.default),t.resolved="function"==typeof e?e:G.extend(e),n.components[s]=e,--o<=0&&r()})),c=Lt((function(t){var e="Failed to resolve async component "+s+": "+t;a||(a=Pt(t)?t:new Error(e),r(a))}));try{u=t(l,c)}catch(t){c(t)}if(u)if("function"==typeof u.then)u.then(l,c);else{var f=u.component;f&&"function"==typeof f.then&&f.then(l,c)}}})),i||r()}}function At(t,e){return $t(t.map((function(t){return Object.keys(t.components).map((function(n){return e(t.components[n],t.instances[n],t,n)}))})))}function $t(t){return Array.prototype.concat.apply([],t)}var Tt="function"==typeof Symbol&&"symbol"==typeof Symbol.toStringTag;function Lt(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 Rt=function(t,e){this.router=t,this.base=function(t){if(!t)if(J){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=y,this.pending=null,this.ready=!1,this.readyCbs=[],this.readyErrorCbs=[],this.errorCbs=[],this.listeners=[]};function Dt(t,e,n,r){var i=At(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 $t(r?i.reverse():i)}function It(t,e){if(e)return function(){return t.apply(e,arguments)}}Rt.prototype.listen=function(t){this.cb=t},Rt.prototype.onReady=function(t,e){this.ready?t():(this.readyCbs.push(t),e&&this.readyErrorCbs.push(e))},Rt.prototype.onError=function(t){this.errorCbs.push(t)},Rt.prototype.transitionTo=function(t,e,n){var r,i=this;try{r=this.router.match(t,this.current)}catch(t){throw this.errorCbs.forEach((function(e){e(t)})),t}var o=this.current;this.confirmTransition(r,(function(){i.updateRoute(r),e&&e(r),i.ensureURL(),i.router.afterHooks.forEach((function(t){t&&t(r,o)})),i.ready||(i.ready=!0,i.readyCbs.forEach((function(t){t(r)})))}),(function(t){n&&n(t),t&&!i.ready&&(Et(t,xt.redirected)&&o===y||(i.ready=!0,i.readyErrorCbs.forEach((function(e){e(t)}))))}))},Rt.prototype.confirmTransition=function(t,e,n){var r=this,i=this.current;this.pending=t;var o,a,s=function(t){!Et(t)&&Pt(t)&&(r.errorCbs.length?r.errorCbs.forEach((function(e){e(t)})):console.error(t)),n&&n(t)},u=t.matched.length-1,l=i.matched.length-1;if(w(t,i)&&u===l&&t.matched[u]===i.matched[l])return this.ensureURL(),s(((a=Ot(o=i,t,xt.duplicated,'Avoided redundant navigation to current location: "'+o.fullPath+'".')).name="NavigationDuplicated",a));var c=function(t,e){var n,r=Math.max(t.length,e.length);for(n=0;n0)){var e=this.router,n=e.options.scrollBehavior,r=yt&&n;r&&this.listeners.push(ut());var i=function(){var n=t.current,i=Nt(t.base);t.current===y&&i===t._startLocation||t.transitionTo(i,(function(t){r&<(e,t,n,!0)}))};window.addEventListener("popstate",i),this.listeners.push((function(){window.removeEventListener("popstate",i)}))}},e.prototype.go=function(t){window.history.go(t)},e.prototype.push=function(t,e,n){var r=this,i=this.current;this.transitionTo(t,(function(t){bt(P(r.base+t.fullPath)),lt(r.router,t,i,!1),e&&e(t)}),n)},e.prototype.replace=function(t,e,n){var r=this,i=this.current;this.transitionTo(t,(function(t){_t(P(r.base+t.fullPath)),lt(r.router,t,i,!1),e&&e(t)}),n)},e.prototype.ensureURL=function(t){if(Nt(this.base)!==this.current.fullPath){var e=P(this.base+this.current.fullPath);t?bt(e):_t(e)}},e.prototype.getCurrentLocation=function(){return Nt(this.base)},e}(Rt);function Nt(t){var e=window.location.pathname;return t&&0===e.toLowerCase().indexOf(t.toLowerCase())&&(e=e.slice(t.length)),(e||"/")+window.location.search+window.location.hash}var Ut=function(t){function e(e,n,r){t.call(this,e,n),r&&function(t){var e=Nt(t);if(!/^\/#/.test(e))return window.location.replace(P(t+"/#"+e)),!0}(this.base)||Ft()}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.setupListeners=function(){var t=this;if(!(this.listeners.length>0)){var e=this.router.options.scrollBehavior,n=yt&&e;n&&this.listeners.push(ut());var r=function(){var e=t.current;Ft()&&t.transitionTo(Bt(),(function(r){n&<(t.router,r,e,!0),yt||Vt(r.fullPath)}))},i=yt?"popstate":"hashchange";window.addEventListener(i,r),this.listeners.push((function(){window.removeEventListener(i,r)}))}},e.prototype.push=function(t,e,n){var r=this,i=this.current;this.transitionTo(t,(function(t){qt(t.fullPath),lt(r.router,t,i,!1),e&&e(t)}),n)},e.prototype.replace=function(t,e,n){var r=this,i=this.current;this.transitionTo(t,(function(t){Vt(t.fullPath),lt(r.router,t,i,!1),e&&e(t)}),n)},e.prototype.go=function(t){window.history.go(t)},e.prototype.ensureURL=function(t){var e=this.current.fullPath;Bt()!==e&&(t?qt(e):Vt(e))},e.prototype.getCurrentLocation=function(){return Bt()},e}(Rt);function Ft(){var t=Bt();return"/"===t.charAt(0)||(Vt("/"+t),!1)}function Bt(){var t=window.location.href,e=t.indexOf("#");return e<0?"":t=t.slice(e+1)}function zt(t){var e=window.location.href,n=e.indexOf("#");return(n>=0?e.slice(0,n):e)+"#"+t}function qt(t){yt?bt(zt(t)):window.location.hash=t}function Vt(t){yt?_t(zt(t)):window.location.replace(zt(t))}var Ht=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(){var t=e.current;e.index=n,e.updateRoute(r),e.router.afterHooks.forEach((function(e){e&&e(r,t)}))}),(function(t){Et(t,xt.duplicated)&&(e.index=n)}))}},e.prototype.getCurrentLocation=function(){var t=this.stack[this.stack.length-1];return t?t.fullPath:"/"},e.prototype.ensureURL=function(){},e}(Rt),Wt=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&&!yt&&!1!==t.fallback,this.fallback&&(e="hash"),J||(e="abstract"),this.mode=e,e){case"history":this.history=new Mt(this,t.base);break;case"hash":this.history=new Ut(this,t.base,this.fallback);break;case"abstract":this.history=new Ht(this,t.base);break;default:0}},Gt={currentRoute:{configurable:!0}};function Kt(t,e){return t.push(e),function(){var n=t.indexOf(e);n>-1&&t.splice(n,1)}}Wt.prototype.match=function(t,e,n){return this.matcher.match(t,e,n)},Gt.currentRoute.get=function(){return this.history&&this.history.current},Wt.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),e.app||e.history.teardown()})),!this.app){this.app=t;var n=this.history;if(n instanceof Mt||n instanceof Ut){var r=function(t){n.setupListeners(),function(t){var r=n.current,i=e.options.scrollBehavior;yt&&i&&"fullPath"in t&<(e,t,r,!1)}(t)};n.transitionTo(n.getCurrentLocation(),r,r)}n.listen((function(t){e.apps.forEach((function(e){e._route=t}))}))}},Wt.prototype.beforeEach=function(t){return Kt(this.beforeHooks,t)},Wt.prototype.beforeResolve=function(t){return Kt(this.resolveHooks,t)},Wt.prototype.afterEach=function(t){return Kt(this.afterHooks,t)},Wt.prototype.onReady=function(t,e){this.history.onReady(t,e)},Wt.prototype.onError=function(t){this.history.onError(t)},Wt.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)},Wt.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)},Wt.prototype.go=function(t){this.history.go(t)},Wt.prototype.back=function(){this.go(-1)},Wt.prototype.forward=function(){this.go(1)},Wt.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]}))}))):[]},Wt.prototype.resolve=function(t,e,n){var r=W(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?P(t+"/"+r):r}(this.history.base,o,this.mode),normalizedTo:r,resolved:i}},Wt.prototype.getRoutes=function(){return this.matcher.getRoutes()},Wt.prototype.addRoute=function(t,e){this.matcher.addRoute(t,e),this.history.current!==y&&this.history.transitionTo(this.history.getCurrentLocation())},Wt.prototype.addRoutes=function(t){this.matcher.addRoutes(t),this.history.current!==y&&this.history.transitionTo(this.history.getCurrentLocation())},Object.defineProperties(Wt.prototype,Gt),Wt.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",C),e.component("RouterLink",X);var i=e.config.optionMergeStrategies;i.beforeRouteEnter=i.beforeRouteLeave=i.beforeRouteUpdate=i.created}},Wt.version="3.5.1",Wt.isNavigationFailure=Et,Wt.NavigationFailureType=xt,Wt.START_LOCATION=y,J&&window.Vue&&window.Vue.use(Wt);var Xt=Wt;n(51),n(197),n(199),n(144),n(145),n(71),n(110),n(52);function Qt(t){t.locales&&Object.keys(t.locales).forEach((function(e){t.locales[e].path=e})),Object.freeze(t)}n(201),n(146),n(50),n(202),n(70),n(44),n(61),n(93);function Jt(t){return(Jt="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 Yt=n(31),Zt={DropdownLink:function(){return Promise.all([n.e(0),n.e(7)]).then(n.bind(null,324))},DropdownTransition:function(){return Promise.all([n.e(0),n.e(18)]).then(n.bind(null,321))},Home:function(){return Promise.all([n.e(2),n.e(8)]).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,366))},NavLink:function(){return n.e(10).then(n.bind(null,315))},NavLinks:function(){return Promise.all([n.e(0),n.e(6)]).then(n.bind(null,325))},Navbar:function(){return Promise.all([n.e(0),n.e(5)]).then(n.bind(null,342))},NotFound:function(){return n.e(25).then(n.bind(null,367))},Page:function(){return n.e(15).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(9)]).then(n.bind(null,344))},SidebarButton:function(){return n.e(26).then(n.bind(null,333))},SidebarGroup:function(){return Promise.all([n.e(0),n.e(1)]).then(n.bind(null,345))},SidebarLink:function(){return n.e(16).then(n.bind(null,334))},SlickCarousel:function(){return Promise.all([n.e(2),n.e(27)]).then(n.bind(null,330))},VersionSelect:function(){return n.e(11).then(n.bind(null,346))},VersionSelectItem:function(){return n.e(28).then(n.bind(null,332))}},te={"v-680eebc3":function(){return n.e(29).then(n.bind(null,368))},"v-4e72e1d8":function(){return n.e(30).then(n.bind(null,369))},"v-7d127123":function(){return n.e(31).then(n.bind(null,370))},"v-4a1e6e3a":function(){return n.e(12).then(n.bind(null,371))},"v-10fe793a":function(){return n.e(32).then(n.bind(null,372))},"v-622f23e3":function(){return n.e(17).then(n.bind(null,373))},"v-ef34fffa":function(){return n.e(33).then(n.bind(null,374))},"v-090070fa":function(){return n.e(34).then(n.bind(null,375))},"v-67c3f2ba":function(){return n.e(14).then(n.bind(null,376))},"v-0af75f63":function(){return n.e(35).then(n.bind(null,377))},"v-cc322cfa":function(){return n.e(36).then(n.bind(null,378))},"v-4d5d0f9b":function(){return n.e(37).then(n.bind(null,379))},"v-22a01883":function(){return n.e(38).then(n.bind(null,380))},"v-047b1c1f":function(){return n.e(39).then(n.bind(null,381))},"v-030337f1":function(){return n.e(40).then(n.bind(null,382))},"v-26037fe3":function(){return n.e(41).then(n.bind(null,383))},"v-9619ebfa":function(){return n.e(42).then(n.bind(null,384))},"v-432db923":function(){return n.e(43).then(n.bind(null,385))},"v-3dac3903":function(){return n.e(44).then(n.bind(null,386))},"v-e046bab2":function(){return n.e(45).then(n.bind(null,387))},"v-e336830e":function(){return n.e(46).then(n.bind(null,388))},"v-7c7b3203":function(){return n.e(47).then(n.bind(null,389))},"v-07a77f72":function(){return n.e(48).then(n.bind(null,390))},"v-00d38f11":function(){return n.e(49).then(n.bind(null,391))},"v-d39223ba":function(){return n.e(20).then(n.bind(null,392))},"v-a31c3dba":function(){return n.e(50).then(n.bind(null,393))},"v-6f0eac21":function(){return n.e(51).then(n.bind(null,394))},"v-481dea23":function(){return n.e(52).then(n.bind(null,395))},"v-15b388aa":function(){return n.e(53).then(n.bind(null,396))},"v-8a6363ba":function(){return n.e(54).then(n.bind(null,397))},"v-7f0b5429":function(){return n.e(55).then(n.bind(null,398))},"v-29055241":function(){return n.e(56).then(n.bind(null,399))},"v-c0e60bfa":function(){return n.e(21).then(n.bind(null,400))},"v-589003f5":function(){return n.e(57).then(n.bind(null,401))},"v-2339aa03":function(){return n.e(58).then(n.bind(null,402))},"v-019cb63a":function(){return n.e(59).then(n.bind(null,403))},"v-7ffeb723":function(){return n.e(60).then(n.bind(null,404))},"v-9478f2ba":function(){return n.e(61).then(n.bind(null,405))},"v-4f03fe0f":function(){return n.e(62).then(n.bind(null,406))},"v-5baa92ba":function(){return n.e(63).then(n.bind(null,407))},"v-c249e07a":function(){return n.e(64).then(n.bind(null,408))},"v-27941b23":function(){return n.e(65).then(n.bind(null,409))},"v-6f4baca5":function(){return n.e(66).then(n.bind(null,410))},"v-fa75e63a":function(){return n.e(67).then(n.bind(null,411))},"v-dacf6e56":function(){return n.e(68).then(n.bind(null,412))},"v-8eec473a":function(){return n.e(69).then(n.bind(null,413))},"v-29d5bc56":function(){return n.e(70).then(n.bind(null,414))},"v-cbda523a":function(){return n.e(71).then(n.bind(null,415))},"v-a75af93a":function(){return n.e(72).then(n.bind(null,416))},"v-22ba6d3a":function(){return n.e(73).then(n.bind(null,417))},"v-d6319362":function(){return n.e(74).then(n.bind(null,418))},"v-7b99cfba":function(){return n.e(22).then(n.bind(null,419))},"v-6ec4d123":function(){return n.e(75).then(n.bind(null,420))},"v-5c5d50fa":function(){return n.e(76).then(n.bind(null,421))},"v-6cd19ba3":function(){return n.e(77).then(n.bind(null,422))},"v-55eb8eca":function(){return n.e(19).then(n.bind(null,423))},"v-1ec46263":function(){return n.e(23).then(n.bind(null,424))},"v-9213d4fa":function(){return n.e(78).then(n.bind(null,425))}};function ee(t){var e=Object.create(null);return function(n){return e[n]||(e[n]=t(n))}}var ne=/-(\w)/g,re=ee((function(t){return t.replace(ne,(function(t,e){return e?e.toUpperCase():""}))})),ie=/\B([A-Z])/g,oe=ee((function(t){return t.replace(ie,"-$1").toLowerCase()})),ae=ee((function(t){return t.charAt(0).toUpperCase()+t.slice(1)}));function se(t,e){if(e)return t(e)?t(e):e.includes("-")?t(ae(re(e))):t(ae(e))||t(oe(e))}var ue=Object.assign({},Zt,te),le=function(t){return ue[t]},ce=function(t){return te[t]},fe=function(t){return Zt[t]},pe=function(t){return o.a.component(t)};function de(t){return se(ce,t)}function he(t){return se(fe,t)}function ve(t){return se(le,t)}function ge(t){return se(pe,t)}function me(){for(var t=arguments.length,e=new Array(t),n=0;n0&&void 0!==arguments[0]?arguments[0]:"";return t?''):""}function Oe(t,e){if(e&&Object(Yt.a)(e).filter((function(t){return t.parentNode===document.head})).forEach((function(t){return document.head.removeChild(t)})),t)return t.map((function(t){var e=document.createElement("meta");return Object.keys(t).forEach((function(n){e.setAttribute(n,t[n])})),document.head.appendChild(e),e}))}function ke(t){for(var e=0,n=["name","property","itemprop"];e"})).join("\n "):"",this.$ssrContext.canonicalLink=Ce(this.$canonicalUrl)}var e},mounted:function(){this.currentMetaTags=Object(Yt.a)(document.querySelectorAll("meta")),this.updateMeta(),this.updateCanonicalLink()},methods:{updateMeta:function(){document.title=this.$title,document.documentElement.lang=this.$lang;var t=this.getMergedMetaTags();this.currentMetaTags=Oe(t,this.currentMetaTags)},getMergedMetaTags:function(){var t=this.$page.frontmatter.meta||[];return xe()([{name:"description",content:this.$description}],t,this.siteMeta,ke)},updateCanonicalLink:function(){Se(),this.$canonicalUrl&&document.head.insertAdjacentHTML("beforeend",Ce(this.$canonicalUrl))}},watch:{$page:function(){this.updateMeta(),this.updateCanonicalLink()}},beforeDestroy:function(){Oe(null,this.currentMetaTags),Se()}}],Ee={name:"GlobalLayout",computed:{layout:function(){var t=this.getLayout();return ye("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"}}},je=n(48),Ae=Object(je.a)(Ee,(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(Yt.a)(n));break;default:throw new Error("Unknown option name.")}}(Ae,"mixins",Pe);var $e=[{name:"v-680eebc3",path:"/404.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-680eebc3").then(n)}},{name:"v-4e72e1d8",path:"/",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-4e72e1d8").then(n)}},{path:"/index.html",redirect:"/"},{name:"v-7d127123",path:"/community/about.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-7d127123").then(n)}},{name:"v-4a1e6e3a",path:"/community/config/eggs/creating_a_custom_egg.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-4a1e6e3a").then(n)}},{name:"v-10fe793a",path:"/community/config/eggs/creating_a_custom_image.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-10fe793a").then(n)}},{name:"v-622f23e3",path:"/community/config/nodes/add_node.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-622f23e3").then(n)}},{name:"v-ef34fffa",path:"/community/customization/panel.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-ef34fffa").then(n)}},{name:"v-090070fa",path:"/community/customization/wings.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-090070fa").then(n)}},{name:"v-67c3f2ba",path:"/community/games/minecraft.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-67c3f2ba").then(n)}},{name:"v-0af75f63",path:"/community/installation-guides/panel/centos7.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-0af75f63").then(n)}},{name:"v-cc322cfa",path:"/community/installation-guides/panel/centos8.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-cc322cfa").then(n)}},{name:"v-4d5d0f9b",path:"/community/installation-guides/panel/debian10.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-4d5d0f9b").then(n)}},{name:"v-22a01883",path:"/community/installation-guides/panel/debian9.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-22a01883").then(n)}},{name:"v-047b1c1f",path:"/community/installation-guides/panel/ubuntu1804.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-047b1c1f").then(n)}},{name:"v-030337f1",path:"/community/installation-guides/panel/ubuntu2004.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-030337f1").then(n)}},{name:"v-26037fe3",path:"/community/installation-guides/wings/centos7.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-26037fe3").then(n)}},{name:"v-9619ebfa",path:"/community/installation-guides/wings/centos8.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-9619ebfa").then(n)}},{name:"v-432db923",path:"/community/installation-guides/wings/debian10.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-432db923").then(n)}},{name:"v-3dac3903",path:"/community/installation-guides/wings/debian9.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-3dac3903").then(n)}},{name:"v-e046bab2",path:"/community/installation-guides/wings/ubuntu1804.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-e046bab2").then(n)}},{name:"v-e336830e",path:"/community/installation-guides/wings/ubuntu2004.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-e336830e").then(n)}},{name:"v-7c7b3203",path:"/community/tutorials/artisan.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-7c7b3203").then(n)}},{name:"v-07a77f72",path:"/daemon/0.6/configuration.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-07a77f72").then(n)}},{name:"v-00d38f11",path:"/daemon/0.6/debian_8_docker.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-00d38f11").then(n)}},{name:"v-d39223ba",path:"/daemon/0.6/installing.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-d39223ba").then(n)}},{name:"v-a31c3dba",path:"/daemon/0.6/kernel_modifications.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-a31c3dba").then(n)}},{name:"v-6f0eac21",path:"/daemon/0.6/standalone_sftp.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-6f0eac21").then(n)}},{name:"v-481dea23",path:"/daemon/0.6/upgrade/0.4_to_0.5.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-481dea23").then(n)}},{name:"v-15b388aa",path:"/daemon/0.6/upgrade/0.5.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-15b388aa").then(n)}},{name:"v-8a6363ba",path:"/daemon/0.6/upgrade/0.5_to_0.6.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-8a6363ba").then(n)}},{name:"v-7f0b5429",path:"/daemon/0.6/upgrade/0.6.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-7f0b5429").then(n)}},{name:"v-29055241",path:"/daemon/0.6/upgrading.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-29055241").then(n)}},{name:"v-c0e60bfa",path:"/guides/mounts.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-c0e60bfa").then(n)}},{name:"v-589003f5",path:"/guides/php_upgrade.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-589003f5").then(n)}},{name:"v-2339aa03",path:"/ops/publish_release.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-2339aa03").then(n)}},{name:"v-019cb63a",path:"/panel/0.7/configuration.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-019cb63a").then(n)}},{name:"v-7ffeb723",path:"/panel/0.7/getting_started.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-7ffeb723").then(n)}},{name:"v-9478f2ba",path:"/panel/0.7/troubleshooting.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-9478f2ba").then(n)}},{name:"v-4f03fe0f",path:"/panel/0.7/upgrade/0.6_to_0.7.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-4f03fe0f").then(n)}},{name:"v-5baa92ba",path:"/panel/0.7/upgrade/0.7.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-5baa92ba").then(n)}},{name:"v-c249e07a",path:"/panel/0.7/upgrading.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-c249e07a").then(n)}},{name:"v-27941b23",path:"/panel/0.7/webserver_configuration.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-27941b23").then(n)}},{name:"v-6f4baca5",path:"/panel/1.0/additional_configuration.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-6f4baca5").then(n)}},{name:"v-fa75e63a",path:"/panel/1.0/getting_started.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-fa75e63a").then(n)}},{name:"v-dacf6e56",path:"/panel/1.0/legacy_upgrade.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-dacf6e56").then(n)}},{name:"v-8eec473a",path:"/panel/1.0/troubleshooting.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-8eec473a").then(n)}},{name:"v-29d5bc56",path:"/panel/1.0/updating.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-29d5bc56").then(n)}},{name:"v-cbda523a",path:"/panel/1.0/webserver_configuration.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-cbda523a").then(n)}},{name:"v-a75af93a",path:"/project/about.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-a75af93a").then(n)}},{name:"v-22ba6d3a",path:"/project/community.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-22ba6d3a").then(n)}},{name:"v-d6319362",path:"/project/introduction.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-d6319362").then(n)}},{name:"v-7b99cfba",path:"/project/terms.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-7b99cfba").then(n)}},{name:"v-6ec4d123",path:"/tutorials/creating_ssl_certificates.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-6ec4d123").then(n)}},{name:"v-5c5d50fa",path:"/tutorials/mysql_setup.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-5c5d50fa").then(n)}},{name:"v-6cd19ba3",path:"/wings/1.0/configuration.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-6cd19ba3").then(n)}},{name:"v-55eb8eca",path:"/wings/1.0/installing.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-55eb8eca").then(n)}},{name:"v-1ec46263",path:"/wings/1.0/migrating.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-1ec46263").then(n)}},{name:"v-9213d4fa",path:"/wings/1.0/upgrading.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-9213d4fa").then(n)}},{path:"*",component:Ae}],Te={title:"Pterodactyl",description:"Pterodactyl is an open-source game server management panel built with PHP 7, React, and Go. Designed with security in mind, Pterodactyl runs all game servers in isolated Docker containers while exposing a beautiful and intuitive UI to end users.",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/site.webmanifest"}],["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"},{level:2,title:"List of default variables",slug:"list-of-default-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, Rocky Linux 8, AlmaLinux 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 8.0",slug:"php-8-0"},{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 8.0",slug:"php-8-0"},{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 Configuration",slug:"nginx-configuration"},{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, Rocky Linux 8, AlmaLinux 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:2,title:"Panel Management",slug:"panel-management"},{level:3,title:"View Panel Info",slug:"view-panel-info"},{level:3,title:"Update Panel",slug:"update-panel"}]},{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"},{level:3,title:"Example Mount",slug:"example-mount"}]},{title:"Upgrading PHP",frontmatter:{},regularPath:"/guides/php_upgrade.html",relativePath:"guides/php_upgrade.md",key:"v-589003f5",path:"/guides/php_upgrade.html",headers:[{level:2,title:"Install PHP",slug:"install-php"},{level:2,title:"Update Composer",slug:"update-composer"},{level:2,title:"Webserver Configuration",slug:"webserver-configuration"}]},{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 Local Backups",slug:"using-local-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"},{level:2,title:"2FA",slug:"_2fa"},{level:3,title:"Disable 2FA requirement",slug:"disable-2fa-requirement"},{level:3,title:"Disable 2FA for a specific user",slug:"disable-2fa-for-a-specific-user"}]},{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:"Legacy Upgrades",frontmatter:{},regularPath:"/panel/1.0/legacy_upgrade.html",relativePath:"panel/1.0/legacy_upgrade.md",key:"v-dacf6e56",path:"/panel/1.0/legacy_upgrade.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:"Troubleshooting",frontmatter:{},regularPath:"/panel/1.0/troubleshooting.html",relativePath:"panel/1.0/troubleshooting.md",key:"v-8eec473a",path:"/panel/1.0/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:"Cannot Connect to Server Errors",slug:"cannot-connect-to-server-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:"Wings Connection Errors",slug:"wings-connection-errors"},{level:2,title:"FirewallD issues",slug:"firewalld-issues"}]},{title:"Updating the Panel",frontmatter:{},regularPath:"/panel/1.0/updating.html",relativePath:"panel/1.0/updating.md",key:"v-29d5bc56",path:"/panel/1.0/updating.html",headers:[{level:2,title:"Panel Version Requirements",slug:"panel-version-requirements"},{level:2,title:"Update Dependencies",slug:"update-dependencies"},{level:2,title:"Self Upgrade",slug:"self-upgrade"},{level:2,title:"Manual Upgrade",slug:"manual-upgrade"},{level:3,title:"Enter Maintenance Mode",slug:"enter-maintenance-mode"},{level:3,title:"Download the Update",slug:"download-the-update"},{level:3,title:"Update Dependencies",slug:"update-dependencies-2"},{level:3,title:"Clear Compiled Template Cache",slug:"clear-compiled-template-cache"},{level:3,title:"Database Updates",slug:"database-updates"},{level:3,title:"Set Permissions",slug:"set-permissions"},{level:3,title:"Restarting Queue Workers",slug:"restarting-queue-workers"},{level:3,title:"Exit Maintenance Mode",slug:"exit-maintenance-mode"}]},{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:3,title:"Enabling Configuration",slug:"enabling-configuration"},{level:3,title:"Enabling Configuration",slug:"enabling-configuration-2"},{level:3,title:"Enabling Configuration",slug:"enabling-configuration-3"},{level:3,title:"Enabling Configuration",slug:"enabling-configuration-4"}]},{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:"Sponsors",slug:"sponsors"},{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:3,title:"Creating a Certificate",slug:"creating-a-certificate"},{level:3,title:"Auto Renewal",slug:"auto-renewal"},{level:3,title:"Troubleshooting",slug:"troubleshooting"},{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:"Example of usage",slug:"example-of-usage"},{level:2,title:"Custom Network Interfaces",slug:"custom-network-interfaces"},{level:3,title:"Example of usage",slug:"example-of-usage-2"},{level:2,title:"Enabling Cloudflare proxy",slug:"enabling-cloudflare-proxy"},{level:2,title:"Throttles Limits",slug:"throttles-limits"},{level:3,title:"Example of usage",slug:"example-of-usage-3"},{level:2,title:"Installer Limits",slug:"installer-limits"},{level:3,title:"Example of usage",slug:"example-of-usage-4"},{level:2,title:"Other values",slug:"other-values"}]},{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"},{level:3,title:"Node Allocations",slug:"node-allocations"}]},{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:"Wings Version Requirements",slug:"wings-version-requirements"},{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:"/logos/pterry.svg",nav:[{text:"Documentation",link:"/project/introduction.md"},{text:"Community Guides",link:"/community/about.md"},{text:"Get Help",link:"https://discord.gg/pterodactyl"},{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/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:[{title:"1.5",name:"1.0",status:"stable",children:["/getting_started","/webserver_configuration","/additional_configuration","/updating","/troubleshooting","/legacy_upgrade"]}]},{title:"Wings",collapsable:!1,path:"/wings/",currentVersion:"1.0",versions:[{title:"1.4",name:"1.0",status:"stable",children:["/installing","/upgrading","/migrating","/configuration"]}]},{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"]}]}}},Le=(n(300),n(302),n(303),n(181),n(74),n(108));function Re(){for(var t="/",e=new RegExp(t+"{1,}","g"),n=arguments.length,r=new Array(n),i=0;i2&&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)),s={};return Object.keys(a).reduce((function(t,e){return e.startsWith("$")&&(t[e]=a[e].get),t}),s),{computed:s}}((function(t){return function(){function e(){Ue(this,e)}return Be(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:"$canonicalUrl",get:function(){var t=this.$page.frontmatter.canonicalUrl;return"string"==typeof t&&t}},{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=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=l.path?k(l.path,c,n||i.append):c,h=function(t,e,n){void 0===e&&(e={});var r,i=n||d;try{r=i(t||"")}catch(t){r={}}for(var o in e){var a=e[o];r[o]=Array.isArray(a)?a.map(p):p(a)}return r}(l.query,i.query,r&&r.options.parseQuery),v=i.hash||l.hash;return v&&"#"!==v.charAt(0)&&(v="#"+v),{_normalized:!0,path:f,query:h,hash:v}}var G,K=function(){},X={name:"RouterLink",props:{to:{type:[String,Object],required:!0},tag:{type:String,default:"a"},custom:Boolean,exact:Boolean,exactPath:Boolean,append:Boolean,replace:Boolean,activeClass:String,exactActiveClass:String,ariaCurrentValue:{type:String,default:"page"},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,s=i.route,u=i.href,l={},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,m=null==this.exactActiveClass?d:this.exactActiveClass,y=s.redirectedFrom?g(null,W(s.redirectedFrom),null,n):s;l[m]=w(r,y,this.exactPath),l[h]=this.exact||this.exactPath?l[m]:function(t,e){return 0===t.path.replace(v,"/").indexOf(e.path.replace(v,"/"))&&(!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,y);var b=l[m]?this.ariaCurrentValue:null,_=function(t){Q(t)&&(e.replace?n.replace(o,K):n.push(o,K))},x={click:Q};Array.isArray(this.event)?this.event.forEach((function(t){x[t]=_})):x[this.event]=_;var S={class:l},C=!this.$scopedSlots.$hasNormal&&this.$scopedSlots.default&&this.$scopedSlots.default({href:u,route:s,navigate:_,isActive:l[h],isExactActive:l[m]});if(C){if(1===C.length)return C[0];if(C.length>1||!C.length)return 0===C.length?t():t("span",{},C)}if("a"===this.tag)S.on=x,S.attrs={href:u,"aria-current":b};else{var O=function t(e){var n;if(e)for(var r=0;r-1&&(s.params[p]=n.params[p]);return s.path=H(c.path,s.params),u(c,s,a)}if(s.path){s.params={};for(var d=0;d=t.length?n():t[i]?e(t[i],(function(){r(i+1)})):r(i+1)};r(0)}var xt={redirected:2,aborted:4,cancelled:8,duplicated:16};function St(t,e){return Ot(t,e,xt.redirected,'Redirected when going from "'+t.fullPath+'" to "'+function(t){if("string"==typeof t)return t;if("path"in t)return t.path;var e={};return kt.forEach((function(n){n in t&&(e[n]=t[n])})),JSON.stringify(e,null,2)}(e)+'" via a navigation guard.')}function Ct(t,e){return Ot(t,e,xt.cancelled,'Navigation cancelled from "'+t.fullPath+'" to "'+e.fullPath+'" with a new navigation.')}function Ot(t,e,n,r){var i=new Error(r);return i._isRouter=!0,i.from=t,i.to=e,i.type=n,i}var kt=["params","query","hash"];function Pt(t){return Object.prototype.toString.call(t).indexOf("Error")>-1}function Et(t,e){return Pt(t)&&t._isRouter&&(null==e||t.type===e)}function jt(t){return function(e,n,r){var i=!1,o=0,a=null;At(t,(function(t,e,n,s){if("function"==typeof t&&void 0===t.cid){i=!0,o++;var u,l=Lt((function(e){var i;((i=e).__esModule||Tt&&"Module"===i[Symbol.toStringTag])&&(e=e.default),t.resolved="function"==typeof e?e:G.extend(e),n.components[s]=e,--o<=0&&r()})),c=Lt((function(t){var e="Failed to resolve async component "+s+": "+t;a||(a=Pt(t)?t:new Error(e),r(a))}));try{u=t(l,c)}catch(t){c(t)}if(u)if("function"==typeof u.then)u.then(l,c);else{var f=u.component;f&&"function"==typeof f.then&&f.then(l,c)}}})),i||r()}}function At(t,e){return $t(t.map((function(t){return Object.keys(t.components).map((function(n){return e(t.components[n],t.instances[n],t,n)}))})))}function $t(t){return Array.prototype.concat.apply([],t)}var Tt="function"==typeof Symbol&&"symbol"==typeof Symbol.toStringTag;function Lt(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 Rt=function(t,e){this.router=t,this.base=function(t){if(!t)if(J){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=y,this.pending=null,this.ready=!1,this.readyCbs=[],this.readyErrorCbs=[],this.errorCbs=[],this.listeners=[]};function Dt(t,e,n,r){var i=At(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 $t(r?i.reverse():i)}function It(t,e){if(e)return function(){return t.apply(e,arguments)}}Rt.prototype.listen=function(t){this.cb=t},Rt.prototype.onReady=function(t,e){this.ready?t():(this.readyCbs.push(t),e&&this.readyErrorCbs.push(e))},Rt.prototype.onError=function(t){this.errorCbs.push(t)},Rt.prototype.transitionTo=function(t,e,n){var r,i=this;try{r=this.router.match(t,this.current)}catch(t){throw this.errorCbs.forEach((function(e){e(t)})),t}var o=this.current;this.confirmTransition(r,(function(){i.updateRoute(r),e&&e(r),i.ensureURL(),i.router.afterHooks.forEach((function(t){t&&t(r,o)})),i.ready||(i.ready=!0,i.readyCbs.forEach((function(t){t(r)})))}),(function(t){n&&n(t),t&&!i.ready&&(Et(t,xt.redirected)&&o===y||(i.ready=!0,i.readyErrorCbs.forEach((function(e){e(t)}))))}))},Rt.prototype.confirmTransition=function(t,e,n){var r=this,i=this.current;this.pending=t;var o,a,s=function(t){!Et(t)&&Pt(t)&&(r.errorCbs.length?r.errorCbs.forEach((function(e){e(t)})):console.error(t)),n&&n(t)},u=t.matched.length-1,l=i.matched.length-1;if(w(t,i)&&u===l&&t.matched[u]===i.matched[l])return this.ensureURL(),s(((a=Ot(o=i,t,xt.duplicated,'Avoided redundant navigation to current location: "'+o.fullPath+'".')).name="NavigationDuplicated",a));var c=function(t,e){var n,r=Math.max(t.length,e.length);for(n=0;n0)){var e=this.router,n=e.options.scrollBehavior,r=yt&&n;r&&this.listeners.push(ut());var i=function(){var n=t.current,i=Nt(t.base);t.current===y&&i===t._startLocation||t.transitionTo(i,(function(t){r&<(e,t,n,!0)}))};window.addEventListener("popstate",i),this.listeners.push((function(){window.removeEventListener("popstate",i)}))}},e.prototype.go=function(t){window.history.go(t)},e.prototype.push=function(t,e,n){var r=this,i=this.current;this.transitionTo(t,(function(t){bt(P(r.base+t.fullPath)),lt(r.router,t,i,!1),e&&e(t)}),n)},e.prototype.replace=function(t,e,n){var r=this,i=this.current;this.transitionTo(t,(function(t){_t(P(r.base+t.fullPath)),lt(r.router,t,i,!1),e&&e(t)}),n)},e.prototype.ensureURL=function(t){if(Nt(this.base)!==this.current.fullPath){var e=P(this.base+this.current.fullPath);t?bt(e):_t(e)}},e.prototype.getCurrentLocation=function(){return Nt(this.base)},e}(Rt);function Nt(t){var e=window.location.pathname;return t&&0===e.toLowerCase().indexOf(t.toLowerCase())&&(e=e.slice(t.length)),(e||"/")+window.location.search+window.location.hash}var Ut=function(t){function e(e,n,r){t.call(this,e,n),r&&function(t){var e=Nt(t);if(!/^\/#/.test(e))return window.location.replace(P(t+"/#"+e)),!0}(this.base)||Ft()}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.setupListeners=function(){var t=this;if(!(this.listeners.length>0)){var e=this.router.options.scrollBehavior,n=yt&&e;n&&this.listeners.push(ut());var r=function(){var e=t.current;Ft()&&t.transitionTo(Bt(),(function(r){n&<(t.router,r,e,!0),yt||Vt(r.fullPath)}))},i=yt?"popstate":"hashchange";window.addEventListener(i,r),this.listeners.push((function(){window.removeEventListener(i,r)}))}},e.prototype.push=function(t,e,n){var r=this,i=this.current;this.transitionTo(t,(function(t){qt(t.fullPath),lt(r.router,t,i,!1),e&&e(t)}),n)},e.prototype.replace=function(t,e,n){var r=this,i=this.current;this.transitionTo(t,(function(t){Vt(t.fullPath),lt(r.router,t,i,!1),e&&e(t)}),n)},e.prototype.go=function(t){window.history.go(t)},e.prototype.ensureURL=function(t){var e=this.current.fullPath;Bt()!==e&&(t?qt(e):Vt(e))},e.prototype.getCurrentLocation=function(){return Bt()},e}(Rt);function Ft(){var t=Bt();return"/"===t.charAt(0)||(Vt("/"+t),!1)}function Bt(){var t=window.location.href,e=t.indexOf("#");return e<0?"":t=t.slice(e+1)}function zt(t){var e=window.location.href,n=e.indexOf("#");return(n>=0?e.slice(0,n):e)+"#"+t}function qt(t){yt?bt(zt(t)):window.location.hash=t}function Vt(t){yt?_t(zt(t)):window.location.replace(zt(t))}var Ht=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(){var t=e.current;e.index=n,e.updateRoute(r),e.router.afterHooks.forEach((function(e){e&&e(r,t)}))}),(function(t){Et(t,xt.duplicated)&&(e.index=n)}))}},e.prototype.getCurrentLocation=function(){var t=this.stack[this.stack.length-1];return t?t.fullPath:"/"},e.prototype.ensureURL=function(){},e}(Rt),Wt=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&&!yt&&!1!==t.fallback,this.fallback&&(e="hash"),J||(e="abstract"),this.mode=e,e){case"history":this.history=new Mt(this,t.base);break;case"hash":this.history=new Ut(this,t.base,this.fallback);break;case"abstract":this.history=new Ht(this,t.base);break;default:0}},Gt={currentRoute:{configurable:!0}};function Kt(t,e){return t.push(e),function(){var n=t.indexOf(e);n>-1&&t.splice(n,1)}}Wt.prototype.match=function(t,e,n){return this.matcher.match(t,e,n)},Gt.currentRoute.get=function(){return this.history&&this.history.current},Wt.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),e.app||e.history.teardown()})),!this.app){this.app=t;var n=this.history;if(n instanceof Mt||n instanceof Ut){var r=function(t){n.setupListeners(),function(t){var r=n.current,i=e.options.scrollBehavior;yt&&i&&"fullPath"in t&<(e,t,r,!1)}(t)};n.transitionTo(n.getCurrentLocation(),r,r)}n.listen((function(t){e.apps.forEach((function(e){e._route=t}))}))}},Wt.prototype.beforeEach=function(t){return Kt(this.beforeHooks,t)},Wt.prototype.beforeResolve=function(t){return Kt(this.resolveHooks,t)},Wt.prototype.afterEach=function(t){return Kt(this.afterHooks,t)},Wt.prototype.onReady=function(t,e){this.history.onReady(t,e)},Wt.prototype.onError=function(t){this.history.onError(t)},Wt.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)},Wt.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)},Wt.prototype.go=function(t){this.history.go(t)},Wt.prototype.back=function(){this.go(-1)},Wt.prototype.forward=function(){this.go(1)},Wt.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]}))}))):[]},Wt.prototype.resolve=function(t,e,n){var r=W(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?P(t+"/"+r):r}(this.history.base,o,this.mode),normalizedTo:r,resolved:i}},Wt.prototype.getRoutes=function(){return this.matcher.getRoutes()},Wt.prototype.addRoute=function(t,e){this.matcher.addRoute(t,e),this.history.current!==y&&this.history.transitionTo(this.history.getCurrentLocation())},Wt.prototype.addRoutes=function(t){this.matcher.addRoutes(t),this.history.current!==y&&this.history.transitionTo(this.history.getCurrentLocation())},Object.defineProperties(Wt.prototype,Gt),Wt.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",C),e.component("RouterLink",X);var i=e.config.optionMergeStrategies;i.beforeRouteEnter=i.beforeRouteLeave=i.beforeRouteUpdate=i.created}},Wt.version="3.5.1",Wt.isNavigationFailure=Et,Wt.NavigationFailureType=xt,Wt.START_LOCATION=y,J&&window.Vue&&window.Vue.use(Wt);var Xt=Wt;n(51),n(197),n(199),n(144),n(145),n(71),n(110),n(52);function Qt(t){t.locales&&Object.keys(t.locales).forEach((function(e){t.locales[e].path=e})),Object.freeze(t)}n(201),n(146),n(50),n(202),n(70),n(44),n(61),n(93);function Jt(t){return(Jt="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 Yt=n(31),Zt={DropdownLink:function(){return Promise.all([n.e(0),n.e(7)]).then(n.bind(null,324))},DropdownTransition:function(){return Promise.all([n.e(0),n.e(18)]).then(n.bind(null,321))},Home:function(){return Promise.all([n.e(2),n.e(8)]).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,366))},NavLink:function(){return n.e(10).then(n.bind(null,315))},NavLinks:function(){return Promise.all([n.e(0),n.e(6)]).then(n.bind(null,325))},Navbar:function(){return Promise.all([n.e(0),n.e(5)]).then(n.bind(null,342))},NotFound:function(){return n.e(25).then(n.bind(null,367))},Page:function(){return n.e(15).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(9)]).then(n.bind(null,344))},SidebarButton:function(){return n.e(26).then(n.bind(null,333))},SidebarGroup:function(){return Promise.all([n.e(0),n.e(1)]).then(n.bind(null,345))},SidebarLink:function(){return n.e(16).then(n.bind(null,334))},SlickCarousel:function(){return Promise.all([n.e(2),n.e(27)]).then(n.bind(null,330))},VersionSelect:function(){return n.e(11).then(n.bind(null,346))},VersionSelectItem:function(){return n.e(28).then(n.bind(null,332))}},te={"v-680eebc3":function(){return n.e(29).then(n.bind(null,368))},"v-4e72e1d8":function(){return n.e(30).then(n.bind(null,369))},"v-7d127123":function(){return n.e(31).then(n.bind(null,370))},"v-4a1e6e3a":function(){return n.e(12).then(n.bind(null,371))},"v-10fe793a":function(){return n.e(32).then(n.bind(null,372))},"v-622f23e3":function(){return n.e(17).then(n.bind(null,373))},"v-ef34fffa":function(){return n.e(33).then(n.bind(null,374))},"v-090070fa":function(){return n.e(34).then(n.bind(null,375))},"v-67c3f2ba":function(){return n.e(14).then(n.bind(null,376))},"v-0af75f63":function(){return n.e(35).then(n.bind(null,377))},"v-cc322cfa":function(){return n.e(36).then(n.bind(null,378))},"v-4d5d0f9b":function(){return n.e(37).then(n.bind(null,379))},"v-22a01883":function(){return n.e(38).then(n.bind(null,380))},"v-047b1c1f":function(){return n.e(39).then(n.bind(null,381))},"v-030337f1":function(){return n.e(40).then(n.bind(null,382))},"v-26037fe3":function(){return n.e(41).then(n.bind(null,383))},"v-9619ebfa":function(){return n.e(42).then(n.bind(null,384))},"v-432db923":function(){return n.e(43).then(n.bind(null,385))},"v-3dac3903":function(){return n.e(44).then(n.bind(null,386))},"v-e046bab2":function(){return n.e(45).then(n.bind(null,387))},"v-e336830e":function(){return n.e(46).then(n.bind(null,388))},"v-7c7b3203":function(){return n.e(47).then(n.bind(null,389))},"v-07a77f72":function(){return n.e(48).then(n.bind(null,390))},"v-00d38f11":function(){return n.e(49).then(n.bind(null,391))},"v-d39223ba":function(){return n.e(20).then(n.bind(null,392))},"v-a31c3dba":function(){return n.e(50).then(n.bind(null,393))},"v-6f0eac21":function(){return n.e(51).then(n.bind(null,394))},"v-481dea23":function(){return n.e(52).then(n.bind(null,395))},"v-15b388aa":function(){return n.e(53).then(n.bind(null,396))},"v-8a6363ba":function(){return n.e(54).then(n.bind(null,397))},"v-7f0b5429":function(){return n.e(55).then(n.bind(null,398))},"v-29055241":function(){return n.e(56).then(n.bind(null,399))},"v-c0e60bfa":function(){return n.e(21).then(n.bind(null,400))},"v-589003f5":function(){return n.e(57).then(n.bind(null,401))},"v-2339aa03":function(){return n.e(58).then(n.bind(null,402))},"v-019cb63a":function(){return n.e(59).then(n.bind(null,403))},"v-7ffeb723":function(){return n.e(60).then(n.bind(null,404))},"v-9478f2ba":function(){return n.e(61).then(n.bind(null,405))},"v-4f03fe0f":function(){return n.e(62).then(n.bind(null,406))},"v-5baa92ba":function(){return n.e(63).then(n.bind(null,407))},"v-c249e07a":function(){return n.e(64).then(n.bind(null,408))},"v-27941b23":function(){return n.e(65).then(n.bind(null,409))},"v-6f4baca5":function(){return n.e(66).then(n.bind(null,410))},"v-fa75e63a":function(){return n.e(67).then(n.bind(null,411))},"v-dacf6e56":function(){return n.e(68).then(n.bind(null,412))},"v-8eec473a":function(){return n.e(69).then(n.bind(null,413))},"v-29d5bc56":function(){return n.e(70).then(n.bind(null,414))},"v-cbda523a":function(){return n.e(71).then(n.bind(null,415))},"v-a75af93a":function(){return n.e(72).then(n.bind(null,416))},"v-22ba6d3a":function(){return n.e(73).then(n.bind(null,417))},"v-d6319362":function(){return n.e(74).then(n.bind(null,418))},"v-7b99cfba":function(){return n.e(22).then(n.bind(null,419))},"v-6ec4d123":function(){return n.e(75).then(n.bind(null,420))},"v-5c5d50fa":function(){return n.e(76).then(n.bind(null,421))},"v-6cd19ba3":function(){return n.e(77).then(n.bind(null,422))},"v-55eb8eca":function(){return n.e(19).then(n.bind(null,423))},"v-1ec46263":function(){return n.e(23).then(n.bind(null,424))},"v-9213d4fa":function(){return n.e(78).then(n.bind(null,425))}};function ee(t){var e=Object.create(null);return function(n){return e[n]||(e[n]=t(n))}}var ne=/-(\w)/g,re=ee((function(t){return t.replace(ne,(function(t,e){return e?e.toUpperCase():""}))})),ie=/\B([A-Z])/g,oe=ee((function(t){return t.replace(ie,"-$1").toLowerCase()})),ae=ee((function(t){return t.charAt(0).toUpperCase()+t.slice(1)}));function se(t,e){if(e)return t(e)?t(e):e.includes("-")?t(ae(re(e))):t(ae(e))||t(oe(e))}var ue=Object.assign({},Zt,te),le=function(t){return ue[t]},ce=function(t){return te[t]},fe=function(t){return Zt[t]},pe=function(t){return o.a.component(t)};function de(t){return se(ce,t)}function he(t){return se(fe,t)}function ve(t){return se(le,t)}function ge(t){return se(pe,t)}function me(){for(var t=arguments.length,e=new Array(t),n=0;n0&&void 0!==arguments[0]?arguments[0]:"";return t?''):""}function Oe(t,e){if(e&&Object(Yt.a)(e).filter((function(t){return t.parentNode===document.head})).forEach((function(t){return document.head.removeChild(t)})),t)return t.map((function(t){var e=document.createElement("meta");return Object.keys(t).forEach((function(n){e.setAttribute(n,t[n])})),document.head.appendChild(e),e}))}function ke(t){for(var e=0,n=["name","property","itemprop"];e"})).join("\n "):"",this.$ssrContext.canonicalLink=Ce(this.$canonicalUrl)}var e},mounted:function(){this.currentMetaTags=Object(Yt.a)(document.querySelectorAll("meta")),this.updateMeta(),this.updateCanonicalLink()},methods:{updateMeta:function(){document.title=this.$title,document.documentElement.lang=this.$lang;var t=this.getMergedMetaTags();this.currentMetaTags=Oe(t,this.currentMetaTags)},getMergedMetaTags:function(){var t=this.$page.frontmatter.meta||[];return xe()([{name:"description",content:this.$description}],t,this.siteMeta,ke)},updateCanonicalLink:function(){Se(),this.$canonicalUrl&&document.head.insertAdjacentHTML("beforeend",Ce(this.$canonicalUrl))}},watch:{$page:function(){this.updateMeta(),this.updateCanonicalLink()}},beforeDestroy:function(){Oe(null,this.currentMetaTags),Se()}}],Ee={name:"GlobalLayout",computed:{layout:function(){var t=this.getLayout();return ye("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"}}},je=n(48),Ae=Object(je.a)(Ee,(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(Yt.a)(n));break;default:throw new Error("Unknown option name.")}}(Ae,"mixins",Pe);var $e=[{name:"v-680eebc3",path:"/404.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-680eebc3").then(n)}},{name:"v-4e72e1d8",path:"/",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-4e72e1d8").then(n)}},{path:"/index.html",redirect:"/"},{name:"v-7d127123",path:"/community/about.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-7d127123").then(n)}},{name:"v-4a1e6e3a",path:"/community/config/eggs/creating_a_custom_egg.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-4a1e6e3a").then(n)}},{name:"v-10fe793a",path:"/community/config/eggs/creating_a_custom_image.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-10fe793a").then(n)}},{name:"v-622f23e3",path:"/community/config/nodes/add_node.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-622f23e3").then(n)}},{name:"v-ef34fffa",path:"/community/customization/panel.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-ef34fffa").then(n)}},{name:"v-090070fa",path:"/community/customization/wings.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-090070fa").then(n)}},{name:"v-67c3f2ba",path:"/community/games/minecraft.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-67c3f2ba").then(n)}},{name:"v-0af75f63",path:"/community/installation-guides/panel/centos7.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-0af75f63").then(n)}},{name:"v-cc322cfa",path:"/community/installation-guides/panel/centos8.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-cc322cfa").then(n)}},{name:"v-4d5d0f9b",path:"/community/installation-guides/panel/debian10.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-4d5d0f9b").then(n)}},{name:"v-22a01883",path:"/community/installation-guides/panel/debian9.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-22a01883").then(n)}},{name:"v-047b1c1f",path:"/community/installation-guides/panel/ubuntu1804.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-047b1c1f").then(n)}},{name:"v-030337f1",path:"/community/installation-guides/panel/ubuntu2004.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-030337f1").then(n)}},{name:"v-26037fe3",path:"/community/installation-guides/wings/centos7.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-26037fe3").then(n)}},{name:"v-9619ebfa",path:"/community/installation-guides/wings/centos8.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-9619ebfa").then(n)}},{name:"v-432db923",path:"/community/installation-guides/wings/debian10.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-432db923").then(n)}},{name:"v-3dac3903",path:"/community/installation-guides/wings/debian9.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-3dac3903").then(n)}},{name:"v-e046bab2",path:"/community/installation-guides/wings/ubuntu1804.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-e046bab2").then(n)}},{name:"v-e336830e",path:"/community/installation-guides/wings/ubuntu2004.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-e336830e").then(n)}},{name:"v-7c7b3203",path:"/community/tutorials/artisan.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-7c7b3203").then(n)}},{name:"v-07a77f72",path:"/daemon/0.6/configuration.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-07a77f72").then(n)}},{name:"v-00d38f11",path:"/daemon/0.6/debian_8_docker.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-00d38f11").then(n)}},{name:"v-d39223ba",path:"/daemon/0.6/installing.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-d39223ba").then(n)}},{name:"v-a31c3dba",path:"/daemon/0.6/kernel_modifications.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-a31c3dba").then(n)}},{name:"v-6f0eac21",path:"/daemon/0.6/standalone_sftp.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-6f0eac21").then(n)}},{name:"v-481dea23",path:"/daemon/0.6/upgrade/0.4_to_0.5.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-481dea23").then(n)}},{name:"v-15b388aa",path:"/daemon/0.6/upgrade/0.5.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-15b388aa").then(n)}},{name:"v-8a6363ba",path:"/daemon/0.6/upgrade/0.5_to_0.6.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-8a6363ba").then(n)}},{name:"v-7f0b5429",path:"/daemon/0.6/upgrade/0.6.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-7f0b5429").then(n)}},{name:"v-29055241",path:"/daemon/0.6/upgrading.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-29055241").then(n)}},{name:"v-c0e60bfa",path:"/guides/mounts.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-c0e60bfa").then(n)}},{name:"v-589003f5",path:"/guides/php_upgrade.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-589003f5").then(n)}},{name:"v-2339aa03",path:"/ops/publish_release.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-2339aa03").then(n)}},{name:"v-019cb63a",path:"/panel/0.7/configuration.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-019cb63a").then(n)}},{name:"v-7ffeb723",path:"/panel/0.7/getting_started.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-7ffeb723").then(n)}},{name:"v-9478f2ba",path:"/panel/0.7/troubleshooting.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-9478f2ba").then(n)}},{name:"v-4f03fe0f",path:"/panel/0.7/upgrade/0.6_to_0.7.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-4f03fe0f").then(n)}},{name:"v-5baa92ba",path:"/panel/0.7/upgrade/0.7.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-5baa92ba").then(n)}},{name:"v-c249e07a",path:"/panel/0.7/upgrading.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-c249e07a").then(n)}},{name:"v-27941b23",path:"/panel/0.7/webserver_configuration.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-27941b23").then(n)}},{name:"v-6f4baca5",path:"/panel/1.0/additional_configuration.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-6f4baca5").then(n)}},{name:"v-fa75e63a",path:"/panel/1.0/getting_started.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-fa75e63a").then(n)}},{name:"v-dacf6e56",path:"/panel/1.0/legacy_upgrade.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-dacf6e56").then(n)}},{name:"v-8eec473a",path:"/panel/1.0/troubleshooting.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-8eec473a").then(n)}},{name:"v-29d5bc56",path:"/panel/1.0/updating.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-29d5bc56").then(n)}},{name:"v-cbda523a",path:"/panel/1.0/webserver_configuration.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-cbda523a").then(n)}},{name:"v-a75af93a",path:"/project/about.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-a75af93a").then(n)}},{name:"v-22ba6d3a",path:"/project/community.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-22ba6d3a").then(n)}},{name:"v-d6319362",path:"/project/introduction.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-d6319362").then(n)}},{name:"v-7b99cfba",path:"/project/terms.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-7b99cfba").then(n)}},{name:"v-6ec4d123",path:"/tutorials/creating_ssl_certificates.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-6ec4d123").then(n)}},{name:"v-5c5d50fa",path:"/tutorials/mysql_setup.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-5c5d50fa").then(n)}},{name:"v-6cd19ba3",path:"/wings/1.0/configuration.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-6cd19ba3").then(n)}},{name:"v-55eb8eca",path:"/wings/1.0/installing.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-55eb8eca").then(n)}},{name:"v-1ec46263",path:"/wings/1.0/migrating.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-1ec46263").then(n)}},{name:"v-9213d4fa",path:"/wings/1.0/upgrading.html",component:Ae,beforeEnter:function(t,e,n){me("Layout","v-9213d4fa").then(n)}},{path:"*",component:Ae}],Te={title:"Pterodactyl",description:"Pterodactyl is an open-source game server management panel built with PHP 7, React, and Go. Designed with security in mind, Pterodactyl runs all game servers in isolated Docker containers while exposing a beautiful and intuitive UI to end users.",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/site.webmanifest"}],["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"},{level:2,title:"List of default variables",slug:"list-of-default-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, Rocky Linux 8, AlmaLinux 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 8.0",slug:"php-8-0"},{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 8.0",slug:"php-8-0"},{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 Configuration",slug:"nginx-configuration"},{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, Rocky Linux 8, AlmaLinux 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:2,title:"Panel Management",slug:"panel-management"},{level:3,title:"View Panel Info",slug:"view-panel-info"},{level:3,title:"Update Panel",slug:"update-panel"}]},{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"},{level:3,title:"Example Mount",slug:"example-mount"}]},{title:"Upgrading PHP",frontmatter:{},regularPath:"/guides/php_upgrade.html",relativePath:"guides/php_upgrade.md",key:"v-589003f5",path:"/guides/php_upgrade.html",headers:[{level:2,title:"Install PHP",slug:"install-php"},{level:2,title:"Update Composer",slug:"update-composer"},{level:2,title:"Webserver Configuration",slug:"webserver-configuration"}]},{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 Local Backups",slug:"using-local-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"},{level:2,title:"2FA",slug:"_2fa"},{level:3,title:"Disable 2FA requirement",slug:"disable-2fa-requirement"},{level:3,title:"Disable 2FA for a specific user",slug:"disable-2fa-for-a-specific-user"}]},{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:"Legacy Upgrades",frontmatter:{},regularPath:"/panel/1.0/legacy_upgrade.html",relativePath:"panel/1.0/legacy_upgrade.md",key:"v-dacf6e56",path:"/panel/1.0/legacy_upgrade.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:"Troubleshooting",frontmatter:{},regularPath:"/panel/1.0/troubleshooting.html",relativePath:"panel/1.0/troubleshooting.md",key:"v-8eec473a",path:"/panel/1.0/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:"Cannot Connect to Server Errors",slug:"cannot-connect-to-server-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:"Wings Connection Errors",slug:"wings-connection-errors"},{level:2,title:"FirewallD issues",slug:"firewalld-issues"}]},{title:"Updating the Panel",frontmatter:{},regularPath:"/panel/1.0/updating.html",relativePath:"panel/1.0/updating.md",key:"v-29d5bc56",path:"/panel/1.0/updating.html",headers:[{level:2,title:"Panel Version Requirements",slug:"panel-version-requirements"},{level:2,title:"Update Dependencies",slug:"update-dependencies"},{level:2,title:"Self Upgrade",slug:"self-upgrade"},{level:2,title:"Manual Upgrade",slug:"manual-upgrade"},{level:3,title:"Enter Maintenance Mode",slug:"enter-maintenance-mode"},{level:3,title:"Download the Update",slug:"download-the-update"},{level:3,title:"Update Dependencies",slug:"update-dependencies-2"},{level:3,title:"Clear Compiled Template Cache",slug:"clear-compiled-template-cache"},{level:3,title:"Database Updates",slug:"database-updates"},{level:3,title:"Set Permissions",slug:"set-permissions"},{level:3,title:"Restarting Queue Workers",slug:"restarting-queue-workers"},{level:3,title:"Exit Maintenance Mode",slug:"exit-maintenance-mode"}]},{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:3,title:"Enabling Configuration",slug:"enabling-configuration"},{level:3,title:"Enabling Configuration",slug:"enabling-configuration-2"},{level:3,title:"Enabling Configuration",slug:"enabling-configuration-3"},{level:3,title:"Enabling Configuration",slug:"enabling-configuration-4"}]},{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:"Sponsors",slug:"sponsors"},{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:3,title:"Creating a Certificate",slug:"creating-a-certificate"},{level:3,title:"Auto Renewal",slug:"auto-renewal"},{level:3,title:"Troubleshooting",slug:"troubleshooting"},{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:"Example of usage",slug:"example-of-usage"},{level:2,title:"Custom Network Interfaces",slug:"custom-network-interfaces"},{level:3,title:"Example of usage",slug:"example-of-usage-2"},{level:2,title:"Enabling Cloudflare proxy",slug:"enabling-cloudflare-proxy"},{level:2,title:"Throttles Limits",slug:"throttles-limits"},{level:3,title:"Example of usage",slug:"example-of-usage-3"},{level:2,title:"Installer Limits",slug:"installer-limits"},{level:3,title:"Example of usage",slug:"example-of-usage-4"},{level:2,title:"Other values",slug:"other-values"}]},{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"},{level:3,title:"Node Allocations",slug:"node-allocations"}]},{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:"Wings Version Requirements",slug:"wings-version-requirements"},{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:"/logos/pterry.svg",nav:[{text:"Documentation",link:"/project/introduction.md"},{text:"Community Guides",link:"/community/about.md"},{text:"Get Help",link:"https://discord.gg/pterodactyl"},{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/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:[{title:"1.6",name:"1.0",status:"stable",children:["/getting_started","/webserver_configuration","/additional_configuration","/updating","/troubleshooting","/legacy_upgrade"]}]},{title:"Wings",collapsable:!1,path:"/wings/",currentVersion:"1.0",versions:[{title:"1.5",name:"1.0",status:"stable",children:["/installing","/upgrading","/migrating","/configuration"]}]},{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"]}]}}},Le=(n(300),n(302),n(303),n(181),n(74),n(108));function Re(){for(var t="/",e=new RegExp(t+"{1,}","g"),n=arguments.length,r=new Array(n),i=0;i2&&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)),s={};return Object.keys(a).reduce((function(t,e){return e.startsWith("$")&&(t[e]=a[e].get),t}),s),{computed:s}}((function(t){return function(){function e(){Ue(this,e)}return Be(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:"$canonicalUrl",get:function(){var t=this.$page.frontmatter.canonicalUrl;return"string"==typeof t&&t}},{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 - + @@ -39,6 +39,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 46d99b69..28ce26db 100644 --- a/community/config/eggs/creating_a_custom_egg.html +++ b/community/config/eggs/creating_a_custom_egg.html @@ -15,7 +15,7 @@ - + @@ -125,6 +125,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 f7febffc..5d9968b5 100644 --- a/community/config/eggs/creating_a_custom_image.html +++ b/community/config/eggs/creating_a_custom_image.html @@ -15,7 +15,7 @@ - + @@ -100,6 +100,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 7dd5ac09..bf6a4dfb 100644 --- a/community/config/nodes/add_node.html +++ b/community/config/nodes/add_node.html @@ -15,7 +15,7 @@ - + @@ -48,6 +48,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 fc71d720..af247b7a 100644 --- a/community/customization/panel.html +++ b/community/customization/panel.html @@ -15,7 +15,7 @@ - + @@ -54,6 +54,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 2f9eef0d..66ae3892 100644 --- a/community/customization/wings.html +++ b/community/customization/wings.html @@ -15,7 +15,7 @@ - + @@ -47,6 +47,6 @@ systemctl start wings
- + diff --git a/community/games/minecraft.html b/community/games/minecraft.html index ab3bf8ca..eeece8a2 100644 --- a/community/games/minecraft.html +++ b/community/games/minecraft.html @@ -15,7 +15,7 @@ - + @@ -41,6 +41,6 @@ ← Creating a Custom Docker Image
- + diff --git a/community/installation-guides/panel/centos7.html b/community/installation-guides/panel/centos7.html index 20033d57..81826e56 100644 --- a/community/installation-guides/panel/centos7.html +++ b/community/installation-guides/panel/centos7.html @@ -15,7 +15,7 @@ - + @@ -169,6 +169,6 @@ server { ← Community Guides and Tutorials
- + diff --git a/community/installation-guides/panel/centos8.html b/community/installation-guides/panel/centos8.html index 2cd1e380..7887d21a 100644 --- a/community/installation-guides/panel/centos8.html +++ b/community/installation-guides/panel/centos8.html @@ -15,7 +15,7 @@ - + @@ -152,6 +152,6 @@ server { ← CentOS 7
- + diff --git a/community/installation-guides/panel/debian10.html b/community/installation-guides/panel/debian10.html index 1b4d0923..86338c6b 100644 --- a/community/installation-guides/panel/debian10.html +++ b/community/installation-guides/panel/debian10.html @@ -15,7 +15,7 @@ - + @@ -137,6 +137,6 @@ server { ← Debian 9
- + diff --git a/community/installation-guides/panel/debian9.html b/community/installation-guides/panel/debian9.html index eb22bb0a..a66695c0 100644 --- a/community/installation-guides/panel/debian9.html +++ b/community/installation-guides/panel/debian9.html @@ -15,7 +15,7 @@ - + @@ -140,6 +140,6 @@ server { ← CentOS 8, Rocky Linux 8, AlmaLinux 8
- + diff --git a/community/installation-guides/panel/ubuntu1804.html b/community/installation-guides/panel/ubuntu1804.html index 58ef1c3c..91e64b10 100644 --- a/community/installation-guides/panel/ubuntu1804.html +++ b/community/installation-guides/panel/ubuntu1804.html @@ -15,7 +15,7 @@ - + @@ -131,6 +131,6 @@ server { ← Debian 10
- + diff --git a/community/installation-guides/panel/ubuntu2004.html b/community/installation-guides/panel/ubuntu2004.html index cffe5dc4..a691a3ee 100644 --- a/community/installation-guides/panel/ubuntu2004.html +++ b/community/installation-guides/panel/ubuntu2004.html @@ -15,7 +15,7 @@ - + @@ -65,6 +65,6 @@ systemctl start php8.0-fpm ← Ubuntu 18.04
- + diff --git a/community/installation-guides/wings/centos7.html b/community/installation-guides/wings/centos7.html index b713723d..69a828e1 100644 --- a/community/installation-guides/wings/centos7.html +++ b/community/installation-guides/wings/centos7.html @@ -15,7 +15,7 @@ - + @@ -56,6 +56,6 @@ firewall-cmd --reload ← Ubuntu 20.04
- + diff --git a/community/installation-guides/wings/centos8.html b/community/installation-guides/wings/centos8.html index 1cb71a95..242a6fd2 100644 --- a/community/installation-guides/wings/centos8.html +++ b/community/installation-guides/wings/centos8.html @@ -15,7 +15,7 @@ - + @@ -56,6 +56,6 @@ firewall-cmd --reload ← CentOS 7
- + diff --git a/community/installation-guides/wings/debian10.html b/community/installation-guides/wings/debian10.html index a00d45f2..b54167be 100644 --- a/community/installation-guides/wings/debian10.html +++ b/community/installation-guides/wings/debian10.html @@ -15,7 +15,7 @@ - + @@ -55,6 +55,6 @@ systemctl start docker ← Debian 9
- + diff --git a/community/installation-guides/wings/debian9.html b/community/installation-guides/wings/debian9.html index 2caba03e..f8dcce1a 100644 --- a/community/installation-guides/wings/debian9.html +++ b/community/installation-guides/wings/debian9.html @@ -15,7 +15,7 @@ - + @@ -55,6 +55,6 @@ systemctl start docker ← CentOS 8, Rocky Linux 8, AlmaLinux 8
- + diff --git a/community/installation-guides/wings/ubuntu1804.html b/community/installation-guides/wings/ubuntu1804.html index 051bef7d..a0027649 100644 --- a/community/installation-guides/wings/ubuntu1804.html +++ b/community/installation-guides/wings/ubuntu1804.html @@ -15,7 +15,7 @@ - + @@ -45,6 +45,6 @@ systemctl start docker ← Debian 10
- + diff --git a/community/installation-guides/wings/ubuntu2004.html b/community/installation-guides/wings/ubuntu2004.html index f2c91c29..61c6289a 100644 --- a/community/installation-guides/wings/ubuntu2004.html +++ b/community/installation-guides/wings/ubuntu2004.html @@ -15,7 +15,7 @@ - + @@ -45,6 +45,6 @@ systemctl start docker ← Ubuntu 18.04
- + diff --git a/community/tutorials/artisan.html b/community/tutorials/artisan.html index 47e124d7..d39ac54c 100644 --- a/community/tutorials/artisan.html +++ b/community/tutorials/artisan.html @@ -15,7 +15,7 @@ - + @@ -62,6 +62,6 @@ ← Creating a New Node
- + diff --git a/daemon/0.6/configuration.html b/daemon/0.6/configuration.html index 931d81e4..361248df 100644 --- a/daemon/0.6/configuration.html +++ b/daemon/0.6/configuration.html @@ -15,7 +15,7 @@ - + @@ -36,13 +36,13 @@ (opens new window)

# Additional Configuration

This Software is Abandoned

This documentation is for abandoned software which does not recieve any security updates or support from the community. This documentation has been left accessible for historial reasons.

You should be installing and using Wings in production environments with Pterodactyl Panel 1.0.

WARNING

These are advanced configurations for the daemon. You risk breaking your daemon and making containers un-usable if @@ -97,6 +97,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 eca3b81a..08ff4988 100644 --- a/daemon/0.6/debian_8_docker.html +++ b/daemon/0.6/debian_8_docker.html @@ -15,7 +15,7 @@ - + @@ -36,13 +36,13 @@ (opens new window)

# Docker on Debian 8

WARNING

There is a potential for broken software after this upgrade as we are moving to a non-stable kernel (in regards to mainline Debian). Please take backups and only proceed if you are comfortable with this process.

# Install Docker

To begin with, we're going to install docker just like we would for any other OS by following Docker's official documentation for Debian (opens new window).

Once you've done that, if you run docker info you'll notice some missing features at the bottom, something @@ -69,6 +69,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 ef6f1235..c4d89ef3 100644 --- a/daemon/0.6/installing.html +++ b/daemon/0.6/installing.html @@ -15,7 +15,7 @@ - + @@ -36,13 +36,13 @@ (opens new window)

# Installation

This Software is Abandoned

This documentation is for abandoned software which does not recieve any security updates or support from the community. This documentation has been left accessible for historial reasons.

You should be installing and using Wings in production environments with Pterodactyl Panel 1.0.

WARNING

This specific software is for Pterodactyl v0.7 and must not be used for Pterodactyl v1.0. If you have installed 1.0 you should use Wings instead.

# Supported Systems

Operating System Version Supported Notes
Ubuntu 18.04 Documentation written assuming Ubuntu 18.04 as the base OS.
20.04
CentOS 7 ⚠️ Extra repos are required
8
Debian 9
10

# System Requirements

In order to run the Daemon you will need a system capable of running Docker containers. Most VPS and almost all @@ -104,6 +104,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 6969b41b..2d4c3d3b 100644 --- a/daemon/0.6/kernel_modifications.html +++ b/daemon/0.6/kernel_modifications.html @@ -15,7 +15,7 @@ - + @@ -36,13 +36,13 @@ (opens new window)

# Kernel Modifications

TIP

In most cases, only users with a server provided by OVH will need to make any modifications to their kernel.

# Update Kernel

Install the new kernels using apt-get. In this case we are installing the latest version of the kernel, but feel free to browse using apt-cache search linux-image-extra to find all possible image versions you can install. You'll want to install the latest.

apt-get install linux-image-generic linux-image-extra-virtual
@@ -69,6 +69,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 12b02992..8d661ec2 100644 --- a/daemon/0.6/standalone_sftp.html +++ b/daemon/0.6/standalone_sftp.html @@ -15,7 +15,7 @@ - + @@ -36,13 +36,13 @@ (opens new window)

# Standalone SFTP Server

This Software is Abandoned

This documentation is for abandoned software which does not recieve any security updates or support from the community. This documentation has been left accessible for historial reasons.

You should be installing and using Wings in production environments with Pterodactyl Panel 1.0.

WARNING

Standalone SFTP support was introduced in Panel@v0.7.11 and Daemon@v0.6.8 and will not work with prior versions.

Pterodactyl now ships with the option to use a standalone SFTP server (opens new window) @@ -84,6 +84,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 ddd9d00c..2f41e57f 100644 --- a/daemon/0.6/upgrade/0.4_to_0.5.html +++ b/daemon/0.6/upgrade/0.4_to_0.5.html @@ -15,7 +15,7 @@ - + @@ -36,13 +36,13 @@ (opens new window)

# Upgrading 0.4.X to 0.5.X

This Software is Abandoned

This documentation is for abandoned software which does not recieve any security updates or support from the community. This documentation has been left accessible for historial reasons.

You should be installing and using Wings in production environments with Pterodactyl Panel 1.0.

DANGER

This upgrade process will require that all servers running through the Daemon be offline for a short period @@ -75,6 +75,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 09769787..4df34874 100644 --- a/daemon/0.6/upgrade/0.5.html +++ b/daemon/0.6/upgrade/0.5.html @@ -15,7 +15,7 @@ - + @@ -36,13 +36,13 @@ (opens new window)

# Upgrading 0.5 Series

This Software is Abandoned

This documentation is for abandoned software which does not recieve any security updates or support from the community. This documentation has been left accessible for historial reasons.

You should be installing and using Wings in production environments with Pterodactyl Panel 1.0.

TIP

Your servers will not go offline during this process thanks to Docker. Clients will briefly lose connection @@ -52,6 +52,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 ba733107..2aa503dc 100644 --- a/daemon/0.6/upgrade/0.5_to_0.6.html +++ b/daemon/0.6/upgrade/0.5_to_0.6.html @@ -15,7 +15,7 @@ - + @@ -36,13 +36,13 @@ (opens new window)

# Upgrading 0.5.X to 0.6.X

This Software is Abandoned

This documentation is for abandoned software which does not recieve any security updates or support from the community. This documentation has been left accessible for historial reasons.

You should be installing and using Wings in production environments with Pterodactyl Panel 1.0.

Server Restart Required

Your servers will need to be restarted after upgrading the daemon in order to see the expected log output in the Panel.

# Breaking Changes

This release introduces a few breaking changes to how the Daemon operates, but maintains compatibility with v0.7.X of @@ -62,6 +62,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 aa7df4b3..871152aa 100644 --- a/daemon/0.6/upgrade/0.6.html +++ b/daemon/0.6/upgrade/0.6.html @@ -15,7 +15,7 @@ - + @@ -36,13 +36,13 @@ (opens new window)

# Upgrading 0.6 Series

This Software is Abandoned

This documentation is for abandoned software which does not recieve any security updates or support from the community. This documentation has been left accessible for historial reasons.

You should be installing and using Wings in production environments with Pterodactyl Panel 1.0.

Minor Versions Only

DO NOT use this guide to upgrade from 0.5.X to 0.6.X, it will not work and you will encounter errors afterwards. Please check the 0.5 to 0.6 upgrade documentation to perform that update.

TIP

Your servers will not go offline during this process thanks to Docker. Clients will briefly lose connection @@ -54,6 +54,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 7cb0c81d..d89ea151 100644 --- a/daemon/0.6/upgrading.html +++ b/daemon/0.6/upgrading.html @@ -15,7 +15,7 @@ - + @@ -36,16 +36,16 @@ (opens new window)

# Upgrading

This Software is Abandoned

This documentation is for abandoned software which does not recieve any security updates or support from the community. This documentation has been left accessible for historial reasons.

You should be installing and using Wings in production environments with Pterodactyl Panel 1.0.

# Version Specific Guides

- + diff --git a/guides/mounts.html b/guides/mounts.html index 0e96d1bb..f701ecc0 100644 --- a/guides/mounts.html +++ b/guides/mounts.html @@ -15,7 +15,7 @@ - + @@ -36,13 +36,13 @@ (opens new window)

# Using Mounts

Mounts is a feature that allows administrators to mount other directories from the host file-system into a Server's container.

# Wings Configuration

For security reasons it is not possible to mount directories on a node by default. Directories that should be mountable have to be specified explicitly in the Wings configuration.

In the Wings configuration file (/etc/pterodactyl/config.yml) the allowed_mounts field is used to list mountable directories. The listed directories and all their subdirectories can be mounted.

allowed_mounts:
 - /example
 

You have to restart Wings to apply new changes to your Wings config.

# Panel Configuration

You have to configure mounts in admin Panel in order to use them with your servers. They consist of a source pad on the node and a target path where it will be mounted in the container.

Path in the container

Mounts cannot be mounted to or inside of /home/container or any subdirectory of it, nor can you cross-mount servers such as Server A's directory into Server B.

# Creating a Mount

  1. In the admin Panel go to Mounts.
  2. Create a new mount.
  3. Fill in the details as required. @@ -52,6 +52,6 @@ ← Creating SSL Certificates
- + diff --git a/guides/php_upgrade.html b/guides/php_upgrade.html index ad362c4f..f2294125 100644 --- a/guides/php_upgrade.html +++ b/guides/php_upgrade.html @@ -15,7 +15,7 @@ - + @@ -36,13 +36,13 @@ (opens new window)

# Upgrading PHP

This documentation includes instructions for upgrading your system to the latest version of PHP. Please reference the table below to check what version you need for your version of Pterodactyl.

Panel Version PHP Version
1.0.0 - 1.2.0 7.3, 7.4
1.3.0+ 7.4, 8.0

# Install PHP

In order to install PHP 8.0, you will need to run the following command. Please keep in mind different operating systems may have slightly different requirements for how this command is formatted.

# Add additional repository for PHP
@@ -62,6 +62,6 @@ a2enmod php8.0
 # Hint: a2dismod = a2_disable_module 🤯
 a2dismod php7.3
 

# Return to the 1.X.X Upgrade Guide

- + diff --git a/index.html b/index.html index b8825309..ace1f5b6 100644 --- a/index.html +++ b/index.html @@ -15,7 +15,7 @@ - + @@ -36,13 +36,13 @@ (opens new window)

Pterodactyl Panel

Pterodactyl is an open-source game server management panel built with PHP 7, React, and Go. Designed with security in mind, Pterodactyl runs all game servers in isolated Docker containers @@ -57,6 +57,6 @@ Take the plunge today and discover why thousands of users trust Pterodactyl to manage their game servers.

- + diff --git a/ops/publish_release.html b/ops/publish_release.html index 590b0c05..9d1497e6 100644 --- a/ops/publish_release.html +++ b/ops/publish_release.html @@ -15,7 +15,7 @@ - + @@ -36,13 +36,13 @@ (opens new window)

# Publishing a Release

TIP

This documentation is specific to the core project team and serves to document how we create, deploy, and announce releases of this software. It might be an interesting read, but you'll likely never use anything out of this on a day-to-day basis.

# Pick a Codename

If this is going to be a major version release 0.X or 1.X (not 0.0.X), you will need to have a codename picked @@ -90,6 +90,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 3333359d..c0c39075 100644 --- a/panel/0.7/configuration.html +++ b/panel/0.7/configuration.html @@ -15,7 +15,7 @@ - + @@ -36,13 +36,13 @@ (opens new window)

# Environment Configuration

Pterodactyl's environment settings are configured and stored in an environment file — .env — located in the installation root directory — generally /var/www/pterodactyl. Some of these settings are also stored in the database and will override settings found in the environment file.

To change this behavior you can edit the .env file and change the setting APP_ENVIRONMENT_ONLY=false to @@ -80,6 +80,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 (opens new window).
  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 f88e1010..2afa7689 100644 --- a/panel/0.7/getting_started.html +++ b/panel/0.7/getting_started.html @@ -15,7 +15,7 @@ - + @@ -36,13 +36,13 @@ (opens new window)

# Getting Started

This Version is End-of-Life

This documentation is for end-of-life software which does not recieve any security updates or support from the community. This documentation has been left accessible for historial reasons.

You should be installing and using Pterodactyl Panel 1.0 in production environments.

Pterodactyl Panel is designed to run on your own web server. You will need to have root access to your server in order to run and use this panel.

This panel does not exist as a drag-and-drop service to run your servers. It is a highly complex system @@ -140,6 +140,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 89036604..cd996c83 100644 --- a/panel/0.7/troubleshooting.html +++ b/panel/0.7/troubleshooting.html @@ -15,7 +15,7 @@ - + @@ -36,13 +36,13 @@ (opens new window)

# Troubleshooting

# Reading Error Logs

If you ever encounter an unexpected error with the Panel the first thing you will likely be asked for is the logs. To retrieve these, simply execute the command below which will output the last 100 lines of the Panel's log file.

tail -n 100 /var/www/pterodactyl/storage/logs/laravel-$(date +%F).log
 

# Parsing the Error

When you run the command above, you'll probably be hit with a huge wall of text that might scare you. Fear not, @@ -94,6 +94,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 a2a0fffc..6f1b6fe1 100644 --- a/panel/0.7/upgrade/0.6_to_0.7.html +++ b/panel/0.7/upgrade/0.6_to_0.7.html @@ -15,7 +15,7 @@ - + @@ -36,13 +36,13 @@ (opens new window)

# Upgrading 0.6 to 0.7

This Version is End-of-Life

This documentation is for end-of-life software which does not recieve any security updates or support from the community. This documentation has been left accessible for historial reasons.

You should be installing and using Pterodactyl Panel 1.0 in production environments.

# Fetch Updated Files

The first step in the update process is to download the new panel files from GitHub. The command below will download the release archive for the most recent version of Pterodactyl and save it in the current directory. Now is a good time @@ -81,6 +81,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 0417e7c9..68bc6d22 100644 --- a/panel/0.7/upgrade/0.7.html +++ b/panel/0.7/upgrade/0.7.html @@ -15,7 +15,7 @@ - + @@ -36,13 +36,13 @@ (opens new window)

# Upgrading 0.7 Series

This Version is End-of-Life

This documentation is for end-of-life software which does not recieve any security updates or support from the community. This documentation has been left accessible for historial reasons.

You should be installing and using Pterodactyl Panel 1.0 in production environments.

This documentation covers the process for upgrading within the 0.7.X series of releases. This means upgrading from — for example — 0.7.3 to 0.7.11. Do not use this guide for upgrading from 0.6 or upgrading to 1.0.

WARNING

If you are using a custom theme please be aware that upgrading will remove those files. You will need to re-upload @@ -71,6 +71,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 3e5e5872..b64bf759 100644 --- a/panel/0.7/upgrading.html +++ b/panel/0.7/upgrading.html @@ -15,7 +15,7 @@ - + @@ -36,13 +36,13 @@ (opens new window)

# Upgrading

Upgrading the Panel is a relatively simple process. Below you will find a list of articles that will walk you through the upgrade process for each version of the software.

This Version is End-of-Life

This documentation is for end-of-life software which does not recieve any security updates or support from the community. This documentation has been left accessible for historial reasons.

You should be installing and using Pterodactyl Panel 1.0 in production environments.

# Maintenance Mode

Whenever you are performing an upgrade, you should be sure to place your Panel into "maintenance mode". This will prevent @@ -53,6 +53,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 96d81ce5..dccd0359 100644 --- a/panel/0.7/webserver_configuration.html +++ b/panel/0.7/webserver_configuration.html @@ -15,7 +15,7 @@ - + @@ -36,13 +36,13 @@ (opens new window)

# Webserver Configuration

This Version is End-of-Life

This documentation is for end-of-life software which does not recieve any security updates or support from the community. This documentation has been left accessible for historial reasons.

You should be installing and using Pterodactyl Panel 1.0 in production environments.

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 @@ -200,6 +200,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 6b84a78d..191ccd0f 100644 --- a/panel/1.0/additional_configuration.html +++ b/panel/1.0/additional_configuration.html @@ -15,7 +15,7 @@ - + @@ -36,13 +36,13 @@ (opens new window)

# Additional Configuration

# Backups

Pterodactyl Panel allows users to create backups of their servers. In order to create backups, a backup storage method has to be configured.

When changing Pterodactyl Panel's backup storage method, users may still download or delete existing backups from the prior storage driver. In the instance of migrating from S3 to local backups, S3 credentials must remain configured after switching to the local backup storage method.

# Using Local Backups

By default, Pterodactyl Panel uses local storage via Wings for backups. That said, this method of backup storage can be explicitly set with the following configuration in the .env file:

# Sets your panel to use local storage via Wings for backups
 APP_BACKUP_DRIVER=wings
 

Do note that, when using local storage via Wings, the destination for backups is set in Wings' config.yml with the following setting key:

system:
@@ -62,6 +62,6 @@
 UPDATE panel.settings SET value = 0 WHERE `key` = 'settings::pterodactyl:auth:2fa_required';
 

# Disable 2FA for a specific user

Run the following command in your /var/www/pterodactyl directory.

php artisan p:user:disable2fa
 
- + diff --git a/panel/1.0/getting_started.html b/panel/1.0/getting_started.html index dc5bf90b..8401e173 100644 --- a/panel/1.0/getting_started.html +++ b/panel/1.0/getting_started.html @@ -15,7 +15,7 @@ - + @@ -36,13 +36,13 @@ (opens new window)

# Getting Started

Pterodactyl Panel is designed to run on your own web server. You will need to have root access to your server in order to run and use this panel.

You are expected to understand how to read documentation to use this Panel. We have spent many hours detailing how to install or upgrade our software; take some time and read rather than copy and pasting and then complaining when things do not work. This panel does not exist as a drag-and-drop service to run your servers. It is a highly complex system requiring multiple dependencies and @@ -135,6 +135,6 @@ WantedBy=multi-user.target when the service starts.

If you 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/legacy_upgrade.html b/panel/1.0/legacy_upgrade.html index 352a413c..00a9971d 100644 --- a/panel/1.0/legacy_upgrade.html +++ b/panel/1.0/legacy_upgrade.html @@ -15,7 +15,7 @@ - + @@ -36,13 +36,13 @@ (opens new window)

# Legacy Upgrades

This upgrade guide is for upgrading from 0.7.X to 1.3.x. If you are trying to do an upgrade on a 1.X Panel please use this guide instead. During this upgrade process you will have some periods of Panel unavailability, however none of the underlying game server instances will be stopped.

# Enter Maintenance Mode

You'll want to put your Panel into maintenance mode by running the down command below before starting. This @@ -93,6 +93,6 @@ php artisan up 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 Node.js Daemon to run servers with Pterodactyl Panel 1.0.

Please see Migrating to Wings for instructions.

- + diff --git a/panel/1.0/troubleshooting.html b/panel/1.0/troubleshooting.html index b01c1180..a0794a67 100644 --- a/panel/1.0/troubleshooting.html +++ b/panel/1.0/troubleshooting.html @@ -15,7 +15,7 @@ - + @@ -36,13 +36,13 @@ (opens new window)

# Troubleshooting

# Reading Error Logs

If you ever encounter an unexpected error with the Panel the first thing you will likely be asked for is the logs. To retrieve these, simply execute the command below which will output the last 100 lines of the Panel's log file.

tail -n 100 /var/www/pterodactyl/storage/logs/laravel-$(date +%F).log
 

# Parsing the Error

When you run the command above, you'll probably be hit with a huge wall of text that might scare you. Fear not, @@ -92,6 +92,6 @@ semodule -i http_port_t.pp

# FirewallD issues

If you are on a RHEL/CentOS server with firewalld installed you may have broken DNS.

firewall-cmd --permanent --zone=trusted --change-interface=pterodactyl0
 firewall-cmd --reload
 

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

- + diff --git a/panel/1.0/updating.html b/panel/1.0/updating.html index 1a0538e4..035dee17 100644 --- a/panel/1.0/updating.html +++ b/panel/1.0/updating.html @@ -15,7 +15,7 @@ - + @@ -36,13 +36,13 @@ (opens new window)

# Updating the Panel

This documentation covers the process for updating within the 1.x series of releases. This means updating from — for example — 1.5.0 to 1.6.0. Do not use this guide for upgrading from 0.7.

# Panel Version Requirements

Each version of Pterodactyl Panel also has a corresponding minimum version of Wings that is required for it to run. Please see the chart below for how these versions line up. In @@ -94,6 +94,6 @@ is www-data but can vary from system to system — sometimes being

# Exit Maintenance Mode

Now that everything has been updated you need to exit maintenance mode so that the Panel can resume accepting connections.

php artisan up
 

Final Step: Upgrade Wings

- + diff --git a/panel/1.0/webserver_configuration.html b/panel/1.0/webserver_configuration.html index 37de5ac1..451ef865 100644 --- a/panel/1.0/webserver_configuration.html +++ b/panel/1.0/webserver_configuration.html @@ -15,7 +15,7 @@ - + @@ -36,13 +36,13 @@ (opens new window)

# Webserver Configuration

DANGER

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

WARNING

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

    # Next Step: Wings Installation

    - + diff --git a/project/about.html b/project/about.html index 2648d73d..d30ce877 100644 --- a/project/about.html +++ b/project/about.html @@ -15,7 +15,7 @@ - + @@ -36,13 +36,13 @@ (opens new window)

    # About

    # Core Project Team

    Name Discord Name Primary Role
    Dane Everitt (opens new window) Tactical Fish#8008 Project Maintainer
    Stepan Fedotov Trixter#0001 WISP & WHMCS Module Maintainer
    Michael Parker parkervcp#6789 Egg Developer, Docker Integration
    Anand Capur (opens new window) Arcdigital#1337 Mobile/Cloud Project Lead
    Jakob Schrettenbrunner (opens new window) schrej#1337 Developer
    Lance Pioch (opens new window) ShadowLancer#5209 Developer
    Matthew Penner (opens new window) matthewp#0001 Developer

    Members of the project team have a red username in our Discord server.

    # Community Team

    Pterodactyl would not be as successful as it is today without the help of our fantastic community support team. These members can be found in our Discord server and are distinguished with a yellow username.

    # Sponsors

    The following companies help to fund Pterodactyl's developement. Interested in becoming a sponsor? (opens new window)

    Company About
    WISP (opens new window) Extra features.
    Bloom.host (opens new window) Bloom.host offers dedicated core VPS and Minecraft hosting with Ryzen 9 processors. With owned-hardware, we offer truly unbeatable prices on high-performance hosting.
    MineStrator (opens new window) Looking for a French highend hosting company for you minecraft server? More than 14,000 members on our discord, trust us.
    DedicatedMC (opens new window) DedicatedMC provides Raw Power hosting at affordable pricing, making sure to never compromise on your performance and giving you the best performance money can buy.
    Skynode (opens new window) Skynode provides blazing fast game servers along with a top-notch user experience. Whatever our clients are looking for, we're able to provide it!
    XCORE (opens new window) XCORE offers High-End Servers for hosting and gaming since 2012. Fast, excellent and well-known for eSports Gaming.
    RoyaleHosting (opens new window) Build your dreams and deploy them with RoyaleHosting’s reliable servers and network. Easy to use, provisioned in a couple of minutes.
    Spill Hosting (opens new window) Spill Hosting is a Norwegian hosting service, which aims for inexpensive services on quality servers. Premium i9-9900K processors will run your game like a dream.
    DeinServerHost (opens new window) DeinServerHost offers Dedicated, vps and Gameservers for many popular Games like Minecraft and Rust in Germany since 2013.
    HostBend (opens new window) HostBend offers a variety of solutions for developers, students, and others who have a tight budget but don't want to compromise quality and support.
    Capitol Hosting Solutions (opens new window) CHS is the budget friendly hosting company for Australian and American gamers, offering a variety of plans from Web Hosting to Game Servers; Custom Solutions too!

    # License

    Copyright (c) 2015 - 2021 Dane Everitt <dane@daneeveritt.com>.
     
    @@ -118,6 +118,6 @@ gkSI5o2kam0QGYUhqg==
             ←
             Introduction
    - + diff --git a/project/community.html b/project/community.html index 1f8c2b4e..12768b6c 100644 --- a/project/community.html +++ b/project/community.html @@ -15,7 +15,7 @@ - + @@ -36,13 +36,13 @@ (opens new window)

    # Community Standards

    Pterodactyl has grown from a community of tens in 2015 to a community of thousands in 2020. During that time there have been countless growing pains and community has changed in an innumerable number of ways. At our heart however, Pterodactyl continues to exist for one purpose: to be the platform for running your game servers.

    In order to keep true to that goal, and continue to foster one of the largest open-source game panel communities @@ -69,6 +69,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 d8f5f617..4a9ef386 100644 --- a/project/introduction.html +++ b/project/introduction.html @@ -15,7 +15,7 @@ - + @@ -36,13 +36,13 @@ (opens new window)

    # Introduction

    Pterodactyl is the open-source game server management panel built with PHP7, Nodejs, and Go. Designed with security in mind, Pterodactyl runs all game servers in isolated Docker containers while exposing a beautiful and intuitive UI to administrators and users. What more are you waiting for? Make game servers a first-class @@ -53,6 +53,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 307b1127..214ed953 100644 --- a/project/terms.html +++ b/project/terms.html @@ -15,7 +15,7 @@ - + @@ -36,13 +36,13 @@ (opens new window)

    # Terminology

    Panel — This refers to Pterodactyl Panel itself, and is what allows you to add additional nodes and servers to the system.

    Node — A node is a physical machine that runs an instance of Wings.

    Wings — The newer service written in Go that interfaces with Docker and the Panel to provide secure access for controlling servers via the Panel.

    Server — In this case, a server refers to a running instance that is created by the panel. These servers are @@ -51,6 +51,6 @@ created on nodes, and you can have multiple servers per node.

    Doc ← About

    - + diff --git a/tutorials/creating_ssl_certificates.html b/tutorials/creating_ssl_certificates.html index c29a1ba6..1e9648a2 100644 --- a/tutorials/creating_ssl_certificates.html +++ b/tutorials/creating_ssl_certificates.html @@ -15,7 +15,7 @@ - + @@ -36,13 +36,13 @@ (opens new window)

    # Creating SSL Certificates

    This tutorial briefly covers creating new SSL certificates for your panel and daemon.

      - + diff --git a/tutorials/mysql_setup.html b/tutorials/mysql_setup.html index 696a0de2..9b48429b 100644 --- a/tutorials/mysql_setup.html +++ b/tutorials/mysql_setup.html @@ -15,7 +15,7 @@ - + @@ -36,13 +36,13 @@ (opens new window)

      # Setting up MySQL

      # Creating a database for Pterodactyl

      MySQL is a core component of Pterodactyl Panel but it can be confusing to setup and use if you've never done so before. This is a very basic tutorial that skims just enough of the surface to set MySQL up and running with the panel. If you're interested in learning more, there are some great tutorials available on the Internet.

      # Logging In

      The first step in this process is to login to the MySQL command line where we will be executing some statements to get @@ -68,6 +68,6 @@ bind-address=0.0.0.0 ← Community Standards

      - + diff --git a/wings/1.0/configuration.html b/wings/1.0/configuration.html index fc1cd238..fcaad616 100644 --- a/wings/1.0/configuration.html +++ b/wings/1.0/configuration.html @@ -15,7 +15,7 @@ - + @@ -36,13 +36,13 @@ (opens new window)

      # Additional Configuration

      WARNING

      These are advanced configurations for Wings. You risk breaking Wings and making containers unusable if you misconfigure something. Proceed only if you know what each configuration value does.

      You must apply all changes to your Wings config.yml file located at /etc/pterodactyl and restart wings. Verify your config file using Yaml Lint (opens new window) should you receive errors related to YAML parsing.

      # Private Registries

      You can use these settings to authenticate against (private) docker registries when pulling images.

      # Available Keys

      Setting Key Default Value Notes
      name null Registry address
      username null Registry username
      password null Registry password

      # Example of usage

      docker:
         registries:
      @@ -65,6 +65,6 @@ you misconfigure something. Proceed only if you know what each configuration val
         memory: 1024
         cpu: 100
       

      # Other values

      More commonly discussed values. View all Wings config values and explanations in these two files. (opens new window)

      Setting Key Default Value Notes
      debug false Force Wings to run in debug mode
      tmpfs_size 100 The size of the /tmp directory in MB when mounted into a container
      websocket_log_count 150 The number of lines to display in the console
      detect_clean_exit_as_crash true Mark server as crashed if it's stopped without user interaction, e.g., not pressing stop button
      (crash detection) timeout 60 Timeout between server crashes that will not cause the server to be automatically restarted
      app_name "Pterodactyl" Changes the name of the daemon, shown in the panel's game console
      check_permissions_on_boot true Check all file permissions on each boot. Disable this when you have a very large amount of files and the server startup is hanging on checking permissions
      - + diff --git a/wings/1.0/installing.html b/wings/1.0/installing.html index db00fe61..3af79bc4 100644 --- a/wings/1.0/installing.html +++ b/wings/1.0/installing.html @@ -15,7 +15,7 @@ - + @@ -36,13 +36,13 @@ (opens new window)

      # Installing Wings

      Wings is the next generation server control plane from Pterodactyl. It has been rebuilt from the ground up using Go and lessons learned from our first Nodejs Daemon.

      WARNING

      You should only install Wings if you are running Pterodactyl 1.x. Do not install this software for previous versions of Pterodactyl.

      # Supported Systems

      The following is a list of supported operating systems. Please be aware that this is not an exhaustive list, @@ -91,6 +91,6 @@ RestartSec=5s WantedBy=multi-user.target

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

      systemctl enable --now wings
       

      # Node Allocations

      Allocation is a combination of IP and Port that you can assign to a server. Each created server must have at least one allocation. The allocation would be the IP address of your network interface. In some cases, such as when behind NAT, it would be the internal IP. To create new allocations go to Nodes > your node > Allocation.

      Type hostname -I | awk '{print $1}' to find the IP to be used for the allocation. Alternatively, you can type ip addr | grep "inet " to see all your available interfaces and IP addresses. Do not use 127.0.0.1 for allocations.

      - + diff --git a/wings/1.0/migrating.html b/wings/1.0/migrating.html index 55ddc2ba..070d6b72 100644 --- a/wings/1.0/migrating.html +++ b/wings/1.0/migrating.html @@ -15,7 +15,7 @@ - + @@ -36,13 +36,13 @@ (opens new window)

      # Migrating to Wings

      This guide is for people looking to migrate from the old Node.JS daemon to Wings. Please see the install guide if you are trying to install Wings for the first time on a new node.

      Panel Version Requirement

      You must be running Pterodactyl Panel 1.X in order to use Wings.

      You'll have a brief offline period as you perform this process, however no running game processes @@ -93,6 +93,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 83dc1536..445f1433 100644 --- a/wings/1.0/upgrading.html +++ b/wings/1.0/upgrading.html @@ -15,7 +15,7 @@ - + @@ -36,13 +36,13 @@ (opens new window)

      # Upgrading Wings

      Upgrading Wings is a painless process and should take less than a minute to complete.

      # Wings Version Requirements

      Each version of Pterodactyl Panel also has a corresponding minimum version of Wings that is required for it to run. Please see the chart below for how these versions line up. In most cases your base Wings version should match that of your Panel.

      Panel Version Wings Version Supported
      1.0.x 1.0.x
      1.1.x 1.1.x
      1.2.x 1.2.x
      1.3.x 1.3.x
      1.4.x 1.4.x
      1.5.x 1.4.x
      1.6.x 1.5.x

      # Download Updated Binary

      First, download the updated wings binary into /usr/local/bin.

      curl -L -o /usr/local/bin/wings https://github.com/pterodactyl/wings/releases/latest/download/wings_linux_amd64
      @@ -50,6 +50,6 @@ most cases your base Wings version should match that of your Panel.

      <

      # 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
       
      - +