-
Notifications
You must be signed in to change notification settings - Fork 2
Environment Variables
Поведение контейнера настраивается через переменные окружения. Они передаются флагом -e в
docker run или блоком environment: в Docker Compose.
| Переменная | По умолчанию | Назначение |
|---|---|---|
CRON_TIMEOUT |
0 * * * * |
Расписание запуска проверки обновлений (формат cron). По умолчанию — каждый час. |
CRON_COMMAND |
php -q /data/htdocs/engine.php 2>&1 |
Команда, запускаемая по расписанию. Менять обычно не нужно. |
PHP_TIMEZONE |
UTC |
Часовой пояс PHP (например, Europe/Moscow). |
PHP_MEMORY_LIMIT |
512M |
Лимит оперативной памяти для PHP. |
NGINX_PORT |
80 |
Порт, который слушает Nginx внутри контейнера. |
PUID |
— | UID пользователя, от имени которого создаются файлы. |
PGID |
— | GID группы для файлов. |
Задаёт, как часто контейнер проверяет трекеры на обновления. Используется стандартный формат cron из пяти полей:
┌───────────── минута (0–59)
│ ┌─────────── час (0–23)
│ │ ┌───────── день месяца (1–31)
│ │ │ ┌─────── месяц (1–12)
│ │ │ │ ┌───── день недели (0–7, где 0 и 7 — воскресенье)
│ │ │ │ │
* * * * *
Примеры:
| Значение | Что означает |
|---|---|
0 * * * * |
каждый час в начале часа (по умолчанию) |
*/30 * * * * |
каждые 30 минут |
0 */3 * * * |
каждые 3 часа |
15 8-23 * * * |
в 15 минут каждого часа с 8:00 до 23:00 |
*/30 8-22 * * * |
каждые 30 минут с 8:00 до 22:00 |
Пример использования:
-e CRON_TIMEOUT="*/30 8-22 * * *"⏰ Расписание привязано к часовому поясу из
PHP_TIMEZONE, поэтому задавайте обе переменные согласованно.
Команда, которую cron выполняет по расписанию. По умолчанию запускает движок TorrentMonitor:
php -q /data/htdocs/engine.php 2>&1
Менять её требуется в редких случаях (например, для отладки). Для большинства пользователей значение по умолчанию подходит.
Влияет на отображение времени в интерфейсе и на работу расписания cron. Значение — идентификатор из базы часовых поясов PHP, например:
-e PHP_TIMEZONE="Europe/Moscow"
-e PHP_TIMEZONE="Asia/Yekaterinburg"
-e PHP_TIMEZONE="Europe/Kyiv"Для синхронизации системного времени контейнера с хостом дополнительно примонтируйте localtime:
-v /etc/localtime:/etc/localtime:roОграничение оперативной памяти для PHP. По умолчанию 512M. Увеличьте, если при обработке большого
числа раздач возникают ошибки нехватки памяти:
-e PHP_MEMORY_LIMIT="1024M"Порт, который слушает Nginx внутри контейнера (по умолчанию 80). Обычно менять его не нужно —
для смены внешнего порта достаточно изменить проброс -p. Менять NGINX_PORT имеет смысл при работе
в режиме сети host или при особых сетевых требованиях. При изменении согласуйте его с пробросом портов:
-p 8081:8081 -e NGINX_PORT=8081Значение должно быть числом от 1 до 65535, иначе контейнер не запустится.
Задают UID и GID, от имени которых внутри контейнера создаются файлы (база, торренты). Это важно, когда вы используете папки хоста (bind mount) и хотите, чтобы файлы принадлежали вашему пользователю.
Узнать свои UID и GID:
id -u # ваш UID
id -g # ваш GIDПример:
-e PUID=1000 -e PGID=1000Если переменные не заданы, используются значения по умолчанию пользователя nginx внутри контейнера.
docker container run -d \
--name torrentmonitor \
--restart unless-stopped \
-p 8080:80 \
-v torrentfiles:/data/htdocs/torrents \
-v db:/data/htdocs/db \
-v /etc/localtime:/etc/localtime:ro \
-e PHP_TIMEZONE="Europe/Moscow" \
-e CRON_TIMEOUT="*/30 8-22 * * *" \
-e PHP_MEMORY_LIMIT="512M" \
-e NGINX_PORT="80" \
-e PUID=1000 \
-e PGID=1000 \
alfonder/torrentmonitorservices:
torrentmonitor:
container_name: torrentmonitor
image: alfonder/torrentmonitor:latest
restart: unless-stopped
ports:
- "8080:80"
volumes:
- torrentfiles:/data/htdocs/torrents
- db:/data/htdocs/db
- /etc/localtime:/etc/localtime:ro
environment:
- PHP_TIMEZONE=Europe/Moscow
- CRON_TIMEOUT=*/30 8-22 * * *
- PHP_MEMORY_LIMIT=512M
- NGINX_PORT=80
- PUID=1000
- PGID=1000
volumes:
torrentfiles:
db:Установка и запуск
- Установка Docker
- Запуск на NAS (Synology, QNAP)
- Быстрый старт
- Запуск через docker run
- Запуск через Docker Compose
Конфигурация
Сценарии
Эксплуатация
Приложение