---
title: 'Встановлення панелі Pterodactyl на CentOS 7'
description: 'Встановлення панелі керування ігровими серверами Pterodactyl на CentOS 7'
image: 'https://zomro.com/static/site/images/logo/logo-white.png?v=1790075172'
---

![opened image]()

  * [Zomro](https://zomro.com/ua/)
  * [FAQ](https://zomro.com/ua/blog/faq/)
  * Встановлення панелі Pterodactyl на CnetOS 7 



# Встановлення панелі Pterodactyl на CnetOS 7

31-05-2024

**Встановлення Pterodactyl у CentOS 7**

Для встановлення панелі керування ігровими серверами Pterodactyl ми можемо скористатися двома методами:

  1. Ручне встановлення.
  2. Автоматичне встановлення панелі з редагуванням двох параметрів.



Спочатку розглянемо ручне встановлення панелі. Якщо Вам потрібно швидко встановити панель, то можете прогорнути в кінець статті, там буде посилання на скрипт встановлення панелі.

А тепер по пунктах розглянемо, що потрібно встановити й що потрібно зробити, щоб встановити таку панель керування. У більшості команд буде використовуватися ключ -y, щоб не потрібно було підтверджувати встановлення програм.

1\. Потрібно оновити репозиторії системи, щоб потім не було помилок з встановленням:
    
    
    yum -y update

2\. Встановимо репозиторії remi, вони потрібні для встановлення php:
    
    
    yum -y install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
    
    yum -y install https://rpms.remirepo.net/enterprise/remi-release-7.rpm

yum -y install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm

За допомогою команди yum repolist ми бачимо, що обидва репозиторії підключені.

![](https://lh7-us.googleusercontent.com/docsz/AD_4nXdpRgtiSRXUrNOTlolqY7eTUF0qFxXhyJsGvpdnbdf-nbPboe8_GdU_hnNxhp5ur0KdE_pOdtY6FVpAb146ktnkuRRUe82pkGwxMqpj2XKvzH8hR-dG6XkkyEpq35Qt7cztkfzzn63J0rZ2hX_NelC2O8j5?key=BKfTBGesi_38zYxmZBSvbg)

3\. Також встановимо програму для керування репозиторіями, що дозволить нам контролювати які версії php ми будемо встановлювати на сервері:
    
    
    yum -y install yum-utils

4\. Тепер ми вимкнемо усі старі версії php та увімкнемо php 8.1, тому що зараз панель потребує її:
    
    
    yum-config-manager --disable 'remi-php*'
    
    yum-config-manager --enable remi-php81

На знімку екрана результат команди, буде показувати як при вимкненні, так і при ввімкненні репозиторіїв за допомогою yum-config-manager.

![](https://lh7-us.googleusercontent.com/docsz/AD_4nXcQ5URleP7XX6IRYIcdb3urRs-J85zTPQxbjwz0Z2qkPNVilLYfwVf37yiM3TeGkoI5900xCEf64iFblkif4G95An2mqzncyxBgHDqAiAIPE2NmeyCmw23U95PuWAkXGZt_cIakWHKpHV4ZDogezi0Q8LKQ?key=BKfTBGesi_38zYxmZBSvbg)

5\. Зараз ми будемо встановлювати залежності, які потрібні для роботи панелі. Пропуск однієї з них приведе до непрацездатності панелі:
    
    
    yum -y install httpd unzip openssl wget curl php php-sodium php-cli php-common php-gd php-mbstring php-mysqlnd php-pdo php-xml php-zip php-tokenizer php-json php-curl php-openssl php-zlib php-bcmath php-posix php-zip redis

По-перше, ми встановили веб-сервер, який дозволить отримати нам доступ до самої панелі. Також ми встановили openssl, який відповідає за створення ключів безпеки, wget та curl потрібні для завантаження ресурсів з інших джерел, крім репозиторіїв.

6\. Тепер нам потрібно додати репозиторій MariaDB, яка буде відповідати за бази даних як самої панелі керування, так і наших ігрових серверів.

Створюємо файл за шляхом /etc/yum.repos.d/mariadb.repo з наступним текстом:
    
    
    # MariaDB 10.6 CentOS repository list - created 2023-05-27 06:09 UTC
    
    # https://mariadb.org/download/
    
    [mariadb]
    
    name = MariaDB
    
    # rpm.mariadb.org is a dynamic mirror if your preferred mirror goes offline. See https://mariadb.org/mirrorbits/ for details.
    
    # baseurl = https://rpm.mariadb.org/10.6/centos/$releasever/$basearch
    
    baseurl = https://mirrors.xtom.de/mariadb/yum/10.6/centos/$releasever/$basearch
    
    module_hotfixes = 1
    
    # gpgkey = https://rpm.mariadb.org/RPM-GPG-KEY-MariaDB
    
    gpgkey = https://mirrors.xtom.de/mariadb/yum/RPM-GPG-KEY-MariaDB
    
    gpgcheck = 1

![](https://lh7-us.googleusercontent.com/docsz/AD_4nXexwvhcYH1x2gV3ikW9GTnRZt50btf0vsLbTonyk8KsPiSK7IXyDOmVng1sOMjZ95ZrEdv1ebbF1UP97WFuCkSmk70PiIMe2tZ_cioT8JD31hpdgJZYkOG6Q8KyRR9W_tAwQewq5D_8Zh_3_hHkEQbZrD2z?key=BKfTBGesi_38zYxmZBSvbg)

7\. Знову потрібно оновити репозиторії, щоб система могла завантажити MariaDB на сервер:
    
    
    yum -y update

8\. Встановлюємо саму MariaDB:
    
    
    yum install -y mariadb-server

9\. Тепер створимо директорію, у якій буде сама панель, та перейдемо у неї. Тут ключ -p потрібен, щоб воно створило директорії, які є у середині шляху. Наприклад, може не бути директорії www:
    
    
    mkdir -p /var/www/pterodactyl
    
    cd /var/www/pterodactyl

10\. Налаштовуємо фаєрвол, щоб потім був доступ до панелі:
    
    
    firewall-cmd --add-service=http --permanent
    
    firewall-cmd --add-service=https --permanent 
    
    firewall-cmd --reload

Якщо при виконанні команди виникає помилка, то можливо у Вас одна (-) замість двох перед параметрами permanent, reload та add-service.

11\. Запускаємо MariaDB (mysql) та робимо її сервісом, щоб при запуску системи вона сама запускалась:
    
    
    systemctl start mariadb
    
    systemctl enable mariadb

12\. Створюємо користувача та базу даних:
    
    
    mysql -u root -e "CREATE DATABASE panel;"
    
    mysql -u root -e "CREATE USER 'pterodactyl'@'localhost' IDENTIFIED BY '121212121212';"
    
    mysql -u root -e "GRANT ALL PRIVILEGES ON panel.* TO 'pterodactyl'@'localhost' WITH GRANT OPTION;"

Виводу цих команд не буде, але вони виконалися.

13\. Тут нам потрібно встановити composer, далі більшість роботи буде зв’язана саме з ним:
    
    
    curl -sS https://getcomposer.org/installer | php --install-dir=/usr/local/bin --filename=composer && ln /usr/local/bin/composer /usr/bin/composer

![](https://lh7-us.googleusercontent.com/docsz/AD_4nXd1QoaVbPOYYzFk3z2yqUMCWbEpnloIN15i-p54I9Mu5Ybq1YXweq5keVkxnOpPvhJxc5DpB2hWogN89p5qtK6t5J71G_fQhJXak8Gj4Tex7qvfCfytGNWHbfRnAfiR_y74XBp4hIGJtI76ujxUzgcRcOAo?key=BKfTBGesi_38zYxmZBSvbg)

Ця команда завантажує інсталятор composer після чого копіює його в директорію /usr/local/bin, та створює посилання в директорію /usr/bin, яка відповідає за команди, тому коли Ви пишете команду система шукає файл програми саме там.

14\. На цьому пункті за допомогою pwd перевірте, чи Ви знаходитесь в директорії /var/www/pterodactyl, сюди ми будемо завантажувати саму панель за допомогою команди:
    
    
    curl -Lo panel.tar.gz https://github.com/pterodactyl/panel/releases/latest/download/panel.tar.gz

15\. Розпаковуємо її:
    
    
    tar -xzvf panel.tar.gz

16\. Видамо правильні права, щоб потім не було помилок при встановленні:
    
    
    chmod -R 755 storage/* bootstrap/cache

17\. Скопіюємо .env файл, без нього панель не встановиться правильно:
    
    
    cp .env.example .env

18\. Встановимо composer в локальну директорію. Воно запитає чи запускати команду від користувача root, погоджуємося:
    
    
    composer install --no-dev --optimize-autoloader

![](https://lh7-us.googleusercontent.com/docsz/AD_4nXeXp_ccg5gi-U1N19yPJ0Kd4xWoGWKj-CoeNgQ_JPTSCL9qK-00yH4XdcOMa7ifY9TVO-FuiPGqvqx-ceYa1kTOy3gaK05RDuPueENXZxBrEnJ-rPC3dgqfINd1_AbfV6rJp9h1WjXum2MpcV8MZGmLg5_0?key=BKfTBGesi_38zYxmZBSvbg)

![](https://lh7-us.googleusercontent.com/docsz/AD_4nXcQgS46FkulOGwLdVccDQ1xZRYUQQDExFiKbhamJ7Rly72_8sVDTxaYwjt19dPiAD7nsJZV7b08vuG2xu8UcHyrkk5xfRop4iOra6rMhltOKRxPrWgwcIyd-pbE-y1d1LpkHaO1NQLT7fixY8Knm2x1sO7I?key=BKfTBGesi_38zYxmZBSvbg)

19\. Створимо ключ для composer:
    
    
    php artisan key:generate --force

![](https://lh7-us.googleusercontent.com/docsz/AD_4nXeHRTGAVXicTWR78OWwhW6OvtNw4-SfXT1RvcINyjh0szZ8DvPmVnslKtIl-vbAtktgVtVGjYCo2nEypRW9MACVHULbumXDN0I_4plbu3cqqCfLMBHtf2TWc4OrniLZkXmkSdOsihg8s8zglfFIXBeicbHe?key=BKfTBGesi_38zYxmZBSvbg)

20\. Розпочнемо підключення панелі керування до бази даних й налаштування параметрів:
    
    
    php artisan p:environment:setup --author=EMAIL --url=http://DOMAIN --timezone=UTC --cache=file --session=database --queue=database --settings-ui=yes --telemetry=no --no-interaction

![](https://lh7-us.googleusercontent.com/docsz/AD_4nXdkFmVPBuJxocyGaS-1QmjJy5bDZj0L61r3K3Ll0CiE6yGR9Lg7Rb1oj_tYrH5-EJFiZw4o8liNFx18nimcEnq_enexSRZfESanJScMUZmTkczUfph5zdJuPlyE8nFXht29M7LhB64JLiW8SdvzK6d2r6iT?key=BKfTBGesi_38zYxmZBSvbg)

Також на знімку екрана видно, які налаштування потрібно було б вводити при роботі з інтерактивним режимом налаштування. (php artisan p:environment:setup)

По-перше, замість EMAIL потрібно вказати будь-яку пошту. Для параметра DOMAIN потрібно вказувати реальний домен, який направлений на сервер, або IP-адрес сервера, або домен, який Ви вказали у файлі hosts на вашому пристрої. Ці параметри потрібні для роботи самої панелі. Всі інші параметри бажано не змінювати для стабільності роботи.
    
    
    php artisan p:environment:database --host=localhost --port=3306 --database=panel --username=pterodactyl --password=PASS --no-interaction

![](https://lh7-us.googleusercontent.com/docsz/AD_4nXftAGt37rRsOeH6_nZpb_H5QnnQPi3rIoTmAfLInhAaynyNMRjTkb5bU1RPPe-OgnQ6B8swBlLTUBMDpQjsObHyT2cl7akqSXNGBb5I96xnPXWFyzZMz3DmVWMLCQlBch5Qiy6lRr5rNf8tE4r6yOi8FA4j?key=BKfTBGesi_38zYxmZBSvbg)

Тут ми змінюємо параметр PASS на пароль від бази даних, створеної нами раніше.
    
    
    php artisan migrate --seed --force --no-interaction

![](https://lh7-us.googleusercontent.com/docsz/AD_4nXea_FwKJ-oXaIcSyFR2A9hR9aHnGpMkZf-oge0W9EBhFn0hP70Q4rNR_rdKT6vJqEZHX8niccWc4UcU8wLoollifb3vElcOdRaPjDNac0yeaMLEJxDAkPPhihHoA90c362gA-ZkM1-d8eby41gnsEOFCPFu?key=BKfTBGesi_38zYxmZBSvbg)

Команда для створення користувача в панелі. Якщо користувач не має бути адміністратором, то в параметрі --admin виставляєте 0. Користувачів також можна створювати всередині панелі.
    
    
    php artisan p:user:make --email=EMAIL --username=USER1 --name-first=USER2 --name-last=USER3 --password=PASS2 --admin=1 --no-interaction

![](https://lh7-us.googleusercontent.com/docsz/AD_4nXc93c9AbvLxdv6eDn4wLPxjDZ67TjThkxmooiUoOYBSfDMwshEWdHp384tEbiT3hk58yEMXDEPke1--frT2gWMIZLBDjfa3VcW0QcpZYHV3tDw_ipw78ian94h4tmVZzl1w_0OPlPd8O9DwLyZ1lGyjyQvq?key=BKfTBGesi_38zYxmZBSvbg)

Тут в EMAIL вказуєте email, за допомогою якого Ви будете входити в панель керування. Параметр USER1 - це нік користувача. Параметри USER2 та USER3 - це ім’я та прізвище, вони також відображаються в панелі. Параметр PASS2 - це пароль, за допомогою якого користувач буде входити в панель керування. Це всі параметри, які потрібно тут редагувати. Параметр --no-interaction потрібен, щоб не налаштовувати користувача через вбудовані в Composer інструменти, оскільки у них потім нічого не зміниш.

Тепер ми на фінішній прямій. Все, що нам залишилося, це налаштувати Apache2 (httpd) й налаштувати сервіс панелі керування, щоб його можна було перезапускати при потребі.

21\. Виставляємо користувача для директорії панелі:
    
    
    chown -R apache:apache /var/www/pterodactyl/*

Зірочка означає, що команда буде застосована для усіх файлів всередині даної директорії.

22\. Запускаємо Apache та робимо його сервісом як раніше з MariaDB:
    
    
    systemctl start httpd
    
    systemctl enable httpd

23\. Створюємо конфігурацію Apache з наступними параметрами за шляхом /etc/httpd/conf.d/pterodactyl.conf:
    
    
    <VirtualHost *:80>
    
    ServerName DOMAIN
    
    DocumentRoot /var/www/pterodactyl/public
    
    AllowEncodedSlashes On
    
    php_value upload_max_filesize 100M
    
    php_value post_max_size 100M
    
    <Directory "/var/www/pterodactyl/public">
    
    AllowOverride all
    
    Require all granted
    
    </Directory>
    
    </VirtualHost>

Замість DOMAIN вказуєте домен, який вказували раніше при налаштуванні панелі.

24\. Налаштування крон завдання, в файл /etc/crontab вставляєте наступну стрічку:
    
    
    echo "* * * * * php /var/www/pterodactyl/artisan schedule:run" >> /etc/crontab

![](https://lh7-us.googleusercontent.com/docsz/AD_4nXd3KzzWdjcJz6yHlUNkrmJeGzcgh_6NT_6Js-gg-2RWwwAvs5jqywTrflExAfMUcWWDV0VX6OKnCy_ZAugwQ6PxUohdw4sC78NK2PtbPLVizANBrjAR9d6byWwrbSsHgZky3cdgHtg66VCyqUvU-86hC4k?key=BKfTBGesi_38zYxmZBSvbg)

25\. Тепер створимо сервіс самої панелі керування за шляхом /etc/systemd/system/pteroq.service з наступним змістом:
    
    
    # Pterodactyl Queue Worker File
    
    # ----------------------------------
    
    [Unit]
    
    Description=Pterodactyl Queue Worker
    
    #After=redis.service
    
    [Service]
    
    # On some systems the user and group might be different.
    
    # Some systems use `apache` or `nginx` as the user and group.
    
    User=apache
    
    Group=apache
    
    Restart=always
    
    ExecStart=/usr/bin/php /var/www/pterodactyl/artisan queue:work --queue=high,standard,low --sleep=3 --tries=3
    
    StartLimitInterval=180
    
    StartLimitBurst=30
    
    RestartSec=5s
    
    [Install]
    
    WantedBy=multi-user.target

Після чого нам потрібно запустити сервіс й перезапустити Apache:
    
    
    systemctl enable --now pteroq.service
    
    systemctl start pteroq.service
    
    systemctl restart httpd

Готово, панель керування повинна бути доступна при переході по домену або IP.

При переході Ви маєте побачити таке поле входу.

![](https://lh7-us.googleusercontent.com/docsz/AD_4nXcjMPod6xpEwU_h2QTqIHNWagZ80nImeRp6kaSDrBKwGIrlCdQfJ52gf-AekMsGLX7SxbUY92N7zOexRZzevJbRD_ojzIoBuFv7ljrlVuJ2cZdyAYlO3tauoou4q_OvbH28FbNeo-tXv9bD76lULmRyEQ3x?key=BKfTBGesi_38zYxmZBSvbg)

Внутрішній інтерфейс панелі керування виглядає так:

![](https://lh7-us.googleusercontent.com/docsz/AD_4nXfmu-fWWmxb4e1Gl7Bq0l0JfzDyhUu06TdYK4c9Ssfe5xaMTpyIFPYjxJD7JoZbNXq2gsC61eSP0IBP6IFMld2TWzVUwQVTjATWJk32w2Y-yZA6VOhJmz95Krknvpb37lS68p5uCof0CnXlrvJLn9CVc4SM?key=BKfTBGesi_38zYxmZBSvbg)

![](https://lh7-us.googleusercontent.com/docsz/AD_4nXeL2ZhLKZcvYwKGcDO15bPJ_aAunkjpQfSK36cNmhBfOuXkI878ZLsOaF0LxBTqHTzEhXXV77BtrI9dWX5Jo2BWdGSF-NHmS40-hC2vNIyOnhPYlXCGOVxo0IGAHYi8NUJd75oPPU1Bb5sy7kpBtXMoO6Sy?key=BKfTBGesi_38zYxmZBSvbg)

Тепер встановлення за допомогою готового скрипту.

Завантажуємо скрипт:
    
    
    curl -O https://raw.githubusercontent.com/FartGarfild/Pterodactyl.sh/main/CentOS_7_Install.sh

Перед запуском його потрібно відредагувати (vi, або nano підійде):
    
    
    vi CentOS_7_Install.sh

В змінних потрібно тільки вказати EMAIL, який буде використовуватися в панелі керування та DOMAIN, який буде використовувати панель для доступу до неї.

Після чого за допомогою команди встановлюємо панель керування. Встановлення займає приблизно 15-30 хвилин.
    
    
    chmod +x CentOS_7_Install.sh && bash CentOS_7_Install.sh

Після чого доступи до панелі Ви зможете знайти у файлі /var/www/pterodactyl/access.txt.

Так встановлюється панель керування Pterodactyl на CentOS 7.

**P.S. У Вас може вибити 500 помилку як при ручному встановленні, так і при встановлені зі скрипта, це нормально для цієї панелі, все залежить від образу диска який використовують хостинги.**

Схожі статті

[Встановлення PostgreSQL та pgadmin4 на панель HestiaCP](https://zomro.com/ua/blog/faq/326-ustanovka-postgresql-i-pgadmin4-na-panel-hestiacp) [Як виправити чорний екран у RDP підключенні](https://zomro.com/ua/blog/faq/502-how-to-fix-black-screen-in-rdp-connection) [Як встановити RouterOS на віртуальний сервер (VPS/VDS)](https://zomro.com/ua/blog/faq/266-kak-ustanovit-routeros-na-virtualnyj-server-vps-vds) [Знайомство з CI/CD: Аналіз Методології Розробки](https://zomro.com/ua/blog/faq/437-znakomstvo-s-cicd-analiz-metodologii-razrabotki) [Що таке FTP і як його використовувати для завантаження файлів на сервер?](https://zomro.com/ua/blog/faq/543-what-is-ftp-and-how-do-i-use-it-to-upload-files-to-a-server)

[ Сервер для Forex від €7.95/міс ](/ua/server-for-forex)
