This commit is contained in:
@@ -63,14 +63,14 @@ def main():
|
|||||||
if "tasks" in file:
|
if "tasks" in file:
|
||||||
print(os.path.dirname(os.path.abspath(__file__)))
|
print(os.path.dirname(os.path.abspath(__file__)))
|
||||||
if not os.path.exists(os.path.join(tasks_path, file.split("/")[1])):
|
if not os.path.exists(os.path.join(tasks_path, file.split("/")[1])):
|
||||||
container_name = file.split("/")[1]
|
container_name = file.split("/")[1].replace(".yml", "").replace(".yaml", "")
|
||||||
print(f"file does not exist! attempting to remove docker container \"{container_name}\"..")
|
print(f"file does not exist! attempting to remove docker container \"{container_name}\"..")
|
||||||
|
|
||||||
res = subprocess.run(f"docker container stop {container_name}")
|
res = subprocess.run(f"/usr/bin/docker container stop {container_name}")
|
||||||
if res.returncode == 0:
|
if res.returncode == 0:
|
||||||
subprocess.run(f"docker container rm {container_name}")
|
subprocess.run(f"/usr/bin/docker container rm {container_name}")
|
||||||
subprocess.run(f"docker image prune -f")
|
subprocess.run(f"/usr/bin/docker image prune -f")
|
||||||
subprocess.run(f"docker container prune -f")
|
subprocess.run(f"/usr/bin/docker container prune -f")
|
||||||
|
|
||||||
print(f"successfully removed container \"{container_name}\"")
|
print(f"successfully removed container \"{container_name}\"")
|
||||||
else:
|
else:
|
||||||
|
|||||||
@@ -1,101 +0,0 @@
|
|||||||
---
|
|
||||||
- name: Create folder structure
|
|
||||||
file:
|
|
||||||
path: "{{ item }}"
|
|
||||||
state: directory
|
|
||||||
with_items:
|
|
||||||
- "{{ data_dir }}/monitoring"
|
|
||||||
- "{{ data_dir }}/monitoring/prometheus"
|
|
||||||
- "{{ data_dir }}/monitoring/grafana"
|
|
||||||
|
|
||||||
- name: Create Monitoring Docker Network
|
|
||||||
docker_network:
|
|
||||||
name: monitoring
|
|
||||||
|
|
||||||
- name: Pull latest Grafana Docker Image
|
|
||||||
docker_image:
|
|
||||||
name: grafana/grafana
|
|
||||||
tag: latest
|
|
||||||
source: pull
|
|
||||||
- name: Pull latest Prometheus Docker Image
|
|
||||||
docker_image:
|
|
||||||
name: prom/prometheus
|
|
||||||
tag: latest
|
|
||||||
source: pull
|
|
||||||
- name: Pull latest CAdvisor Docker Image
|
|
||||||
docker_image:
|
|
||||||
name: gcr.io/cadvisor/cadvisor
|
|
||||||
tag: latest
|
|
||||||
source: pull
|
|
||||||
- name: Pull latest Node Exporter Docker Image
|
|
||||||
docker_image:
|
|
||||||
name: prom/node-exporter
|
|
||||||
tag: latest
|
|
||||||
source: pull
|
|
||||||
|
|
||||||
- name: Create Grafana Docker Container
|
|
||||||
docker_container:
|
|
||||||
name: grafana
|
|
||||||
user: "{{ PUID }}"
|
|
||||||
image: grafana/grafana:latest
|
|
||||||
restart_policy: unless-stopped
|
|
||||||
recreate: true
|
|
||||||
networks:
|
|
||||||
- name: homelab
|
|
||||||
- name: monitoring
|
|
||||||
volumes:
|
|
||||||
- "{{ data_dir }}/monitoring/grafana:/var/lib/grafana"
|
|
||||||
env:
|
|
||||||
GF_AUTH_ANONYMOUS_ENABLED: "{{ GRAFANA_AUTH_ANONYMOUS_ENABLED }}"
|
|
||||||
labels:
|
|
||||||
traefik.enable: "true"
|
|
||||||
traefik.http.routers.graf.rule: Host(`graf.fntz.net`)
|
|
||||||
traefik.http.routers.graf.entrypoints: webSecure
|
|
||||||
traefik.http.routers.graf.tls.certresolver: letsencrypt
|
|
||||||
traefik.http.services.graf.loadbalancer.server.port: "3000"
|
|
||||||
|
|
||||||
- name: Copy Prometheus Config
|
|
||||||
template:
|
|
||||||
src: "prometheus.yml.j2"
|
|
||||||
dest: "{{ data_dir }}/monitoring/prometheus/config.yml"
|
|
||||||
mode: "0744"
|
|
||||||
|
|
||||||
- name: Create Prometheus Docker Container
|
|
||||||
docker_container:
|
|
||||||
name: prometheus
|
|
||||||
image: prom/prometheus:latest
|
|
||||||
restart_policy: unless-stopped
|
|
||||||
recreate: true
|
|
||||||
networks:
|
|
||||||
- name: homelab
|
|
||||||
- name: monitoring
|
|
||||||
volumes:
|
|
||||||
- "{{ data_dir }}/monitoring/prometheus:/prometheus"
|
|
||||||
- "{{ data_dir }}/monitoring/prometheus/config.yml:/etc/prometheus/prometheus.yml"
|
|
||||||
|
|
||||||
- name: Create CAdvisor Docker Container
|
|
||||||
docker_container:
|
|
||||||
name: cadvisor
|
|
||||||
image: gcr.io/cadvisor/cadvisor:latest
|
|
||||||
restart_policy: unless-stopped
|
|
||||||
recreate: true
|
|
||||||
privileged: true
|
|
||||||
networks:
|
|
||||||
- name: monitoring
|
|
||||||
devices:
|
|
||||||
- /dev/kmsg
|
|
||||||
volumes:
|
|
||||||
- "/:/rootfs:ro"
|
|
||||||
- "/var/run:/var/run:ro"
|
|
||||||
- "/sys:/sys:ro"
|
|
||||||
- "/var/lib/docker:/var/lib/docker:ro"
|
|
||||||
- "/dev/disk/:/dev/disk:ro"
|
|
||||||
|
|
||||||
- name: Create Node-Exporter Docker Container
|
|
||||||
docker_container:
|
|
||||||
name: node-exporter
|
|
||||||
image: prom/node-exporter:latest
|
|
||||||
restart_policy: unless-stopped
|
|
||||||
recreate: true
|
|
||||||
networks:
|
|
||||||
- name: monitoring
|
|
||||||
Reference in New Issue
Block a user