Cloudcmd starts and stops

This commit is contained in:
David Stephens 2022-08-28 17:00:31 +01:00
parent 3c8e1968ff
commit 6a0b4c57b5
4 changed files with 44 additions and 30 deletions

View file

@ -64,7 +64,6 @@
- role: cloudcmd
tags:
- cloudcmd
when: (cloudcmd_enabled | default(False))
- role: cloudflare_ddns
tags:

View file

@ -17,3 +17,6 @@ cloudcmd_port: "7373"
# specs
cloudcmd_memory: "1g"
# docker
cloudcmd_container_name: cloudcmd

View file

@ -0,0 +1,9 @@
---
- name: Stop Cloudcmd
docker_container:
name: "{{ cloudcmd_container_name }}"
state: absent
when: cloudcmd_enabled is false
listen:
- "stop cloudcmd"
- "stop disabled applications"

View file

@ -1,31 +1,34 @@
---
- name: Create Cloudcmd Directories
file:
path: "{{ item }}"
state: directory
with_items:
- "{{ cloudcmd_data_directory }}"
- name: Cloudcmd
block:
- name: Create Cloudcmd Directories
file:
path: "{{ item }}"
state: directory
with_items:
- "{{ cloudcmd_data_directory }}"
- name: Create Cloudcmd Docker Container
docker_container:
name: cloudcmd
image: coderaiser/cloudcmd
pull: true
volumes:
- "{{ cloudcmd_data_directory }}:/config:rw"
- "{{ cloudcmd_browse_directory }}:/mnt/fs"
ports:
- "{{ cloudcmd_port }}:8000"
env:
TZ: "{{ ansible_nas_timezone }}"
PUID: "{{ cloudcmd_user_id }}"
PGID: "{{ cloudcmd_group_id }}"
restart_policy: unless-stopped
memory: "{{ cloudcmd_memory }}"
labels:
traefik.enable: "{{ cloudcmd_available_externally | string }}"
traefik.http.routers.cloudcmd.rule: "Host(`{{ cloudcmd_hostname }}.{{ ansible_nas_domain }}`)"
traefik.http.routers.cloudcmd.tls.certresolver: "letsencrypt"
traefik.http.routers.cloudcmd.tls.domains[0].main: "{{ ansible_nas_domain }}"
traefik.http.routers.cloudcmd.tls.domains[0].sans: "*.{{ ansible_nas_domain }}"
traefik.http.services.cloudcmd.loadbalancer.server.port: "8000"
- name: Create Cloudcmd Docker Container
docker_container:
name: "{{ cloudcmd_container_name }}"
image: coderaiser/cloudcmd
pull: true
volumes:
- "{{ cloudcmd_data_directory }}:/config:rw"
- "{{ cloudcmd_browse_directory }}:/mnt/fs"
ports:
- "{{ cloudcmd_port }}:8000"
env:
TZ: "{{ ansible_nas_timezone }}"
PUID: "{{ cloudcmd_user_id }}"
PGID: "{{ cloudcmd_group_id }}"
restart_policy: unless-stopped
memory: "{{ cloudcmd_memory }}"
labels:
traefik.enable: "{{ cloudcmd_available_externally | string }}"
traefik.http.routers.cloudcmd.rule: "Host(`{{ cloudcmd_hostname }}.{{ ansible_nas_domain }}`)"
traefik.http.routers.cloudcmd.tls.certresolver: "letsencrypt"
traefik.http.routers.cloudcmd.tls.domains[0].main: "{{ ansible_nas_domain }}"
traefik.http.routers.cloudcmd.tls.domains[0].sans: "*.{{ ansible_nas_domain }}"
traefik.http.services.cloudcmd.loadbalancer.server.port: "8000"
when: cloudcmd_enabled is true