Merge pull request #106 from cloud-neutral/codex/create-docker-roles-for-metrics-and-logs

Add bootstrap compose templates to observability roles
This commit is contained in:
cloudneutral 2025-12-17 17:32:25 +08:00 committed by GitHub
commit 4e0e104131
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
20 changed files with 280 additions and 0 deletions

View File

@ -0,0 +1,5 @@
- name: setup OpenObserve
hosts: all
become: true
roles:
- docker/OpenObserve/

View File

@ -0,0 +1,5 @@
- name: setup Tempo
hosts: all
become: true
roles:
- docker/Tempo/

View File

@ -0,0 +1,5 @@
- name: setup VictoriaLogs
hosts: all
become: true
roles:
- docker/VictoriaLogs/

View File

@ -0,0 +1,5 @@
- name: setup VictoriaMetrics
hosts: all
become: true
roles:
- docker/VictoriaMetrics/

View File

@ -0,0 +1,5 @@
- name: setup otel
hosts: all
become: true
roles:
- docker/otel/

View File

@ -0,0 +1,5 @@
# OpenObserve (docker)
Placeholder role for docker-compose style deployment of OpenObserve.
Templates include docker-compose.yaml with bootstrap nginx and certbot services mirroring the Zitadel setup.

View File

@ -0,0 +1,5 @@
---
# TODO: implement docker deployment tasks
- name: Placeholder task
debug:
msg: "Role placeholder. Implement docker deployment tasks."

View File

@ -0,0 +1,41 @@
services:
bootstrap-nginx:
profiles: ["bootstrap"]
image: nginx:mainline-alpine
container_name: bootstrap-nginx
volumes:
- "{{ zitadel_workspace }}/certbot/www:/var/www/certbot"
- "{{ zitadel_workspace }}/certbot/conf:/etc/letsencrypt"
- "{{ zitadel_workspace }}/nginx/nginx.conf:/etc/nginx/nginx.conf"
- "{{ zitadel_workspace }}/nginx/conf.d/bootstrap-nginx.conf:/etc/nginx/conf.d/bootstrap-nginx.conf"
ports:
- "80:80" # 暂时只占用80
networks:
- app
healthcheck:
test: ["CMD", "wget", "-qO-", "http://localhost"]
interval: 3s
timeout: 2s
retries: 10
start_period: 3s
certbot:
profiles: ["bootstrap"]
image: certbot/certbot
container_name: certbot
command: >
certonly --webroot
--webroot-path=/var/www/certbot
--email manbuzhe2009@qq.com
--agree-tos
--no-eff-email
--keep-until-expiring
--non-interactive
-d {{ zitadel_domain }}
volumes:
- "{{ zitadel_workspace }}/certbot/conf:/etc/letsencrypt"
- "{{ zitadel_workspace }}/certbot/www:/var/www/certbot"
networks:
- app
networks:
app:

View File

@ -0,0 +1,5 @@
# Tempo (docker)
Placeholder role for docker-compose style deployment of Tempo.
Templates include docker-compose.yaml with bootstrap nginx and certbot services mirroring the Zitadel setup.

View File

@ -0,0 +1,5 @@
---
# TODO: implement docker deployment tasks
- name: Placeholder task
debug:
msg: "Role placeholder. Implement docker deployment tasks."

View File

@ -0,0 +1,41 @@
services:
bootstrap-nginx:
profiles: ["bootstrap"]
image: nginx:mainline-alpine
container_name: bootstrap-nginx
volumes:
- "{{ zitadel_workspace }}/certbot/www:/var/www/certbot"
- "{{ zitadel_workspace }}/certbot/conf:/etc/letsencrypt"
- "{{ zitadel_workspace }}/nginx/nginx.conf:/etc/nginx/nginx.conf"
- "{{ zitadel_workspace }}/nginx/conf.d/bootstrap-nginx.conf:/etc/nginx/conf.d/bootstrap-nginx.conf"
ports:
- "80:80" # 暂时只占用80
networks:
- app
healthcheck:
test: ["CMD", "wget", "-qO-", "http://localhost"]
interval: 3s
timeout: 2s
retries: 10
start_period: 3s
certbot:
profiles: ["bootstrap"]
image: certbot/certbot
container_name: certbot
command: >
certonly --webroot
--webroot-path=/var/www/certbot
--email manbuzhe2009@qq.com
--agree-tos
--no-eff-email
--keep-until-expiring
--non-interactive
-d {{ zitadel_domain }}
volumes:
- "{{ zitadel_workspace }}/certbot/conf:/etc/letsencrypt"
- "{{ zitadel_workspace }}/certbot/www:/var/www/certbot"
networks:
- app
networks:
app:

View File

@ -0,0 +1,5 @@
# VictoriaLogs (docker)
Placeholder role for docker-compose style deployment of VictoriaLogs.
Templates include docker-compose.yaml with bootstrap nginx and certbot services mirroring the Zitadel setup.

View File

@ -0,0 +1,5 @@
---
# TODO: implement docker deployment tasks
- name: Placeholder task
debug:
msg: "Role placeholder. Implement docker deployment tasks."

