[Часть III] Установка панели Pterodactyl 1.X.X (настройка панели и демона)

Zkiffy

Участник
Сообщения
565
Реакции
209
В параметры запуска:
-autoupdate -steam_dir steamcmd -steamcmd_script update.txt
В корень с названием update.txt
update.txt:
@ShutdownOnFailedCommand 1 //Установить на 0 если упд несколько серверов
@NoPromptForPassword 1
login anonymous
force_install_dir ../
app_update 740
quit
Должно быть так:



Попробуйте сделать роутинг с 127.0.0.1:3306 на 172.18.0.1:3306
Способ актуален ? Сегодня вышло обновление, сервера по прежнему приходится обновлять вручную. (в параметры запуска прописал нужные параметры и создал файлик update.txt с необходимым содержанием). Права на файл: 644
 

hirowatch

Живет ХЛмод`ом
Сообщения
2,776
Реакции
1,644
Способ актуален ? Сегодня вышло обновление, сервера по прежнему приходится обновлять вручную. (в параметры запуска прописал нужные параметры и создал файлик update.txt с необходимым содержанием)
А я в строке запуска ничего не вписывал и сервер автоматически обновился 0_0
 

smoke96

Участник
Сообщения
1,108
Реакции
151
А я в строке запуска ничего не вписывал и сервер автоматически обновился 0_0
Ну у тебя наверное рестарт сервера запланирован ночью. При рестарте панель чекает обновление и если есть оно , то перед запуском сервера обновляет его.
 

hirowatch

Живет ХЛмод`ом
Сообщения
2,776
Реакции
1,644
Ну у тебя наверное рестарт сервера запланирован ночью. При рестарте панель чекает обновление и если есть оно , то перед запуском сервера обновляет его.
Выключил вечером и утром запустил. ( но у меня все в локали для тестов запущено ) поэтому возможно.
 

infirmitive

Участник
Сообщения
82
Реакции
34
а кто-то пробовал использовать mounts? а то под каждый сервер 40 гигов как-то расточительно, можно же часть файлов и папок использовать только для чтения остальными серверами
 

ykpon

Владыка
Сообщения
605
Реакции
380
а кто-то пробовал использовать mounts? а то под каждый сервер 40 гигов как-то расточительно, можно же часть файлов и папок использовать только для чтения остальными серверами
Можно. Маунтишь директорию с файлами в контейнере и файлы, которые не хочешь дублировать, заменяешь хардлинками на оригинальные файлы в примаунченной директории.
 

infirmitive

Участник
Сообщения
82
Реакции
34
Можно. Маунтишь директорию с файлами в контейнере и файлы, которые не хочешь дублировать, заменяешь хардлинками на оригинальные файлы в примаунченной директории.
а разве можно и файлы маунтить? там по папкам пару гигов только наберется, которые можно линковать, а вот vpk файлов прилично
 

ykpon

Владыка
Сообщения
605
Реакции
380
а разве можно и файлы маунтить? там по папкам пару гигов только наберется, которые можно линковать, а вот vpk файлов прилично
Маунтишь директорию и создаешь в ней нужную структуру файлов.
 

Junkes

#вернитереакции
Сообщения
493
Реакции
236
Маунтишь директорию и создаешь в ней нужную структуру файлов.
Решил попробовать, создал отдельную папку с .vpk файлами, замаунтил её и чет не работает.

Причем мне логика маунтов неясна, они идут по пути /var/lib/docker/overlay2/CONTAINERID/merged/, а сервера у меня в /srv/daemon-data
1674844433891.png
 

ykpon

Владыка
Сообщения
605
Реакции
380
Решил попробовать, создал отдельную папку с .vpk файлами, замаунтил её и чет не работает.

