2022-11-18 15:08:16 +00:00
|
|
|
---
|
2022-11-18 19:05:58 +00:00
|
|
|
version: "3.9"
|
2022-11-18 15:08:16 +00:00
|
|
|
|
|
|
|
networks:
|
2022-11-18 19:05:58 +00:00
|
|
|
flow:
|
|
|
|
name: "flow"
|
2022-11-18 15:08:16 +00:00
|
|
|
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"
|
2022-11-18 23:26:33 +00:00
|
|
|
image: localhost/flow/traefik:${TRAEFIK_VERSION}
|
2022-11-18 15:08:16 +00:00
|
|
|
build:
|
2022-11-18 19:05:58 +00:00
|
|
|
context: "../traefik"
|
2022-11-18 15:08:16 +00:00
|
|
|
networks:
|
2022-11-18 19:05:58 +00:00
|
|
|
flow:
|
2022-11-18 15:08:16 +00:00
|
|
|
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"
|
2022-11-18 23:26:33 +00:00
|
|
|
image: localhost/flow/gitea:${GITEA_VERSION}
|
2022-11-18 15:08:16 +00:00
|
|
|
build:
|
2022-11-18 19:05:58 +00:00
|
|
|
context: "../gitea"
|
2022-11-18 15:08:16 +00:00
|
|
|
expose:
|
|
|
|
- "${GITEA_SSH_PORT}"
|
|
|
|
- "${GITEA_HTTP_PORT}"
|
|
|
|
networks:
|
2022-11-18 19:05:58 +00:00
|
|
|
flow:
|
2022-11-18 15:08:16 +00:00
|
|
|
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}"
|
2022-11-21 05:49:41 +00:00
|
|
|
# -- Free Flow 2 --
|
|
|
|
gotosocial:
|
|
|
|
container_name: "free-flow-2"
|
|
|
|
image: localhost/flow/gotosocial:latest
|
|
|
|
build:
|
|
|
|
context: "../gotosocial"
|
|
|
|
expose:
|
|
|
|
- "${GTS_PORT}"
|
|
|
|
networks:
|
|
|
|
flow:
|
|
|
|
ipv4_address: "${GTS_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
|
|
|
|
# Go To Social data volume
|
|
|
|
- type: "bind"
|
|
|
|
source: "${GTS_DATA_HOST_DIR}"
|
|
|
|
target: "${GTS_DATA_CONTAINER_DIR}"
|