diff --git a/remote/docker_netdata/tasks/main.yml b/remote/docker_netdata/tasks/main.yml new file mode 100644 index 0000000000000000000000000000000000000000..21a41e1fad3b5dc8d4f619e88fae855cee94f793 --- /dev/null +++ b/remote/docker_netdata/tasks/main.yml @@ -0,0 +1,24 @@ +--- + +- name: "create folder struct for {{ servicename }}" + file: + path: "{{ item }}" + state: "directory" + with_items: + - "{{ basedir }}" + - "{{ basedir }}/config" + - "{{ basedir }}/lib" + - "{{ basedir }}/cache" + +- name: "create config files for {{ servicename }}" + template: + src: "{{ item }}" + dest: "{{ basedir }}/{{ item }}" + with_items: + - docker-compose.yml + +- name: "start {{ servicename }} docker" + docker_compose: + project_src: "{{ basedir }}" + state: present + diff --git a/remote/docker_netdata/templates/docker-compose.yml b/remote/docker_netdata/templates/docker-compose.yml new file mode 100644 index 0000000000000000000000000000000000000000..50e7f13531cd92d53254cd1863d29f3049c618cc --- /dev/null +++ b/remote/docker_netdata/templates/docker-compose.yml @@ -0,0 +1,37 @@ +version: '3' + +services: + + app: + image: netdata/netdata + restart: always + cap_add: + - SYS_PTRACE + - SYS_ADMIN + security_opt: + - apparmor:unconfined + environment: + - DOCKER_USR=root + volumes: + - {{ basedir }}/config/netdata:/etc/netdata + - {{ basedir }}/lib:/var/lib/netdata + - {{ basedir }}/cache:/var/cache/netdata + - /etc/passwd:/host/etc/passwd:ro + - /etc/group:/host/etc/group:ro + - /proc:/host/proc:ro + - /sys:/host/sys:ro + - /etc/os-release:/host/etc/os-release:ro + - /var/run/docker.sock:/var/run/docker.sock:ro + labels: + - traefik.enable=true + - traefik.http.routers.{{ servicename }}.rule=Host(`{{ domain }}`) + - traefik.http.routers.{{ servicename }}.entrypoints=websecure + - traefik.http.services.{{ servicename }}.loadbalancer.server.port=19999 + networks: + - default + - web + + +networks: + web: + external: true \ No newline at end of file diff --git a/remote/docker_prometheus/tasks/main.yml b/remote/docker_prometheus/tasks/main.yml index 1d79a50e262d010a86551a961eabf7f035da39e9..85279791f8900f1f2bac0e948414b7b29ef0e1b8 100644 --- a/remote/docker_prometheus/tasks/main.yml +++ b/remote/docker_prometheus/tasks/main.yml @@ -1,17 +1,14 @@ - --- -- name: "create folder struct for {{ basedir }}" +- name: "create folder struct for {{ servicename }}" file: path: "{{ basedir }}" state: "directory" + with_items: + - "{{ basedir }}" + - "{{ basedir }}/data" -- name: "create folder struct for {{ basedir }}" - file: - path: "{{ basedir }}/data" - state: "directory" - -- name: "create config files for {{ basedir }}" +- name: "create config files for {{ servicename }}" template: src: "{{ item }}" dest: "{{ basedir }}/{{ item }}" @@ -19,7 +16,7 @@ - docker-compose.yml - prometheus.yml -- name: "start {{ basedir }} docker" +- name: "start {{ servicename }} docker" docker_compose: project_src: "{{ basedir }}" state: present diff --git a/site.yml b/site.yml index 423e6e884aa88eae7fe82113f6c810618f84ab7f..f3b4b3deca045688a220a62f3f86a7f3b0cfadbb 100644 --- a/site.yml +++ b/site.yml @@ -326,6 +326,12 @@ mqtt_port: 1883, influxdb_port: 18086 } + - { + role: remote/docker_netdata, tags: netdata, + servicename: netdata, + basedir: /srv/netdata, + domain: "netdata.warpzone.remote" + } - { role: remote/docker_prometheus, tags: prometheus, servicename: prometheus,