76 lines
1.9 KiB
YAML
76 lines
1.9 KiB
YAML
services:
|
|
|
|
tailscale:
|
|
hostname: ${TAILNET_NAME}
|
|
image: tailscale/tailscale
|
|
volumes:
|
|
- ./data/tailscale:/tailscale
|
|
- /dev/net/tun:/dev/net/tun
|
|
- ./data/tailscaled.run:/tmp
|
|
cap_add:
|
|
- net_admin
|
|
- sys_module
|
|
environment:
|
|
TS_AUTHKEY: ${TS_AUTHKEY}
|
|
TS_AUTH_ONCE: true
|
|
TS_STATE_DIR: /tailscale
|
|
restart: unless-stopped
|
|
|
|
caddy:
|
|
image: caddy:alpine
|
|
network_mode: service:tailscale
|
|
volumes:
|
|
- ./data/caddy_data:/data
|
|
- ./data/tailscaled.run:/var/run/tailscale
|
|
depends_on:
|
|
- tailscale
|
|
- server
|
|
command: ["caddy", "reverse-proxy", "--from", "${GITEA_HOSTNAME}", "--to", ":3000"]
|
|
restart: unless-stopped
|
|
|
|
server:
|
|
labels:
|
|
- "com.centurylinklabs.watchtower.enable=true"
|
|
image: gitea/gitea:latest
|
|
network_mode: service:tailscale
|
|
environment:
|
|
- RUN_MODE=prod
|
|
- USER_UID=1000
|
|
- USER_GID=1000
|
|
- GITEA__database__DB_TYPE=postgres
|
|
- GITEA__database__HOST=db:5432
|
|
- GITEA__database__NAME=gitea
|
|
- GITEA__database__USER=gitea
|
|
- GITEA__database__PASSWD=${GITEA_DB_PASSWORD}
|
|
- GITEA__server__LANDING_PAGE=explore
|
|
restart: always
|
|
volumes:
|
|
- ./data/gitea:/data
|
|
- /etc/timezone:/etc/timezone:ro
|
|
- /etc/localtime:/etc/localtime:ro
|
|
depends_on:
|
|
- tailscale
|
|
- db
|
|
|
|
runner:
|
|
image: gitea/act_runner:nightly
|
|
environment:
|
|
GITEA_INSTANCE_URL: "https://${GITEA_HOSTNAME}"
|
|
GITEA_RUNNER_REGISTRATION_TOKEN: ${RUNNER_TOKEN}
|
|
GITEA_RUNNER_NAME: ${RUNNER_NAME}
|
|
GITEA_RUNNER_LABELS: ${RUNNER_LABELS}
|
|
volumes:
|
|
- ./data/runner:/data
|
|
- /var/run/docker.sock:/var/run/docker.sock
|
|
depends_on:
|
|
- server
|
|
|
|
db:
|
|
image: postgres:13
|
|
restart: always
|
|
environment:
|
|
- POSTGRES_USER=gitea
|
|
- POSTGRES_PASSWORD=${GITEA_DB_PASSWORD}
|
|
- POSTGRES_DB=gitea
|
|
volumes:
|
|
- ./data/postgres:/var/lib/postgresql/data |