Перейти к содержанию

Обзор развертывания Uptime Kuma на сервере

Предварительные требования

Для корректной работы приложения требуются следующие условия:

  • Операционная система: Ubuntu.

  • Установленный Docker.

  • Доступ к портам 443 (HTTPS) и 3000 (внутренний порт приложения).

FDQN итоговой панели на домене hostkey.in

Для доступа к приложению используется следующий шаблон доменного имени:

Параметр Значение
Префикс uptime-kuma
Домен hostkey.in
Полный шаблон uptime-kuma{Server_ID}.hostkey.in

Структура файлов и каталогов

В системе используются следующие директории для хранения данных и конфигураций:

  • /opt/uptime-kuma/data — хранилище данных приложения.

  • /root/nginx — рабочая директория конфигурации прокси-сервера.

  • /data/nginx/user_conf.d — пользовательские конфигурационные файлы Nginx.

  • /data/nginx/nginx-certbot.env — файл переменных окружения для SSL-сертификатов.

Процесс установки приложения

Развертывание выполняется в несколько этапов:

  1. Подготовка системы: установка Docker и настройка среды для работы с сертификатами.

  2. Установка основного приложения: запуск контейнера Uptime Kuma с использованием образа louislam/uptime-kuma:1. Приложение работает в режиме host сети, что позволяет ему использовать системные порты напрямую.

  3. Настройка проксирования и SSL: создание директории /root/nginx, генерация конфигурационного файла compose.yml для Nginx и запуск контейнера с помощью Docker Compose.

Контейнеры Docker и их запуск

Приложение использует два основных контейнера, работающих в режиме host:

Контейнер приложения:

  • Имя образа: louislam/uptime-kuma:1

  • Порт: 3000 (внутренний)

  • Том: /opt/uptime-kuma/data -> /app/data

  • Переменная окружения: UPTIME_KUMA_PORT=3000

  • Политика перезапуска: always

Контейнер прокси-сервера:

  • Имя образа: jonasal/nginx-certbot:latest

  • Том 1: nginx_secrets (внешний том) -> /etc/letsencrypt

  • Том 2: /data/nginx/user_conf.d -> /etc/nginx/user_conf.d

  • Переменная окружения: CERTBOT_EMAIL=hkadm@hostkey.com

  • Политика перезапуска: unless-stopped

Инструкция по обновлению приложения

Для обновления основного приложения необходимо выполнить следующие действия:

  1. Обновить образ контейнера:

    docker pull louislam/uptime-kuma:1
    

  2. Перезапустить контейнер для применения изменений:

    docker restart uptime-kuma{Server_ID}.hostkey.in
    

question_mark
Я могу вам чем-то помочь?
question_mark
ИИ Помощник ×