61 lines
1.5 KiB
YAML
61 lines
1.5 KiB
YAML
name: iptv
|
||
|
||
networks:
|
||
iptvc-network:
|
||
driver: bridge
|
||
|
||
x-common-attributes: &common-attributes
|
||
restart: unless-stopped
|
||
volumes:
|
||
- /etc/localtime:/etc/localtime:ro
|
||
- /etc/timezone:/etc/timezone:ro
|
||
extra_hosts: [host.docker.internal:host-gateway]
|
||
networks: [iptvc-network]
|
||
logging:
|
||
driver: "json-file"
|
||
options:
|
||
max-file: 5
|
||
max-size: 50m
|
||
|
||
services:
|
||
app:
|
||
<<: *common-attributes
|
||
container_name: iptvc-app
|
||
image: git.axenov.dev/iptv/iptvc:latest
|
||
build:
|
||
context: ./
|
||
dockerfile: Dockerfile
|
||
# env_file: [.env]
|
||
command: ["serve", "--check"]
|
||
ports: [8800:8800]
|
||
volumes:
|
||
- /etc/localtime:/etc/localtime:ro
|
||
- /etc/timezone:/etc/timezone:ro
|
||
- ./playlists.ini:/app/playlists.ini:ro
|
||
- ./channels.json:/app/channels.json:ro
|
||
- ./config.yml:/app/config.yml:ro
|
||
depends_on: [cache]
|
||
|
||
# docs:
|
||
# <<: *common-attributes
|
||
# container_name: iptvс-docs
|
||
# image: git.axenov.dev/iptv/iptv-docs:latest
|
||
# build:
|
||
# context: ./docs
|
||
# dockerfile: Dockerfile
|
||
# ports: [8801:8801]
|
||
|
||
cache:
|
||
<<: *common-attributes
|
||
container_name: iptvc-cache
|
||
image: valkey/valkey:latest
|
||
# pull_policy: always
|
||
# entrypoint: ["sh", "/entrypoint.sh"]
|
||
command: ["valkey-server", "/usr/local/etc/valkey/valkey.conf"]
|
||
volumes:
|
||
# - ./docker/cache/entrypoint.sh:/entrypoint.sh:ro
|
||
- ./docker/cache/valkey.conf:/usr/local/etc/valkey/valkey.conf:ro
|
||
- ./docker/cache/data/:/data:rw
|
||
ports: [8803:6379]
|
||
|