Миграция на zensical, актуализация под iptvc после рефакторинга

This commit is contained in:
2026-07-22 01:11:07 +08:00
parent 7d61aadc5d
commit 8d0f3ebcce
665 changed files with 7626 additions and 922 deletions
+58
View File
@@ -0,0 +1,58 @@
---
title: Docker-образ
icon: simple/docker
tags: ["iptvc", "docker"]
---
# Построение Docker-образа
## Сборка
Образ собирается из [Dockerfile](https://git.axenov.dev/IPTV/iptvc/src/branch/master/Dockerfile) — multi-stage сборка на базе `golang:1.25-alpine` с финальным образом `alpine:3.22`.
```bash
docker build -t iptvc ./iptvc
```
Можно передать версию через build-arg:
```bash
docker build --build-arg IPTVC_VERSION=1.1.3 -t iptvc:v1.1.3 ./iptvc
```
Целевая платформа и архитектура задаются через `GOOS` и `GOARCH`:
```bash
docker build --build-arg GOOS=linux --build-arg GOARCH=arm64 -t iptvc:linux-arm64 ./iptvc
```
## Запуск
```bash
# Проверка плейлистов
docker run --rm \
-v ./playlists.ini:/app/playlists.ini \
-v ./channels.json:/app/channels.json \
iptvc 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 \
iptvc serve -i playlists.ini -p 8800 --check
```
## Использование в compose
В `compose.yml` сервиса `iptvc` образ собирается автоматически:
```yaml
iptvc:
image: git.axenov.dev/iptv/iptvc:latest
build:
context: ./iptvc
dockerfile: Dockerfile
command: ["serve", "--check", "--repeat", "0"]
```
Подробнее о полном окружении — в разделе [Развёртывание](../site/deploy.md).