vji:wikijs:start
Различия
Показаны различия между двумя версиями страницы.
| Следующая версия | Предыдущая версия | ||
| vji:wikijs:start [2025/07/23 08:08] – создано vji | vji:wikijs:start [2025/07/23 08:19] (текущий) – vji | ||
|---|---|---|---|
| Строка 1: | Строка 1: | ||
| - | Полное руководство по развертыванию Wiki.js с HTTPS через Nginx (самоподписанные сертификаты) | + | ====== |
| - | 1. Подготовка сервера | + | |
| - | 1.1. Обновление системы | + | ===== 1. Подготовка сервера |
| + | |||
| + | ==== 1.1. Обновление системы | ||
| + | < | ||
| sudo apt update && sudo apt dist-upgrade -y | sudo apt update && sudo apt dist-upgrade -y | ||
| sudo reboot | sudo reboot | ||
| - | 1.2. Установка зависимостей | + | </ |
| + | |||
| + | ==== 1.2. Установка зависимостей | ||
| + | < | ||
| sudo apt install -y docker docker-compose nginx openssl | sudo apt install -y docker docker-compose nginx openssl | ||
| - | 2. Настройка Wiki.js | + | </ |
| - | 2.1. Создание секрета для БД | + | ===== 2. Настройка Wiki.js |
| + | |||
| + | ==== 2.1. Создание секрета для БД ==== | ||
| + | < | ||
| sudo mkdir -p /etc/wiki | sudo mkdir -p /etc/wiki | ||
| sudo openssl rand -base64 32 > / | sudo openssl rand -base64 32 > / | ||
| sudo chmod 600 / | sudo chmod 600 / | ||
| - | 2.2. Создание Docker-сети и тома | + | </ |
| + | ==== 2.2. Создание Docker-сети и тома | ||
| + | < | ||
| docker network create wikinet | docker network create wikinet | ||
| docker volume create pgdata | docker volume create pgdata | ||
| - | 2.3. Запуск контейнеров Wiki.js | + | </ |
| + | ==== 2.3. Запуск контейнеров Wiki.js | ||
| + | < | ||
| docker run -d --name=db \ | docker run -d --name=db \ | ||
| -e POSTGRES_DB=wiki \ | -e POSTGRES_DB=wiki \ | ||
| Строка 24: | Строка 37: | ||
| | | ||
| | | ||
| + | </ | ||
| + | < | ||
| docker run -d --name=wiki \ | docker run -d --name=wiki \ | ||
| -e DB_TYPE=postgres \ | -e DB_TYPE=postgres \ | ||
| Строка 36: | Строка 51: | ||
| | | ||
| | | ||
| + | </ | ||
| + | < | ||
| docker run -d --name=wiki-update-companion \ | docker run -d --name=wiki-update-companion \ | ||
| -v / | -v / | ||
| Строка 41: | Строка 58: | ||
| | | ||
| | | ||
| - | 3. Настройка Nginx + HTTPS | + | </ |
| - | 3.1. Генерация SSL-сертификатов | + | ===== 3. Настройка Nginx + HTTPS ===== |
| - | sudo mkdir -p / | + | |
| + | ==== 3.1. Генерация SSL-сертификатов | ||
| + | < | ||
| + | sudo mkdir -p / | ||
| + | </ | ||
| + | < | ||
| sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 \ | sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 \ | ||
| - | | + | |
| - | -out / | + | -out / |
| - | -subj "/CN=wikibssz.test" \ | + | -subj "/CN=wiki.test" \ |
| - | | + | |
| - | sudo chmod 644 / | + | </ |
| - | 3.2. Создание конфига Nginx | + | < |
| - | sudo tee / | + | sudo chmod 644 / |
| + | </ | ||
| + | ==== 3.2. Создание конфига Nginx ==== | ||
| + | < | ||
| + | sudo tee / | ||
| server { | server { | ||
| | | ||
| - | | + | |
| | | ||
| } | } | ||
| Строка 60: | Строка 86: | ||
| server { | server { | ||
| | | ||
| - | | + | |
| - | | + | |
| - | | + | |
| | | ||
| Строка 74: | Строка 100: | ||
| } | } | ||
| EOF | EOF | ||
| - | 3.3. Запуск Nginx в Docker | + | </ |
| + | ==== 3.3. Запуск Nginx в Docker | ||
| + | < | ||
| docker run -d --name=nginx-proxy \ | docker run -d --name=nginx-proxy \ | ||
| -p 80:80 \ | -p 80:80 \ | ||
| Строка 83: | Строка 111: | ||
| | | ||
| | | ||
| - | 4. Проверка работы | + | </ |
| - | 4.1. Добавление домена в hosts (если нужно) | + | ===== 4. Проверка работы |
| - | echo " | + | |
| - | 4.2. Проверка доступности | + | ==== 4.1. Добавление домена в hosts (если нужно) |
| - | curl -vk https://wikibssz.test | + | < |
| - | 4.3. Проверка логов | + | echo " |
| + | </ | ||
| + | ==== 4.2. Проверка доступности | ||
| + | < | ||
| + | curl -vk https://wiki.test | ||
| + | </ | ||
| + | ==== 4.3. Проверка логов | ||
| + | < | ||
| docker logs nginx-proxy | docker logs nginx-proxy | ||
| docker logs wiki | docker logs wiki | ||
| - | 5. Дополнительные настройки | + | </ |
| - | 5.1. Открытие портов в фаерволе | + | ===== 5. Дополнительные настройки |
| + | |||
| + | ==== 5.1. Открытие портов в Firewall | ||
| + | < | ||
| sudo ufw allow 80/tcp | sudo ufw allow 80/tcp | ||
| sudo ufw allow 443/tcp | sudo ufw allow 443/tcp | ||
| - | 5.2. Настройка автоматического обновления сертификатов | + | </ |
| + | ==== 5.2. Настройка автоматического обновления сертификатов | ||
| + | | ||
| + | < | ||
| sudo crontab -e | sudo crontab -e | ||
| + | </ | ||
| Добавить строку: | Добавить строку: | ||
| + | < | ||
| + | @monthly openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout / | ||
| + | </ | ||
| + | ===== 7. Готово! ===== | ||
| - | @monthly openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout / | ||
| - | 7. Готово! | ||
| - | |||
| - | Wiki.js теперь доступен по: | ||
| - | HTTP: http:// | + | ---- |
| - | HTTPS: https://wikibssz.test | + | >Wiki.js теперь доступен по: |
| + | >HTTP: http:// | ||
| + | >HTTPS: https://wiki.test | ||
| - | Для доступа с других устройств добавьте запись в их файл `hosts`: | + | ---- |
| - | < | + | >Для доступа с других устройств добавьте запись в их файл `hosts`: |
| + | >< | ||
vji/wikijs/start.1753258104.txt.gz · Последнее изменение: 2025/07/23 08:08 — vji
