Версия:

Настройка нового сервера на Rocky Linux 8

Важно!

Текущая версия скриптов рассчитана на различные версии Linux, но прежде всего Debian.
Общая идея осталась прежней, но установка идет теперь немного подругому. 
Для нового сервера смотри более свежую версию. 
Эта версия будет полезна для работы с уже существующими сервисами. 

В данном руководстве описан процесс подготовки и настройки нового сервера для развертывания приложений на базе GoCore. Рекомендуемая операционная система — Rocky Linux 8.

1. Заказ сервера

2. Подготовка кода и базы данных

3. Настройка доменного имени

4. Первичная настройка ОС

  1. Смена пароля root:
    • Сгенерируйте пароль: pwgen -1 32 -cny
    • Смените пароль: passwd
  2. Установка vim: dnf install -y vim
  3. Подготовка окружения:
    • Создайте файл prepare.sh, скопируйте в него содержимое из CCS.Deployment/prepareOS/prepare.sh.
    • Выдайте права и запустите: chmod u+x prepare.sh && ./prepare.sh
    • Следуйте указаниям скрипта для создания системного пользователя (например, ccs_app).

5. Конфигурация сервисов (CCS.Deployment)

Развертывание выполняется с помощью podman контейнеров на основе шаблонов.

  1. Файл конфигурации: Пример лежит в CCS.Deployment/config_template.sh. При первом запуске start.sh он будет скопирован в config.sh.
  2. Настройка параметров:
    • ccs_app_git_url: SSH URL репозитория (начинается с git@).
    • ccs_app_git_branch: ветка проекта.
    • ccs_app_init_sql: имя файла дампа базы.
    • ccs_app_domains: список доменов через пробел.
    • services: перечислите нужные сервисы, например: declare services=("db" "ccs_app" "nginx" "backup").

6. Установка и запуск

  1. Под пользователем приложения:
    • Сгенерируйте SSH-ключ: ssh-keygen && cat ~/.ssh/id_rsa.pub
    • Добавьте ключ в репозиторий CCS.Deployment.
    • Клонируйте проект: git clone -b master git@github.com:CCSMSKRU/CCS.Deployment.git
  2. Запуск установки:
    • Скопируйте скрипт запуска: cp ~/CCS.Deployment/start_template.sh ~/start.sh && chmod u+x ~/start.sh
    • Настройте config.sh, установите config_is_ready=1.
    • Запустите установку: ./start.sh install db ccs_app nginx backup

7. Установка SSL-сертификатов

  1. Под root:
    • Создайте и заполните cert.sh (можно взять из CCS.Deployment).
    • Запустите: ./cert.sh ccs_app (указав имя пользователя приложения).
  2. Переустановка Nginx:
    • Вернитесь под пользователя приложения и выполните: ./start.sh install nginx

8. Полезные команды start.sh

Важно: При перезапуске приложения рекомендуется также перезапускать nginx: ./start.sh restart ccs_app nginx.