- roles/nginx/templates/188-all-sites.conf.j2: 8 個服務 Jinja2 模板 - roles/docker-compose-service/tasks/main.yml: 通用 Docker Compose role - roles/swap/tasks/main.yml: swap2.img 管理 role (110 專用) - roles/pm2-service/tasks/main.yml: PM2 process 狀態確認 role - .gitea/workflows/ansible-lint.yml: infra/ansible/** 異動自動 lint Sprint B-1 完成: Git = 唯一真相 (Host IaC 骨架) Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
19 lines
613 B
YAML
19 lines
613 B
YAML
---
|
|
# docker-compose-service role — 確保 Docker Compose 服務運作中
|
|
# 呼叫方式: include_role: name=docker-compose-service
|
|
# vars:
|
|
# service_name: n8n
|
|
# service_dir: /opt/n8n
|
|
|
|
- name: "{{ service_name }} | 確認容器運作中"
|
|
ansible.builtin.command:
|
|
cmd: "docker ps --filter name={{ service_name }} --filter status=running --format '{{ '{{' }}.Names{{ '}}' }}'"
|
|
register: _svc_status
|
|
changed_when: false
|
|
|
|
- name: "{{ service_name }} | 若停止則啟動"
|
|
ansible.builtin.command:
|
|
cmd: "docker compose up -d"
|
|
chdir: "{{ service_dir }}"
|
|
when: _svc_status.stdout == ""
|