Add: consul, drone, gaia and vault stacks

This commit is contained in:
mrjk 2022-08-19 15:10:05 -04:00
parent 81d0a32a85
commit 6dfa049b3e
9 changed files with 184 additions and 0 deletions

View File

@ -0,0 +1,13 @@
x-consul-bootstrap: &consul_server_ports
ports:
- "$app_expose_ip:8400:8400"
- "$app_expose_ip:8500:8500"
- "$app_expose_ip:8600:8600"
- "$app_expose_ip:8600:8600/udp"
services:
consul:
<<: *consul_server_ports

62
consul/docker-compose.yml Normal file
View File

@ -0,0 +1,62 @@
---
version: '3'
# Default consul image
x-consul: &consul
#image: consul:latest
image: consul:1.10
restart: unless-stopped
networks:
- default
environment:
CONSUL_BIND_INTERFACE: eth0
# Roles configuration
x-consul-agent: &consul_agent
<<: *consul
command: "agent -retry-join consul -client 0.0.0.0"
x-consul-server: &consul_server
<<: *consul
command: "agent -server -retry-join consul -client 0.0.0.0"
x-consul-bootstrap: &consul_server_bootstrap
<<: *consul_server
command: "agent -server -bootstrap-expect 3 -ui -client 0.0.0.0"
#ports:
# - "8400:8400"
# - "8500:8500"
# - "8600:8600"
# - "8600:8600/udp"
networks:
default:
services:
consul:
<<: *consul_server_bootstrap
hostname: consul
volumes:
- $app_data_dir/server1:/consul/data
consul-server-1:
<<: *consul_server
hostname: consul-server-1
consul-server-2:
<<: *consul_server
hostname: consul-server-2
consul-agent:
<<: *consul_agent
hostname: consul-agent-0
# consul-agent-1:
# <<: *consul_agent
# hostname: consul-agent-1
#
# consul-agent-2:
# <<: *consul_agent
# hostname: consul-agent-2

View File

@ -0,0 +1,11 @@
services:
drone:
environment:
- DRONE_DEBUG=true
- DRONE_TRACE=false
drone-runner:
environment:
- DRONE_DEBUG=true
- DRONE_TRACE=false

53
drone/docker-compose.yml Normal file
View File

@ -0,0 +1,53 @@
version: '3.6'
networks:
default:
build:
services:
drone:
image: drone/drone:${app_image_version:-2.12}
environment:
- DRONE_SERVER_PROTO=https
- DRONE_SERVER_HOST=$app_fqdn
- DRONE_RPC_SECRET=$app_secret_token
- DRONE_TLS_AUTOCERT=false
- DRONE_GIT_ALWAYS_AUTH=${DRONE_GIT_ALWAYS_AUTH:-false} # Set to true to access private repos
- DRONE_USER_CREATE=$DRONE_USER_CREATE
# DEPRECATED- DRONE_ADMIN=$DRONE_ADMIN # Depreacted since 0.9 => DRONE_USER_CREATE
- DRONE_DATABASE_DRIVER=sqlite3
- DRONE_DATABASE_DATASOURCE=/data/database.sqlite
# Howto: https://docs.drone.io/server/provider/gitea/
# See API: https://try.gitea.io/api/swagger#/user/userCreateOAuth2Application
- DRONE_GITEA_SERVER=$DRONE_GITEA_SERVER
- DRONE_GITEA_CLIENT_ID=$DRONE_GITEA_CLIENT_ID
- DRONE_GITEA_CLIENT_SECRET=$DRONE_GITEA_CLIENT_SECRET
networks:
- default
- build
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- $app_dir_data:/data
drone-runner:
image: drone/drone-runner-docker:${app_image_version:-1.8}
depends_on:
- drone
environment:
- DRONE_RPC_PROTO=http
- DRONE_RPC_HOST=drone
- DRONE_RUNNER_NAME=drone-runner
- DRONE_RPC_SECRET=$app_secret_token
- DRONE_RUNNER_CAPACITY=2
networks:
- build
volumes:
- /var/run/docker.sock:/var/run/docker.sock

View File

@ -0,0 +1,5 @@
services:
gaia:
ports:
- "$app_expose_ip:$app_expose_port:8080"

16
gaia/docker-compose.yml Normal file
View File

@ -0,0 +1,16 @@
version: "3.9"
services:
gaia:
image: "gaiaapp/gaia"
environment:
- "GAIA_RUNNER_API_PASSWORD=$app_secret_token"
- "GAIA_MONGODB_URI=mongodb://mongo/gaia"
runner:
image: "gaiaapp/runner"
environment:
- "GAIA_URL=http://gaia:8080"
- "GAIA_RUNNER_API_PASSWORD=$app_secret_token"
mongo:
image: "mongo:4.4"

View File

@ -0,0 +1,8 @@
services:
vault-client:
build: .
environment:
VAULT_ADDR: "http://vault:8200"
networks:
default:

View File

@ -0,0 +1,4 @@
services:
vault-server:
ports:
- "${app_expose_ip}:${app_expose_port:-8200}:${app_port:-8200}"

12
vault/docker-compose.yml Normal file
View File

@ -0,0 +1,12 @@
version: "3.8"
services:
vault:
image: vault:latest
environment:
VAULT_ADDR: "http://0.0.0.0:${app_port:-8200}"
VAULT_DEV_ROOT_TOKEN_ID: "${app_secret_token:-admin}"
cap_add:
- IPC_LOCK
networks:
default: