Миграция на zensical, актуализация под iptvc после рефакторинга
This commit is contained in:
@@ -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).
|
||||
Reference in New Issue
Block a user