This repository has been archived on 2024-02-03. You can view files and clone it, but cannot push or open issues or pull requests.
flow-packer/files/compose/docker-compose.yaml

94 lines
2.3 KiB
YAML

---
version: "3.8"
networks:
forge:
name: "forge-flow"
ipam:
driver: "default"
config:
- subnet: "${NETWORK_FORGE_FLOW_SUBNET}"
volumes:
traefik-shared:
name: "traefik-config-shared-volume"
services:
# -- Traffic flow --
traefik:
container_name: "traffic-flow"
build:
args:
TRAEFIK_VERSION: "${TRAEFIK_VERSION}"
context: "./traefik"
networks:
forge:
ipv4_address: "${TRAEFIK_CONTAINER_IPV4_ADDRESS}"
ports:
- target: 80
published: 80
protocol: "tcp"
mode: "host"
- target: 443
published: 443
protocol: "tcp"
mode: "host"
- target: ${TRAEFIK_EXTERNAL_SSH_PORT}
published: ${TRAEFIK_EXTERNAL_SSH_PORT}
protocol: "tcp"
mode: "host"
restart: "always"
volumes:
- type: "volume"
source: "traefik-shared"
target: "${TRAEFIK_SHARED_MOUNT_POINT}"
- type: "bind"
source: "/etc/timezone"
target: "/etc/timezone"
read_only: true
- type: "bind"
source: "/etc/localtime"
target: "/etc/localtime"
read_only: true
# Traefik TLS volume
- type: "bind"
source: "${TRAEFIK_TLS_HOST_DIR}"
target: "${TRAEFIK_TLS_CONTAINER_DIR}"
# -- Code flow --
gitea:
container_name: "code-flow"
build:
args:
FLOW_GID: "${FLOW_GID}"
FLOW_UID: "${FLOW_UID}"
GITEA_HOME: "${GITEA_HOME}"
GITEA_WORK_DIR: "${GITEA_WORK_DIR}"
GITEA_CUSTOM: "${GITEA_CUSTOM}"
GITEA_APP_INI: "${GITEA_APP_INI}"
GITEA_BIN: "${GITEA_BIN}"
GITEA_DATA_CONTAINER_DIR: "${GITEA_DATA_CONTAINER_DIR}"
GITEA_TMP: "${GITEA_TMP}"
context: "./gitea"
expose:
- "${GITEA_SSH_PORT}"
- "${GITEA_HTTP_PORT}"
networks:
forge:
ipv4_address: "${GITEA_CONTAINER_IPV4_ADDRESS}"
restart: "always"
volumes:
- type: "volume"
source: "traefik-shared"
target: "${TRAEFIK_SHARED_MOUNT_POINT}"
- type: "bind"
source: "/etc/timezone"
target: "/etc/timezone"
read_only: true
- type: "bind"
source: "/etc/localtime"
target: "/etc/localtime"
read_only: true
# Gitea data volume
- type: "bind"
source: "${GITEA_DATA_HOST_DIR}"
target: "${GITEA_DATA_CONTAINER_DIR}"