Причем мне логика маунтов неясна, они идут по пути /var/lib/docker/overlay2/CONTAINERID/merged/, а сервера у меня в /srv/daemon-data
Ты маунтишь директорию с ноды в качестве директории в контейнере.
На ноде эту директорию создаешь, туда заливаешь, например, чистый образ ксго из стимцмд, маунтишь куда угодно в контейнере и внутри контейнера вместо имеющихся файлов в директории с сервером создаешь хардлинки на файлы в директории, которую ты примаунтил.
Можно сделать скрипт, который будет создавать линки, и автоматом запускать при старте контейнера, например, или при создании.
 

Junkes

#вернитереакции
Сообщения
493
Реакции
236
Ты маунтишь директорию с ноды в качестве директории в контейнере.
На ноде эту директорию создаешь, туда заливаешь, например, чистый образ ксго из стимцмд, маунтишь куда угодно в контейнере и внутри контейнера вместо имеющихся файлов в директории с сервером создаешь хардлинки на файлы в директории, которую ты примаунтил.
Можно сделать скрипт, который будет создавать линки, и автоматом запускать при старте контейнера, например, или при создании.
Хорошо, но у меня сама папка с ноды в контейнер маунтится, но в ней файлов нет, что симлинкать?
Права на папке и .vpk файлах - 777

1674900467452.png
1674900443480.png
 

ykpon

Владыка
Сообщения
605
Реакции
380
Хорошо, но у меня сама папка с ноды в контейнер маунтится, но в ней файлов нет, что симлинкать?
Права на папке и .vpk файлах - 777

У тебя нода, на которой запускаются контейнеры. Создай на ней директорию и установки туда csgo либо для начала положи только .vpk файлы.
Примонтируй эту директорию к контейнеру. В контейнере ты должен в этой директории видеть .vpk файлы, которые положил на ноде.
Теперь из директории с игрой удали все .vpk, и создай хардлинки с теми же именами на файлы в примонтированной директории.
Ну типа
PATH_TO_VPK - путь, где лежат VPK. Тот каталог, который ты примонтировал к контейнеру.
PATH_TO_CSGO - путь до каталога с сервером, где ты хочешь создать хардлинки.
Bash:
PATH_TO_VPK=/var/lib/pterodactyl/mount/csgo/
PATH_TO_CSGO=/csgo/hlmod/csgo/
for i in $(ls $PATH_TO_FILES | grep .vpk); do
  ln $PATH_TO_FILES$i $PATH_TO_CSGO$i
done
 

Kruzya

Rust как смысл жизни
Сообщения
12,919
Реакции
10,822
  • Команда форума
  • #55
certbot certonly --standalone --post-hook "systemctl restart wings"
При первичном выпуске сертификата для Вингса, можно использовать такую команду.
Суть в том, что Сертбот после выпуска сертификата будет перезапускать Wings сам.

Если сертификат был выпущен ранее без этого параметра - не беда. Его можно дописать руками. В /etc/letsencrypt/renewal/ДОМЕН.conf дописать в секции [renewalparams] post_hook = systemctl restart wings

Получится так:
/etc/letsencrypt/renewal/amd-r7950x-1.myarena.example.ru.conf:
# renew_before_expiry = 30 days
version = 1.21.0
archive_dir = /etc/letsencrypt/archive/amd-r7950x-1.myarena.example.ru
cert = /etc/letsencrypt/live/amd-r7950x-1.myarena.example.ru/cert.pem
privkey = /etc/letsencrypt/live/amd-r7950x-1.myarena.example.ru/privkey.pem
chain = /etc/letsencrypt/live/amd-r7950x-1.myarena.example.ru/chain.pem
fullchain = /etc/letsencrypt/live/amd-r7950x-1.myarena.example.ru/fullchain.pem

# Options used in the renewal process
[renewalparams]
account = XXXXXXXXXXXXXXXXXXXXXXXX
post_hook = systemctl restart wings
authenticator = standalone
server = https://acme-v02.api.letsencrypt.org/directory
 
Сверху Снизу