Конфигурация YouGile Podman
YouGile настройки
Отредактируйте файл ./yougile/conf.json:
{
"port": 8001,
"mainPageUrl": "https://your-domain.com",
"emailFrom": "\"YouGile\" <noreply@your-domain.com>",
"smtp": {
"host": "smtp.your-provider.com",
"secure": true,
"port": 465,
"auth": {
"user": "your-email@your-domain.com",
"pass": "your-password"
}
}
}
Nginx настройки
Для использования с доменным именем отредактируйте ./nginx/nginx.conf:
- Замените
localhostна ваше доменное имя - Раскомментируйте HTTPS секцию после получения SSL сертификата
SSL сертификаты
Использование собственных SSL-сертификатов (основной способ)
Шаг 1. Подготовьте файлы сертификатов
Вам потребуются:
- файл сертификата (обычно
.crtили.pem); - файл приватного ключа (обычно
.key); - опционально — цепочка сертификатов (intermediate / chain).
Шаг 2. Разместите сертификаты
Создайте директорию для вашего домена:
mkdir -p ./certbot/conf/live/your-domain.com/
Если у вас есть основной сертификат и промежуточные сертификаты, объедините их в один файл:
cat your-certificate.crt intermediate.crt > ./certbot/conf/live/your-domain.com/fullchain.pem
Если у вас уже есть файл с полной цепочкой сертификатов, скопируйте его:
cp your-fullchain.pem ./certbot/conf/live/your-domain.com/fullchain.pem
Скопируйте приватный ключ:
cp your-private.key ./certbot/conf/live/your-domain.com/privkey.pem
Установите корректные права доступа для файлов сертификатов:
chmod 644 ./certbot/conf/live/your-domain.com/fullchain.pem
chmod 600 ./certbot/conf/live/your-domain.com/privkey.pem
Шаг 3. Создайте DH-параметры
openssl dhparam -out ./certbot/conf/ssl-dhparams.pem 2048
Шаг 4. Настройте Nginx
Отредактируйте файл ./nginx/nginx.conf.
В секции HTTP-сервера (порт 80) включите редирект на HTTPS:
server {
listen 80;
server_name your-domain.com;
location /.well-known/acme-challenge/ {
root /var/www/certbot;
}
location / {
return 301 https://$server_name$request_uri;
}
}
Затем настройте HTTPS-сервер:
server {
listen 443 ssl;
server_name your-domain.com;
ssl_protocols TLSv1.2 TLSv1.3;
ssl_certificate /etc/nginx/ssl/live/your-domain.com/fullchain.pem;
ssl_certificate_key /etc/nginx/ssl/live/your-domain.com/privkey.pem;
ssl_dhparam /etc/nginx/ssl/ssl-dhparams.pem;
остальная конфигурация сервера
}
Шаг 5. Перезапустите Nginx
Проверьте конфигурацию и перезапустите контейнер Nginx:
podman exec nginx nginx -t && podman restart nginx
Шаг 6. Обновите конфигурацию YouGile
Отредактируйте файл ./yougile/conf.json и укажите основной URL сервиса:
{
"mainPageUrl": "https://your-domain.com"
}
После этого перезапустите YouGile:
podman restart yougile
Let's Encrypt (альтернативный способ)
Для получения сертификатов Let's Encrypt выполните команду Podman (с настроенным DOCKER_HOST):
podman compose run --rm certbot certonly --webroot \
-w /var/www/certbot \
-d your-domain.com \
--email your-email@example.com \
--agree-tos \
--no-eff-email
После успешного получения сертификатов выполните шаги 4–6 выше (настройка Nginx и обновление конфигурации YouGile).
Автообновление сертификатов
Откройте системный crontab:
sudo crontab -e
Добавьте задание для автоматического продления сертификатов:
0 12 * * * cd /path/to/project && podman run --rm -v ./certbot/www:/var/www/certbot -v ./certbot/conf:/etc/letsencrypt certbot/certbot renew --quiet && podman restart nginx