View File

@ -0,0 +1,41 @@
services:
bootstrap-nginx:
profiles: ["bootstrap"]
image: nginx:mainline-alpine
container_name: bootstrap-nginx
volumes:
- "{{ zitadel_workspace }}/certbot/www:/var/www/certbot"
- "{{ zitadel_workspace }}/certbot/conf:/etc/letsencrypt"
- "{{ zitadel_workspace }}/nginx/nginx.conf:/etc/nginx/nginx.conf"
- "{{ zitadel_workspace }}/nginx/conf.d/bootstrap-nginx.conf:/etc/nginx/conf.d/bootstrap-nginx.conf"
ports:
- "80:80" # 暂时只占用80
networks:
- app
healthcheck:
test: ["CMD", "wget", "-qO-", "http://localhost"]
interval: 3s
timeout: 2s
retries: 10
start_period: 3s
certbot:
profiles: ["bootstrap"]
image: certbot/certbot
container_name: certbot
command: >
certonly --webroot
--webroot-path=/var/www/certbot
--email manbuzhe2009@qq.com
--agree-tos
--no-eff-email
--keep-until-expiring
--non-interactive
-d {{ zitadel_domain }}
volumes:
- "{{ zitadel_workspace }}/certbot/conf:/etc/letsencrypt"
- "{{ zitadel_workspace }}/certbot/www:/var/www/certbot"
networks:
- app
networks:
app:

View File

@ -0,0 +1,5 @@
# VictoriaMetrics (docker)
Placeholder role for docker-compose style deployment of VictoriaMetrics.
Templates include docker-compose.yaml with bootstrap nginx and certbot services mirroring the Zitadel setup.

View File

@ -0,0 +1,5 @@
---
# TODO: implement docker deployment tasks
- name: Placeholder task
debug:
msg: "Role placeholder. Implement docker deployment tasks."

View File

@ -0,0 +1,41 @@
services:
bootstrap-nginx:
profiles: ["bootstrap"]
image: nginx:mainline-alpine
container_name: bootstrap-nginx
volumes:
- "{{ zitadel_workspace }}/certbot/www:/var/www/certbot"
- "{{ zitadel_workspace }}/certbot/conf:/etc/letsencrypt"
- "{{ zitadel_workspace }}/nginx/nginx.conf:/etc/nginx/nginx.conf"
- "{{ zitadel_workspace }}/nginx/conf.d/bootstrap-nginx.conf:/etc/nginx/conf.d/bootstrap-nginx.conf"
ports:
- "80:80" # 暂时只占用80
networks:
- app
healthcheck:
test: ["CMD", "wget", "-qO-", "http://localhost"]
interval: 3s
timeout: 2s
retries: 10
start_period: 3s
certbot:
profiles: ["bootstrap"]
image: certbot/certbot
container_name: certbot
command: >
certonly --webroot
--webroot-path=/var/www/certbot
--email manbuzhe2009@qq.com
--agree-tos
--no-eff-email
--keep-until-expiring
--non-interactive
-d {{ zitadel_domain }}
volumes:
- "{{ zitadel_workspace }}/certbot/conf:/etc/letsencrypt"
- "{{ zitadel_workspace }}/certbot/www:/var/www/certbot"
networks:
- app
networks:
app:

View File

@ -0,0 +1,5 @@
# otel (docker)
Placeholder role for docker-compose style deployment of otel.
Templates include docker-compose.yaml with bootstrap nginx and certbot services mirroring the Zitadel setup.

View File

@ -0,0 +1,5 @@
---
# TODO: implement docker deployment tasks
- name: Placeholder task
debug:
msg: "Role placeholder. Implement docker deployment tasks."

View File

@ -0,0 +1,41 @@
services:
bootstrap-nginx:
profiles: ["bootstrap"]
image: nginx:mainline-alpine
container_name: bootstrap-nginx
volumes:
- "{{ zitadel_workspace }}/certbot/www:/var/www/certbot"
- "{{ zitadel_workspace }}/certbot/conf:/etc/letsencrypt"
- "{{ zitadel_workspace }}/nginx/nginx.conf:/etc/nginx/nginx.conf"
- "{{ zitadel_workspace }}/nginx/conf.d/bootstrap-nginx.conf:/etc/nginx/conf.d/bootstrap-nginx.conf"
ports:
- "80:80" # 暂时只占用80
networks:
- app
healthcheck:
test: ["CMD", "wget", "-qO-", "http://localhost"]
interval: 3s
timeout: 2s
retries: 10
start_period: 3s
certbot:
profiles: ["bootstrap"]
image: certbot/certbot
container_name: certbot
command: >
certonly --webroot
--webroot-path=/var/www/certbot
--email manbuzhe2009@qq.com
--agree-tos
--no-eff-email
--keep-until-expiring
--non-interactive
-d {{ zitadel_domain }}
volumes:
- "{{ zitadel_workspace }}/certbot/conf:/etc/letsencrypt"
- "{{ zitadel_workspace }}/certbot/www:/var/www/certbot"
networks:
- app
networks:
app: