mirror of
https://github.com/pterodactyl/documentation.git
synced 2025-12-10 10:44:43 -06:00
Merge branch 'master' into pr/67
This commit is contained in:
commit
56e6c65745
@ -32,10 +32,6 @@ module.exports = {
|
||||
text: 'Get Started',
|
||||
link: '/project/introduction.md',
|
||||
},
|
||||
// {
|
||||
// text: 'API Reference',
|
||||
// link: '/api/'
|
||||
// },
|
||||
{
|
||||
text: 'Community Guides',
|
||||
link: '/community/about.md',
|
||||
@ -45,263 +41,91 @@ module.exports = {
|
||||
link: 'https://pterodactyl.io/discord'
|
||||
}
|
||||
],
|
||||
sidebar: {
|
||||
'/project/': [
|
||||
{
|
||||
title: 'Project Information',
|
||||
collapsable: false,
|
||||
children: [
|
||||
'/project/introduction.md',
|
||||
'/project/about.md',
|
||||
'/project/terms.md',
|
||||
]
|
||||
},
|
||||
{
|
||||
title: 'Panel',
|
||||
collapsable: false,
|
||||
children: [
|
||||
'/panel/getting_started',
|
||||
'/panel/webserver_configuration',
|
||||
'/panel/upgrading',
|
||||
'/panel/configuration',
|
||||
'/panel/troubleshooting',
|
||||
]
|
||||
},
|
||||
{
|
||||
title: 'Daemon',
|
||||
collapsable: false,
|
||||
children: [
|
||||
'/daemon/installing',
|
||||
'/daemon/upgrading',
|
||||
'/daemon/configuration',
|
||||
'/daemon/kernel_modifications',
|
||||
'/daemon/debian_8_docker',
|
||||
'/daemon/standalone_sftp',
|
||||
]
|
||||
},
|
||||
{
|
||||
title: 'Tutorials',
|
||||
collapsable: false,
|
||||
children: [
|
||||
'/tutorials/mysql_setup.md',
|
||||
'/tutorials/creating_ssl_certificates.md',
|
||||
],
|
||||
},
|
||||
{
|
||||
title: 'Development & Ops',
|
||||
collapsable: true,
|
||||
children: [
|
||||
'/ops/publish_release.md',
|
||||
],
|
||||
},
|
||||
// {
|
||||
// title: 'API Reference',
|
||||
// collapsable: true,
|
||||
// children: [
|
||||
// '/',
|
||||
// ]
|
||||
// }
|
||||
],
|
||||
'/panel/': [
|
||||
{
|
||||
title: 'Project Information',
|
||||
collapsable: false,
|
||||
children: [
|
||||
'/project/introduction.md',
|
||||
'/project/about.md',
|
||||
'/project/terms.md',
|
||||
]
|
||||
},
|
||||
{
|
||||
title: 'Panel',
|
||||
collapsable: false,
|
||||
children: [
|
||||
'/panel/getting_started',
|
||||
'/panel/webserver_configuration',
|
||||
'/panel/upgrading',
|
||||
'/panel/configuration',
|
||||
'/panel/troubleshooting',
|
||||
]
|
||||
},
|
||||
{
|
||||
title: 'Daemon',
|
||||
collapsable: false,
|
||||
children: [
|
||||
'/daemon/installing',
|
||||
'/daemon/upgrading',
|
||||
'/daemon/configuration',
|
||||
'/daemon/kernel_modifications',
|
||||
'/daemon/debian_8_docker',
|
||||
]
|
||||
},
|
||||
{
|
||||
title: 'Tutorials',
|
||||
collapsable: false,
|
||||
children: [
|
||||
'/tutorials/mysql_setup.md',
|
||||
'/tutorials/creating_ssl_certificates.md',
|
||||
],
|
||||
},
|
||||
{
|
||||
title: 'Development & Ops',
|
||||
collapsable: true,
|
||||
children: [
|
||||
'/ops/publish_release.md',
|
||||
],
|
||||
},
|
||||
// {
|
||||
// title: 'API Reference',
|
||||
// collapsable: true,
|
||||
// children: [
|
||||
// '/',
|
||||
// ]
|
||||
// }
|
||||
],
|
||||
'/daemon/': [
|
||||
{
|
||||
title: 'Project Information',
|
||||
collapsable: false,
|
||||
children: [
|
||||
'/project/introduction.md',
|
||||
'/project/about.md',
|
||||
'/project/terms.md',
|
||||
]
|
||||
},
|
||||
{
|
||||
title: 'Panel',
|
||||
collapsable: false,
|
||||
children: [
|
||||
'/panel/getting_started',
|
||||
'/panel/webserver_configuration',
|
||||
'/panel/upgrading',
|
||||
'/panel/configuration',
|
||||
'/panel/troubleshooting',
|
||||
]
|
||||
},
|
||||
{
|
||||
title: 'Daemon',
|
||||
collapsable: false,
|
||||
children: [
|
||||
'/daemon/installing',
|
||||
'/daemon/upgrading',
|
||||
'/daemon/configuration',
|
||||
'/daemon/kernel_modifications',
|
||||
'/daemon/debian_8_docker',
|
||||
]
|
||||
},
|
||||
{
|
||||
title: 'Tutorials',
|
||||
collapsable: false,
|
||||
children: [
|
||||
'/tutorials/mysql_setup.md',
|
||||
'/tutorials/creating_ssl_certificates.md',
|
||||
],
|
||||
},
|
||||
{
|
||||
title: 'Development & Ops',
|
||||
collapsable: true,
|
||||
children: [
|
||||
'/ops/publish_release.md',
|
||||
],
|
||||
},
|
||||
// {
|
||||
// title: 'API Reference',
|
||||
// collapsable: true,
|
||||
// children: [
|
||||
// '/',
|
||||
// ]
|
||||
// }
|
||||
],
|
||||
'/tutorials/': [
|
||||
{
|
||||
title: 'Project Information',
|
||||
collapsable: false,
|
||||
children: [
|
||||
'/project/introduction.md',
|
||||
'/project/about.md',
|
||||
'/project/terms.md',
|
||||
]
|
||||
},
|
||||
{
|
||||
title: 'Panel',
|
||||
collapsable: false,
|
||||
children: [
|
||||
'/panel/getting_started',
|
||||
'/panel/webserver_configuration',
|
||||
'/panel/upgrading',
|
||||
'/panel/configuration',
|
||||
'/panel/troubleshooting',
|
||||
]
|
||||
},
|
||||
{
|
||||
title: 'Daemon',
|
||||
collapsable: false,
|
||||
children: [
|
||||
'/daemon/installing',
|
||||
'/daemon/upgrading',
|
||||
'/daemon/configuration',
|
||||
'/daemon/kernel_modifications',
|
||||
'/daemon/debian_8_docker',
|
||||
]
|
||||
},
|
||||
{
|
||||
title: 'Tutorials',
|
||||
collapsable: false,
|
||||
children: [
|
||||
'/tutorials/mysql_setup.md',
|
||||
'/tutorials/creating_ssl_certificates.md',
|
||||
],
|
||||
},
|
||||
{
|
||||
title: 'Development & Ops',
|
||||
collapsable: true,
|
||||
children: [
|
||||
'/ops/publish_release.md',
|
||||
],
|
||||
},
|
||||
// {
|
||||
// title: 'API Reference',
|
||||
// collapsable: true,
|
||||
// children: [
|
||||
// '/',
|
||||
// ]
|
||||
// }
|
||||
],
|
||||
'/community/':[
|
||||
{
|
||||
title: 'Community Guides',
|
||||
collapsable: false,
|
||||
children: [
|
||||
'/community/about.md',
|
||||
]
|
||||
},
|
||||
{
|
||||
title: 'Install Panel',
|
||||
collapsable: false,
|
||||
children: [
|
||||
'/community/install/panel/centos7.md',
|
||||
'/community/install/panel/ubuntu1804.md',
|
||||
'/community/install/panel/debian9.md',
|
||||
]
|
||||
},
|
||||
{
|
||||
title: 'Install Daemon',
|
||||
collapsable: false,
|
||||
children: [
|
||||
'/community/install/daemon/centos7.md',
|
||||
'/community/install/daemon/ubuntu1804.md',
|
||||
'/community/install/daemon/debian9.md',
|
||||
]
|
||||
},
|
||||
{
|
||||
title: 'Minecraft',
|
||||
collapsable: false,
|
||||
children: [
|
||||
'/community/minecraft/networks.md',
|
||||
],
|
||||
},
|
||||
]
|
||||
}
|
||||
sidebar: {
|
||||
'/community/': [
|
||||
{
|
||||
title: 'Community Guides',
|
||||
collapsable: false,
|
||||
children: [
|
||||
'/community/about.md',
|
||||
]
|
||||
},
|
||||
{
|
||||
title: 'Panel Installation',
|
||||
collapsable: false,
|
||||
children: [
|
||||
'/community/installation-guides/panel/centos7.md',
|
||||
'/community/installation-guides/panel/ubuntu1804.md',
|
||||
'/community/installation-guides/panel/debian9.md',
|
||||
]
|
||||
},
|
||||
{
|
||||
title: 'Daemon Installation',
|
||||
collapsable: false,
|
||||
children: [
|
||||
'/community/installation-guides/daemon/centos7.md',
|
||||
'/community/installation-guides/daemon/ubuntu1804.md',
|
||||
'/community/installation-guides/daemon/debian9.md',
|
||||
]
|
||||
},
|
||||
{
|
||||
title: 'Minecraft',
|
||||
collapsable: false,
|
||||
children: [
|
||||
'/community/minecraft/networks.md',
|
||||
],
|
||||
},
|
||||
],
|
||||
'/': [
|
||||
{
|
||||
title: 'Project Information',
|
||||
collapsable: false,
|
||||
children: [
|
||||
'/project/introduction.md',
|
||||
'/project/about.md',
|
||||
'/project/terms.md',
|
||||
]
|
||||
},
|
||||
{
|
||||
title: 'Panel',
|
||||
collapsable: false,
|
||||
children: [
|
||||
'/panel/getting_started',
|
||||
'/panel/webserver_configuration',
|
||||
'/panel/upgrading',
|
||||
'/panel/configuration',
|
||||
'/panel/troubleshooting',
|
||||
]
|
||||
},
|
||||
{
|
||||
title: 'Daemon',
|
||||
collapsable: false,
|
||||
children: [
|
||||
'/daemon/installing',
|
||||
'/daemon/upgrading',
|
||||
'/daemon/configuration',
|
||||
'/daemon/kernel_modifications',
|
||||
'/daemon/debian_8_docker',
|
||||
'/daemon/standalone_sftp',
|
||||
]
|
||||
},
|
||||
{
|
||||
title: 'Tutorials',
|
||||
collapsable: false,
|
||||
children: [
|
||||
'/tutorials/mysql_setup.md',
|
||||
'/tutorials/creating_ssl_certificates.md',
|
||||
],
|
||||
},
|
||||
{
|
||||
title: 'Development & Ops',
|
||||
collapsable: true,
|
||||
children: [
|
||||
'/ops/publish_release.md',
|
||||
],
|
||||
},
|
||||
],
|
||||
},
|
||||
},
|
||||
postcss: {
|
||||
plugins: [
|
||||
|
||||
@ -1,5 +1,6 @@
|
||||
# Introduction
|
||||
This is the community guide section of the site.
|
||||
# About
|
||||
This section of Pterodactyl's site is dedicated to more complex topics, tutorials, and features that we
|
||||
feel are important to share with the community, but do not fit into the theme of our core documentation.
|
||||
|
||||
##
|
||||
This is the area for community maintained guides that have been validated before being added.
|
||||
Here you'll find in-depth OS-specific installation guides, advanced network configurations, individual game
|
||||
setup instructions, and so much more.
|
||||
|
||||
@ -1,32 +0,0 @@
|
||||
# Install wings on Ubuntu 18.04
|
||||
|
||||
This guide covers the installation of the requirements for a daemon with SSL enabled.
|
||||
|
||||
[[toc]]
|
||||
|
||||
## Install Requirements
|
||||
|
||||
The daemon requirements can be found [here](/daemon/installing.md#system-requirements)
|
||||
|
||||
### General Requirements
|
||||
```bash
|
||||
apt install -y zip unzip tar make gcc g++ python
|
||||
```
|
||||
|
||||
### Docker
|
||||
|
||||
```bash
|
||||
apt install -y docker.io
|
||||
|
||||
systemctl enable docker
|
||||
systemctl start docker
|
||||
```
|
||||
|
||||
### nodejs
|
||||
|
||||
```bash
|
||||
apt install -y nodejs npm
|
||||
```
|
||||
|
||||
## Installing the daemon
|
||||
Follow the regular guide to install the [daemon](/daemon/installing.md#installing-daemon-software)
|
||||
@ -1,12 +1,15 @@
|
||||
# Install wings on CentOS 7
|
||||
|
||||
This guide covers the installation of the requirements for a daemon with SSL enabled.
|
||||
# CentOS 7
|
||||
In this guide we will install Pterodactyl's Daemon (wings) — including all of it's dependencies — and configure it
|
||||
to use a SSL connection.
|
||||
|
||||
[[toc]]
|
||||
|
||||
## Install Requirements
|
||||
::: tip
|
||||
This guide is based off the [official installation documentation](/daemon/installing.md) but is tailored specifically for CentOS 7.
|
||||
:::
|
||||
|
||||
The daemon requirements can be found [here](/daemon/installing.md#system-requirements)
|
||||
## Install Requirements
|
||||
We will first begin by installing all of the Daemon's [required](/daemon/installing.md#dependencies) dependencies.
|
||||
|
||||
### General Requirements
|
||||
```bash
|
||||
@ -26,15 +29,14 @@ systemctl enable docker
|
||||
systemctl start docker
|
||||
```
|
||||
|
||||
### nodejs
|
||||
### Nodejs
|
||||
|
||||
```bash
|
||||
curl --silent --location https://rpm.nodesource.com/setup_8.x | bash -
|
||||
yum install -y nodejs
|
||||
```
|
||||
|
||||
### server ports
|
||||
|
||||
### Server Ports
|
||||
```bash
|
||||
firewall-cmd --add-port 8080/tcp --permanent
|
||||
firewall-cmd --add-port 2022/tcp --permanent
|
||||
@ -42,5 +44,5 @@ firewall-cmd --permanent --zone=trusted --change-interface=docker0
|
||||
firewall-cmd --reload
|
||||
```
|
||||
|
||||
## Installing the daemon
|
||||
Follow the regular guide to install the [daemon](/daemon/installing.md#installing-daemon-software)
|
||||
## Installing the Daemon
|
||||
Great, now all of the dependencies and firewall rules have been dealt with. From here follow the [official Daemon installation documentation](/daemon/installing.md#installing-daemon-software).
|
||||
@ -1,12 +1,15 @@
|
||||
# Install wings on Debian 9
|
||||
|
||||
This guide covers the installation of the requirements for a daemon with SSL enabled.
|
||||
# Debian 9
|
||||
In this guide we will install Pterodactyl's Daemon (wings) — including all of it's dependencies — and configure it
|
||||
to use a SSL connection.
|
||||
|
||||
[[toc]]
|
||||
|
||||
## Install Requirements
|
||||
::: tip
|
||||
This guide is based off the [official installation documentation](/daemon/installing.md) but is tailored specifically for Debian 9.
|
||||
:::
|
||||
|
||||
The daemon requirements can be found [here](/daemon/installing.md#system-requirements)
|
||||
## Install Requirements
|
||||
We will first begin by installing all of the Daemon's [required](/daemon/installing.md#dependencies) dependencies.
|
||||
|
||||
### General Requirements
|
||||
```bash
|
||||
@ -33,7 +36,7 @@ systemctl enable docker
|
||||
systemctl start docker
|
||||
```
|
||||
|
||||
### nodejs
|
||||
### Nodejs
|
||||
|
||||
```bash
|
||||
## Install nodejs repo
|
||||
@ -43,5 +46,5 @@ curl -sL https://deb.nodesource.com/setup_8.x | bash -
|
||||
apt install -y nodejs
|
||||
```
|
||||
|
||||
## Installing the daemon
|
||||
Follow the regular guide to install the [daemon](/daemon/installing.md#installing-daemon-software)
|
||||
## Installing the Daemon
|
||||
Great, now all of the dependencies have been dealt with. From here follow the [official Daemon installation documentation](/daemon/installing.md#installing-daemon-software).
|
||||
35
community/installation-guides/daemon/ubuntu1804.md
Normal file
35
community/installation-guides/daemon/ubuntu1804.md
Normal file
@ -0,0 +1,35 @@
|
||||
# Ubuntu 18.04
|
||||
In this guide we will install Pterodactyl's Daemon (wings) — including all of it's dependencies — and configure it
|
||||
to use a SSL connection.
|
||||
|
||||
[[toc]]
|
||||
|
||||
::: tip
|
||||
This guide is based off the [official installation documentation](/daemon/installing.md) but is tailored specifically for Ubuntu 18.04.
|
||||
:::
|
||||
|
||||
## Install Requirements
|
||||
We will first begin by installing all of the Daemon's [required](/daemon/installing.md#dependencies) dependencies.
|
||||
|
||||
### General Requirements
|
||||
```bash
|
||||
apt install -y zip unzip tar make gcc g++ python
|
||||
```
|
||||
|
||||
### Docker
|
||||
|
||||
```bash
|
||||
apt install -y docker.io
|
||||
|
||||
systemctl enable docker
|
||||
systemctl start docker
|
||||
```
|
||||
|
||||
### Nodejs
|
||||
|
||||
```bash
|
||||
apt install -y nodejs npm
|
||||
```
|
||||
|
||||
## Installing the Daemon
|
||||
Great, now all of the dependencies and firewall rules have been dealt with. From here follow the [official Daemon installation documentation](/daemon/installing.md#installing-daemon-software).
|
||||
@ -1,15 +1,17 @@
|
||||
# Install pterodactyl on CentOS 7
|
||||
|
||||
This guide covers the installation of the requirements for a panel with SSL enabled.
|
||||
# CentOS 7
|
||||
In this guide we will install Pterodactyl — including all of it's dependencies — and configure our webserver
|
||||
to serve it using SSL.
|
||||
|
||||
[[toc]]
|
||||
|
||||
## Install Requirements
|
||||
::: tip
|
||||
This guide is based off the [official installation documentation](/panel/getting_started.md) but is tailored specifically for CentOS 7.
|
||||
:::
|
||||
|
||||
The panel requirements can be found [here](/panel/getting_started.md#dependencies)
|
||||
## Install Requirements
|
||||
We will first begin by installing all of Pterodactyl's [required](/panel/getting_started.md#dependencies) dependencies.
|
||||
|
||||
### MariaDB
|
||||
|
||||
```bash
|
||||
## Install Repos
|
||||
cat <<EOF > /etc/yum.repos.d/mariadb.repo
|
||||
@ -47,8 +49,7 @@ yum update -y
|
||||
yum install -y php72u-php php72u-common php72u-fpm php72u-cli php72u-json php72u-mysqlnd php72u-mcrypt php72u-gd php72u-mbstring php72u-pdo php72u-zip php72u-bcmath php72u-dom php72u-opcache
|
||||
```
|
||||
|
||||
### nginx
|
||||
|
||||
### Nginx
|
||||
```bash
|
||||
yum install -y nginx
|
||||
|
||||
@ -58,7 +59,6 @@ firewall-cmd --reload
|
||||
```
|
||||
|
||||
### Redis
|
||||
|
||||
```bash
|
||||
yum install -y redis40u
|
||||
|
||||
@ -66,23 +66,22 @@ systemctl start redis
|
||||
systemctl enable redis
|
||||
```
|
||||
|
||||
### utilities
|
||||
### Additional Utilities
|
||||
|
||||
#### certbot
|
||||
#### Certbot
|
||||
```bash
|
||||
yum install -y certbot
|
||||
```
|
||||
|
||||
#### composer
|
||||
#### Composer
|
||||
```bash
|
||||
curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer
|
||||
```
|
||||
|
||||
## Server Configuration
|
||||
|
||||
This following section covers the configuration of parts of the server to run the panel.
|
||||
|
||||
### MariaDB
|
||||
### Configuring MariaDB
|
||||
The fastest way to set up mariadb is to use the `mysql_secure_installation` command and follow prompts
|
||||
|
||||
```bash
|
||||
@ -110,11 +109,9 @@ All done! If you've completed all of the above steps, your MariaDB
|
||||
installation should now be secure.
|
||||
|
||||
#### Adding MariaDB user
|
||||
We have a tutorial in the tutorial section
|
||||
[Setting up MySQL](/tutorials/mysql_setup.md)
|
||||
|
||||
### PHP
|
||||
To add your first user to the database, see our tutorial on [setting up MySQL](/tutorials/mysql_setup.md).
|
||||
|
||||
### Setup PHP
|
||||
Place the contents below in a file inside the `/etc/php-fpm.d` folder. The file can be named anything, but a good standard is `www-pterodactyl.conf`. This config will match the nginx config later in the guide.
|
||||
|
||||
<<< @/.snippets/php-fpm/pterodactyl-centos.conf
|
||||
@ -125,17 +122,15 @@ systemctl enable php-fpm
|
||||
systemctl start php-fpm
|
||||
```
|
||||
|
||||
### nginx
|
||||
### Nginx
|
||||
Please check our [tutorial](/tutorials/creating_ssl_certificates.md) on generating SSL certificates for more information.
|
||||
|
||||
follow the [tutorial](/tutorials/creating_ssl_certificates.md) on generating an SSL cert to use.
|
||||
|
||||
#### ssl config
|
||||
#### SSL Configuration
|
||||
<<< @/.snippets/webservers/nginx-centos.conf{5,11,26-27}
|
||||
|
||||
### Redis
|
||||
The default Redis install is perfectly fine for the panel.
|
||||
### Redis Setup
|
||||
The default Redis install is perfectly fine for the panel. If you have Redis already in use you may want to look into
|
||||
[running another Redis instance](https://community.pivotal.io/s/article/How-to-setup-and-run-multiple-Redis-server-instances-on-a-Linux-host).
|
||||
|
||||
If you have Redis already in use you may want to look into running another Redis instance similar to [this guide](https://community.pivotal.io/s/article/How-to-setup-and-run-multiple-Redis-server-instances-on-a-Linux-host)
|
||||
|
||||
## Installing the panel
|
||||
Follow the regular guide to install the [panel](/panel/getting_started.md#installation)
|
||||
## Installing the Panel
|
||||
Excellent, we now have all of the required dependencies installed and configured. From here, follow the [official Panel installation documentation](/panel/getting_started.md#installation).
|
||||
@ -1,15 +1,17 @@
|
||||
# Install pterodactyl on Debian 9
|
||||
|
||||
This guide covers the installation of the requirements for a panel with SSL enabled.
|
||||
# Debian 9
|
||||
In this guide we will install Pterodactyl — including all of it's dependencies — and configure our webserver
|
||||
to serve it using SSL.
|
||||
|
||||
[[toc]]
|
||||
|
||||
## Install Requirements
|
||||
::: tip
|
||||
This guide is based off the [official installation documentation](/panel/getting_started.md) but is tailored specifically for Debian 9.
|
||||
:::
|
||||
|
||||
The panel requirements can be found [here](/panel/getting_started.md#dependencies)
|
||||
## Install Requirements
|
||||
We will first begin by installing all of Pterodactyl's [required](/panel/getting_started.md#dependencies) dependencies.
|
||||
|
||||
### MariaDB
|
||||
|
||||
```bash
|
||||
apt install -y software-properties-common dirmngr
|
||||
|
||||
@ -31,7 +33,6 @@ systemctl enable mariadb
|
||||
```
|
||||
|
||||
### PHP 7.2
|
||||
|
||||
```bash
|
||||
## Install the PHP 7.2 repo for debian
|
||||
apt install -y ca-certificates apt-transport-https
|
||||
@ -45,14 +46,12 @@ apt update
|
||||
apt install -y php7.2 php7.2-cli php7.2-gd php7.2-mysql php7.2-pdo php7.2-mbstring php7.2-tokenizer php7.2-bcmath php7.2-xml php7.2-fpm php7.2-curl php7.2-zip
|
||||
```
|
||||
|
||||
### nginx
|
||||
|
||||
### Nginx
|
||||
```bash
|
||||
apt install -y nginx
|
||||
```
|
||||
|
||||
### Redis
|
||||
|
||||
```bash
|
||||
apt install -y redis-server
|
||||
|
||||
@ -60,23 +59,22 @@ systemctl start redis-server
|
||||
systemctl enable redis-server
|
||||
```
|
||||
|
||||
### utilities
|
||||
### Additional Utilities
|
||||
|
||||
#### certbot
|
||||
#### Certbot
|
||||
```bash
|
||||
apt install -y certbot curl
|
||||
```
|
||||
|
||||
#### composer
|
||||
#### Composer
|
||||
```bash
|
||||
curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer
|
||||
```
|
||||
|
||||
## Server Configuration
|
||||
|
||||
This following section covers the configuration of parts of the server to run the panel.
|
||||
|
||||
### MariaDB
|
||||
### Configuring MariaDB
|
||||
The fastest way to set up mariadb is to use the `mysql_secure_installation` command and follow prompts
|
||||
|
||||
```bash
|
||||
@ -100,35 +98,30 @@ Extra databases that aren't needed
|
||||
Clears and sets all the changes made
|
||||
`Reload privilege tables now? [Y/n] Y`
|
||||
|
||||
All done! If you've completed all of the above steps, your MariaDB
|
||||
installation should now be secure.
|
||||
All done! If you've completed all of the above steps, your MariaDB installation should now be secure.
|
||||
|
||||
#### Adding MariaDB user
|
||||
We have a tutorial in the tutorial section
|
||||
[Setting up MySQL](/tutorials/mysql_setup.md)
|
||||
To add your first user to the database, see our tutorial on [setting up MySQL](/tutorials/mysql_setup.md).
|
||||
|
||||
### PHP
|
||||
### Setup PHP
|
||||
The default php-fpm configuration is fine to use and can be started and then enabled on the system using the
|
||||
commands below.
|
||||
|
||||
The default php-fpm configuration is good to use.
|
||||
|
||||
Start and enable php-fpm on the system.
|
||||
```bash
|
||||
systemctl enable php7.2-fpm
|
||||
systemctl start php7.2-fpm
|
||||
```
|
||||
|
||||
### nginx
|
||||
### Nginx
|
||||
Please check our [tutorial](/tutorials/creating_ssl_certificates.md) on generating SSL certificates for more information.
|
||||
|
||||
follow the [tutorial](/tutorials/creating_ssl_certificates.md) on generating an SSL cert to use.
|
||||
|
||||
#### ssl config
|
||||
#### SSL Configuration
|
||||
<<< @/.snippets/webservers/nginx.conf{5,11,26-27}
|
||||
|
||||
|
||||
### Redis
|
||||
The default Redis install is perfectly fine for the panel.
|
||||
### Redis Setup
|
||||
The default Redis install is perfectly fine for the panel. If you have Redis already in use you may want to look into
|
||||
[running another Redis instance](https://community.pivotal.io/s/article/How-to-setup-and-run-multiple-Redis-server-instances-on-a-Linux-host).
|
||||
|
||||
If you have Redis already in use you may want to look into running another Redis instance similar to [this guide](https://community.pivotal.io/s/article/How-to-setup-and-run-multiple-Redis-server-instances-on-a-Linux-host)
|
||||
|
||||
## Installing the panel
|
||||
Follow the regular guide to install the [panel](/panel/getting_started.md#installation)
|
||||
## Installing the Panel
|
||||
Excellent, we now have all of the required dependencies installed and configured. From here, follow the [official Panel installation documentation](/panel/getting_started.md#installation).
|
||||
@ -1,15 +1,17 @@
|
||||
# Install pterodactyl on Ubuntu 18.04
|
||||
|
||||
This guide covers the installation of the requirements for a panel with SSL enabled.
|
||||
# Ubuntu 18.04
|
||||
In this guide we will install Pterodactyl — including all of it's dependencies — and configure our webserver
|
||||
to serve it using SSL.
|
||||
|
||||
[[toc]]
|
||||
|
||||
## Install Requirements
|
||||
::: tip
|
||||
This guide is based off the [official installation documentation](/panel/getting_started.md) but is tailored specifically for Ubuntu 18.04.
|
||||
:::
|
||||
|
||||
The panel requirements can be found [here](/panel/getting_started.md#dependencies)
|
||||
## Install Requirements
|
||||
We will first begin by installing all of Pterodactyl's [required](/panel/getting_started.md#dependencies) dependencies.
|
||||
|
||||
### MariaDB
|
||||
|
||||
```bash
|
||||
## Get apt updates
|
||||
apt update -y
|
||||
@ -32,7 +34,7 @@ apt update -y
|
||||
apt install -y php7.2 php7.2-cli php7.2-gd php7.2-mysql php7.2-pdo php7.2-mbstring php7.2-tokenizer php7.2-bcmath php7.2-xml php7.2-fpm php7.2-curl php7.2-zip
|
||||
```
|
||||
|
||||
### nginx
|
||||
### Nginx
|
||||
|
||||
```bash
|
||||
apt install -y nginx
|
||||
@ -47,23 +49,22 @@ systemctl start redis-server
|
||||
systemctl enable redis-server
|
||||
```
|
||||
|
||||
### utilities
|
||||
### Additional Utilities
|
||||
|
||||
#### certbot
|
||||
#### Certbot
|
||||
```bash
|
||||
apt install -y certbot
|
||||
```
|
||||
|
||||
#### composer
|
||||
#### Composer
|
||||
```bash
|
||||
curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer
|
||||
```
|
||||
|
||||
## Server Configuration
|
||||
|
||||
This following section covers the configuration of parts of the server to run the panel.
|
||||
|
||||
### MariaDB
|
||||
### Configuring MariaDB
|
||||
The fastest way to set up MariaDB is to use the `mysql_secure_installation` command and follow prompts
|
||||
|
||||
```bash
|
||||
@ -87,35 +88,29 @@ Extra databases that aren't needed
|
||||
Clears and sets all the changes made
|
||||
`Reload privilege tables now? [Y/n] Y`
|
||||
|
||||
All done! If you've completed all of the above steps, your MariaDB
|
||||
installation should now be secure.
|
||||
All done! If you've completed all of the above steps, your MariaDB installation should now be secure.
|
||||
|
||||
#### Adding MariaDB user
|
||||
We have a tutorial in the tutorial section
|
||||
[Setting up MySQL](/tutorials/mysql_setup.md)
|
||||
To add your first user to the database, see our tutorial on [setting up MySQL](/tutorials/mysql_setup.md).
|
||||
|
||||
### PHP
|
||||
### Setup PHP
|
||||
The default php-fpm configuration is fine to use and can be started and then enabled on the system using the
|
||||
commands below.
|
||||
|
||||
The default php-fpm configuration is good to use.
|
||||
|
||||
Start and enable php-fpm on the system.
|
||||
```bash
|
||||
systemctl enable php7.2-fpm
|
||||
systemctl start php7.2-fpm
|
||||
```
|
||||
|
||||
### nginx
|
||||
### Nginx
|
||||
Please check our [tutorial](/tutorials/creating_ssl_certificates.md) on generating SSL certificates for more information.
|
||||
|
||||
follow the [tutorial](/tutorials/creating_ssl_certificates.md) on generating an SSL cert to use.
|
||||
|
||||
#### ssl config
|
||||
#### SSL Configuration
|
||||
<<< @/.snippets/webservers/nginx.conf{5,11,26-27}
|
||||
|
||||
### Redis Setup
|
||||
The default Redis install is perfectly fine for the panel. If you have Redis already in use you may want to look into
|
||||
[running another Redis instance](https://community.pivotal.io/s/article/How-to-setup-and-run-multiple-Redis-server-instances-on-a-Linux-host).
|
||||
|
||||
### Redis
|
||||
The default Redis install is perfectly fine for the panel.
|
||||
|
||||
If you have Redis already in use you may want to look into running another Redis instance similar to [this guide](https://community.pivotal.io/s/article/How-to-setup-and-run-multiple-Redis-server-instances-on-a-Linux-host)
|
||||
|
||||
## Installing the panel
|
||||
Follow the regular guide to install the [panel](/panel/getting_started.md#installation)
|
||||
## Installing the Panel
|
||||
Excellent, we now have all of the required dependencies installed and configured. From here, follow the [official Panel installation documentation](/panel/getting_started.md#installation).
|
||||
@ -1,37 +1,42 @@
|
||||
# Server Networks
|
||||
This guide was written for Bungeecord, but should work fine for Waterfall and Hexacord servers.
|
||||
|
||||
[[toc]]
|
||||
|
||||
:::warning
|
||||
This guide was written with BungeeCord in mind, but should work for Waterfall and Hexacord as well.
|
||||
For the setup described below, it is necessary that all servers are on the same node.
|
||||
:::
|
||||
|
||||
## Setting up a BungeeCord network
|
||||
## Setting up the Network
|
||||
The ideal setup for this involves a separated internal network with only one access point — the BungeeCord server —
|
||||
which is an easy configuration with Pterodactyl. In order to create a Bungeecord network you'll first need to add an
|
||||
allocation to your Node that makes your Bungeecord server publicly accessible. This allocation should be for your
|
||||
public IP address and the default port you wish to use — generally `25565`.
|
||||
|
||||
The ideal setup with BungeeCord is a seperated internal network with only one access point which is the BungeeCord server. Pterodactyl provides this with Docker.
|
||||
In order to create a BungeeCord network you'll have to add an allocation with which the BungeeCord server should be reachable. Add an allocation with the IP address of the node and the desired port (e.g. 25565, the default Minecraft port) to your node first.
|
||||
Then create a new BungeeCord server and use the allocation you just created.
|
||||
## Adding Additional Servers
|
||||
All other servers that are a part of the network should be created on local interfaces — meaning they are not publicly
|
||||
accessible. Create new allocations on the localhost IP address `127.0.0.1` with some ports for the servers to use.
|
||||
You can also enter a port range, e.g. `30000-30010` which will get you 11 ports.
|
||||
|
||||
### Adding servers to the BungeeCord network
|
||||
Now create new servers and be sure to use your internal allocations — `127.0.0.1` — for each of them. To add the
|
||||
servers to your network you'll use `172.18.0.1:<port>` — or `127.0.0.1` which will automatically be resolved to your
|
||||
Docker network interface IP — as the IP address in your configuration file.
|
||||
|
||||
All the other servers that should be part of the BungeeCord network don't require external ports. Create new allocations on the localhost IP address `127.0.0.1` with some ports for the servers to use. You can also enter a port range, e.g. `30000-30010` which will get you 11 ports.
|
||||
Now create new servers and be sure to use `127.0.0.1` allocations for each of them. To add the servers to your BungeeCord network, use `172.18.0.1:<port of the internal server>` (not 127.0.0.1) as the IP addresses of the servers to add in your configuration file.
|
||||
## In Conclusion
|
||||
* Only the proxy server (Bungeecord/Hexacord/Waterfall) should be attached to your publically accessible IP address.
|
||||
* You should _not_ make any modifications to IPTables.
|
||||
* All of the servers behind the proxy are safe from direct _external_ connections, assuming you bind them to `127.0.0.1`.
|
||||
|
||||
## Notes
|
||||
## UFW Firewall
|
||||
If you are using a `ufw` firewall, it might be necessary to allow access to specific host ports. The following command
|
||||
allows incoming requests to `172.18.0.1`, which is the IP of the actual host server within the docker network. Replace
|
||||
`<LOCALHOST_PORT>` with any port you want to be accessible. In this case use the port you assigned to the minecraft
|
||||
server you want to add.
|
||||
|
||||
* **Only** the proxy (Waterfall / Hexagon / Bungee) has to be bound to an external IP.
|
||||
* **No modifications to iptables should be done**
|
||||
* all servers behind the proxy are safe.
|
||||
|
||||
### UFW Firewall
|
||||
|
||||
If you are using the ufw firewall, it might be necessary to allow access to specific host ports. The following command allows incoming requests to `172.18.0.1`, which is the IP of the actual host server within the docker network. Replace `<LOCALHOST_PORT>` with any port you want to be accessible. In this case use the port you assigned to the minecraft server you want to add.
|
||||
:::warning
|
||||
The ports you open with this command will be accessible by any server _on the same node_.
|
||||
:::
|
||||
|
||||
```
|
||||
ufw allow in on pterodactyl0 to 172.18.0.1 port <LOCALHOST_PORT> proto tcp
|
||||
```
|
||||
|
||||
:::warning
|
||||
The ports you open with this command will be accessible by any server on the same node.
|
||||
:::
|
||||
@ -125,7 +125,7 @@ set when creating the node.
|
||||
|
||||
The next step is to download the software and unpack the archive.
|
||||
``` bash
|
||||
curl -L https://github.com/pterodactyl/daemon/releases/download/v0.6.8/daemon.tar.gz | tar --strip-components=1 -xzv
|
||||
curl -L https://github.com/pterodactyl/daemon/releases/download/v0.6.10/daemon.tar.gz | tar --strip-components=1 -xzv
|
||||
```
|
||||
|
||||
Finally, we need to install the dependencies that allow the Daemon to run properly. This command will most likely
|
||||
|
||||
@ -34,7 +34,7 @@ Once you've done that, restarting the Daemon will apply the change and not boot
|
||||
To download the standalone server, execute the command below in your Daemon's base directory (generally `/srv/daemon`).
|
||||
|
||||
``` sh
|
||||
curl -Lo sftp-server https://github.com/pterodactyl/sftp-server/releases/download/v1.0.2/sftp-server
|
||||
curl -Lo sftp-server https://github.com/pterodactyl/sftp-server/releases/download/v1.0.3/sftp-server
|
||||
chmod +x sftp-server
|
||||
```
|
||||
|
||||
|
||||
@ -27,7 +27,7 @@ guide your Daemon is most likely located in `/srv/daemon`. Then, download and un
|
||||
command below.
|
||||
|
||||
``` bash
|
||||
curl -L https://github.com/pterodactyl/daemon/releases/download/v0.5.6/daemon.tar.gz | tar --strip-components=1 -xzv
|
||||
curl -L https://github.com/pterodactyl/daemon/releases/download/v0.5.7/daemon.tar.gz | tar --strip-components=1 -xzv
|
||||
```
|
||||
|
||||
Then, update the core dependencies for the Daemon with the following command.
|
||||
|
||||
@ -10,7 +10,7 @@ First, ensure you're in the Daemon directory, `/srv/daemon`, before continuing t
|
||||
that, run the command below to pull down the latest files and unpack them in the daemon directory.
|
||||
|
||||
``` bash
|
||||
curl -L https://github.com/pterodactyl/daemon/releases/download/v0.5.6/daemon.tar.gz | tar --strip-components=1 -xzv
|
||||
curl -L https://github.com/pterodactyl/daemon/releases/download/v0.5.7/daemon.tar.gz | tar --strip-components=1 -xzv
|
||||
```
|
||||
|
||||
## Update Components
|
||||
|
||||
@ -29,7 +29,7 @@ systemctl stop wings
|
||||
:::
|
||||
|
||||
``` bash
|
||||
curl -L https://github.com/pterodactyl/daemon/releases/download/v0.6.8/daemon.tar.gz | tar --strip-components=1 -xzv
|
||||
curl -L https://github.com/pterodactyl/daemon/releases/download/v0.6.10/daemon.tar.gz | tar --strip-components=1 -xzv
|
||||
```
|
||||
|
||||
Then, update the core dependencies for the Daemon with the following command.
|
||||
|
||||
@ -14,7 +14,7 @@ First, ensure you're in the Daemon directory, `/srv/daemon`, before continuing t
|
||||
that, run the command below to pull down the latest files and unpack them in the daemon directory.
|
||||
|
||||
``` bash
|
||||
curl -L https://github.com/pterodactyl/daemon/releases/download/v0.6.8/daemon.tar.gz | tar --strip-components=1 -xzv
|
||||
curl -L https://github.com/pterodactyl/daemon/releases/download/v0.6.10/daemon.tar.gz | tar --strip-components=1 -xzv
|
||||
```
|
||||
|
||||
## Update Components
|
||||
|
||||
@ -11,13 +11,13 @@ 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
|
||||
out for the release. This should be some type of rhyme or otherwise creative name, ideally using some type of Pterodactyl
|
||||
releated species name.
|
||||
related species name.
|
||||
|
||||
## Create the Release Branch
|
||||
Releases should be created as their own branch on Github, following the GitFlow model. This means you'll need to create
|
||||
a `release/vX.X.X` branch. Once the branch is created you need to update the version number for the software. For the Panel
|
||||
this requires editing `config/app.php` and setting the specific `APP_VERSION` _without_ a preceeding `v`. For the Daemon,
|
||||
you need to edit `package.json` and set the `version` field, again _without_ a preceeding `v`.
|
||||
this requires editing `config/app.php` and setting the specific `APP_VERSION` _without_ a preceding `v`. For the Daemon,
|
||||
you need to edit `package.json` and set the `version` field, again _without_ a preceding `v`.
|
||||
|
||||
Once you've created the branch and update the relevant file publish the branch to Github to begin the next steps.
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
"dependencies": {
|
||||
"jquery": "^3.3.1",
|
||||
"slick-carousel": "^1.8.1",
|
||||
"vuepress": "^0.14.3"
|
||||
"vuepress": "^0.14.8"
|
||||
},
|
||||
"scripts": {
|
||||
"build": "./node_modules/vuepress/bin/vuepress.js build",
|
||||
|
||||
@ -43,12 +43,12 @@ is because the internal logic the Panel is using to determine how links should b
|
||||
HTTP, and not over HTTPS.
|
||||
|
||||
You will need to edit the `.env` file in the Panel's root directory to contain `TRUSTED_PROXIES=*` at minimum. We
|
||||
highly suggest providing a specific IP address (or comma seperated list of IPs) rather than allowing `*`. For example,
|
||||
highly suggest providing a specific IP address (or comma separated list of IPs) rather than allowing `*`. For example,
|
||||
if your proxy is running on the same machine as the server, chances are that something like `TRUSTED_PROXIES=127.0.0.1`
|
||||
will work for you.
|
||||
|
||||
#### Cloudflare Specific Configuration
|
||||
If you're using Cloudflares Flexible SSL you should set `TRUSTED_PROXIES` to contain [their IP addresses](https://www.cloudflare.com/ips/).
|
||||
### Cloudflare Specific Configuration
|
||||
If you're using Cloudflare's Flexible SSL you should set `TRUSTED_PROXIES` to contain [their IP addresses](https://www.cloudflare.com/ips/).
|
||||
Below is an example of how to set this.
|
||||
|
||||
```
|
||||
|
||||
@ -44,7 +44,7 @@ local.ERROR: ErrorException: file_put_contents(...): failed to open stream: Perm
|
||||
From this error we can determine that there was an error performing a [file_put_contents()](http://php.net/manual/en/function.file-put-contents.php) call, and the error was
|
||||
that we couldn't open the file because permissions were denied. Its okay if you don't understand the error at all, but
|
||||
it does help you get faster support if you're able to provide these logs, and at least find the source of the error.
|
||||
Sometimes the errors are pretty strightforward and will tell you exactly what went wrong, such as a `ConnectionException`
|
||||
Sometimes the errors are pretty straightforward and will tell you exactly what went wrong, such as a `ConnectionException`
|
||||
being thrown when the Panel can't connect to the Daemon.
|
||||
|
||||
### Utilizing GREP
|
||||
@ -116,7 +116,7 @@ installation of the Panel.
|
||||
When restoring backups you should _always_ restore the `.env` file!
|
||||
:::
|
||||
|
||||
Sometimes when using the Panel you'll unexpectely encounter a broken page, and upon checking the logs you'll see
|
||||
Sometimes when using the Panel you'll unexpectedly encounter a broken page, and upon checking the logs you'll see
|
||||
an exception mentioning an invalid MAC when decrypting. This error is caused by mismatched `APP_KEY`s in your `.env` file
|
||||
when the data was encrypted versus decrypted.
|
||||
|
||||
|
||||
@ -34,3 +34,23 @@ which provides more options, and is much more powerful than certbot.
|
||||
``` text
|
||||
certbot renew
|
||||
```
|
||||
|
||||
## Troubleshooting
|
||||
If you get an `Insecure Connection` or related error when trying to access your panel, it is likely that the SSL certificate has expired.
|
||||
This can be easily fixed by renewing the SSL certificate, although using the command `certbot renew` won't do the job. As it'll give a error like: `Error: Attempting to renew cert (domain) from /etc/letsencrypt/renew/domain.conf produced an unexpected error`.
|
||||
This will happen especially if you're running NGINX instead of Apache. The solution for this is to stop NGINX, then renew the certificate, finally restart NGINX.
|
||||
|
||||
Stop NGINX:
|
||||
```bash
|
||||
systemctl stop nginx
|
||||
```
|
||||
|
||||
Renew the certificate:
|
||||
```bash
|
||||
certbot renew
|
||||
```
|
||||
|
||||
Once the process has complete, you can restart the NGINX service:
|
||||
```bash
|
||||
systemctl start nginx
|
||||
```
|
||||
|
||||
@ -25,7 +25,7 @@ to `somePassword`.
|
||||
``` sql
|
||||
USE mysql;
|
||||
|
||||
# Remeber to change 'somePassword' below to be a unique password specific to this account.
|
||||
# Remember to change 'somePassword' below to be a unique password specific to this account.
|
||||
CREATE USER 'pterodactyl'@'127.0.0.1' IDENTIFIED BY 'somePassword';
|
||||
```
|
||||
|
||||
|
||||
12
yarn.lock
12
yarn.lock
@ -3956,9 +3956,10 @@ min-document@^2.19.0:
|
||||
dependencies:
|
||||
dom-walk "^0.1.0"
|
||||
|
||||
mini-css-extract-plugin@^0.4.1:
|
||||
mini-css-extract-plugin@0.4.1:
|
||||
version "0.4.1"
|
||||
resolved "https://registry.yarnpkg.com/mini-css-extract-plugin/-/mini-css-extract-plugin-0.4.1.tgz#d2bcf77bb2596b8e4bd9257e43d3f9164c2e86cb"
|
||||
integrity sha512-XWuB3G61Rtasq/gLe7cp5cuozehE6hN+E4sxCamRR/WDiHTg+f7ZIAS024r8UJQffY+e2gGELXQZgQoFDfNDCg==
|
||||
dependencies:
|
||||
"@webpack-contrib/schema-utils" "^1.0.0-beta.0"
|
||||
loader-utils "^1.1.0"
|
||||
@ -6653,9 +6654,10 @@ vuepress-html-webpack-plugin@^3.2.0:
|
||||
toposort "^1.0.0"
|
||||
util.promisify "1.0.0"
|
||||
|
||||
vuepress@^0.14.3:
|
||||
version "0.14.3"
|
||||
resolved "https://registry.yarnpkg.com/vuepress/-/vuepress-0.14.3.tgz#ed20ab490967e5e4247577e9e2bd8b4506a3635f"
|
||||
vuepress@^0.14.8:
|
||||
version "0.14.8"
|
||||
resolved "https://registry.yarnpkg.com/vuepress/-/vuepress-0.14.8.tgz#1e0a70a64c19e82e365eb7313b1ec88cc4ad7ab3"
|
||||
integrity sha512-2BVubO3a4Nl8i/tWaO66iq2NRxxf9bh3QwDdoUuBTrhGtLgjv8mv4xrsgMpiPLXo1uk7bQY4hjZNvbYjCLCQkg==
|
||||
dependencies:
|
||||
"@babel/core" "7.0.0-beta.47"
|
||||
"@vue/babel-preset-app" "3.0.0-beta.11"
|
||||
@ -6689,7 +6691,7 @@ vuepress@^0.14.3:
|
||||
markdown-it-container "^2.0.0"
|
||||
markdown-it-emoji "^1.4.0"
|
||||
markdown-it-table-of-contents "^0.4.0"
|
||||
mini-css-extract-plugin "^0.4.1"
|
||||
mini-css-extract-plugin "0.4.1"
|
||||
nprogress "^0.2.0"
|
||||
optimize-css-assets-webpack-plugin "^4.0.0"
|
||||
portfinder "^1.0.13"
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user