# KV-Tube Docker Compose for Synology NAS # Usage: docker-compose up -d version: '3.8' services: kv-tube: build: context: . dockerfile: Dockerfile args: - NEXT_PUBLIC_API_URL=http://ut.khoavo.myds.me:8981/api image: git.khoavo.myds.me/vndangkhoa/kv-tube:v9 container_name: kv-tube platform: linux/amd64 restart: unless-stopped ports: - "5011:3000" - "8981:8080" volumes: - ./data:/app/data environment: - KVTUBE_DATA_DIR=/app/data - GIN_MODE=release - NODE_ENV=production - CORS_ALLOWED_ORIGINS=https://ut.khoavo.myds.me,http://ut.khoavo.myds.me:5011,http://localhost:3000,http://127.0.0.1:3000 labels: - "com.centurylinklabs.watchtower.enable=true" forgejo: image: codeberg.org/forgejo/forgejo:7.0.16 container_name: forgejo environment: - USER_UID=1026 - USER_GID=100 - GITEA__database__DB_TYPE=sqlite3 - TZ=Asia/Ho_Chi_Minh - GITEA__actions__ENABLED=true - INSTALL_LOCK=true - FORGEJO__server__ROOT_URL=http://nas:3050/ restart: always networks: - kv-tube volumes: - ./forgejo-data:/data ports: - "3050:3000" - "2222:22" forgejo-runner: image: code.forgejo.org/forgejo/runner:latest container_name: forgejo_runner restart: always user: "0:0" privileged: true depends_on: - forgejo networks: - kv-tube volumes: - /var/run/docker.sock:/var/run/docker.sock - ./forgejo-runner-data:/data entrypoint: - sh - -c - | if [ ! -f /data/.runner ]; then forgejo-runner register --no-interactive \ --instance http://forgejo:3000 \ --token d5XKhmpu4lTR7P516juCjEes6QsI4qFvVean3zqT \ --name synology-runner \ --labels ubuntu-latest,ubuntu-22.04,docker:host fi forgejo-runner daemon environment: - TZ=Asia/Ho_Chi_Minh networks: kv-tube: driver: bridge