1.9 KiB
1.9 KiB
title, icon, tags
| title | icon | tags | ||
|---|---|---|---|---|
| Docker-образ | simple/docker |
|
Построение Docker-образа
Сборка
Образ собирается из Dockerfile на базе alpine:3.22.5.
Бинарный файл должен быть предварительно собран через make linux — Dockerfile берёт уже готовый бинарь из bin/linux_${TARGETARCH}/iptvc.
# Сборка бинарного файла и образа
make image
# Сборка с указанием архитектуры
make image GOARCH=arm64
# Сборка с указанием тега
make image IMAGE_TAG=v1.1.3
Целевая архитектура задаётся через GOARCH:
make linux GOARCH=arm64
make image GOARCH=arm64
Для публикации multi-arch манифеста в registry:
make image-all
Запуск
# Проверка плейлистов
docker run --rm \
-v ./playlists.ini:/app/playlists.ini \
-v ./channels.json:/app/channels.json \
git.axenov.dev/iptv/iptvc:latest check -i playlists.ini --repeat 0 --playlists-all-cooldown 60
# Веб-сервер с фоновой проверкой
docker run --rm -p 8800:8800 \
-v ./playlists.ini:/app/playlists.ini \
-v ./channels.json:/app/channels.json \
git.axenov.dev/iptv/iptvc:latest serve -i playlists.ini -p 8800 --check
Использование в compose
В compose.yml сервиса iptvc образ собирается автоматически:
iptvc:
image: git.axenov.dev/iptv/iptvc:latest
build:
context: ./iptvc
dockerfile: Dockerfile
command: ["serve", "--check", "--repeat", "0"]
Подробнее о полном окружении — в разделе Развёртывание.