diff options
author | Elizabeth Hunt <me@liz.coffee> | 2025-04-06 15:47:10 -0700 |
---|---|---|
committer | Elizabeth Hunt <me@liz.coffee> | 2025-04-06 15:47:10 -0700 |
commit | f0b1d38361d019f174d8417d141c5b880a1e01c2 (patch) | |
tree | 7b8362b1ab765928eeb908ca230f8c35cee9d42f /playbooks/roles/bin | |
parent | 138bef2d0d87d9805431f246c55622bf8ff726dd (diff) | |
download | infra-f0b1d38361d019f174d8417d141c5b880a1e01c2.tar.gz infra-f0b1d38361d019f174d8417d141c5b880a1e01c2.zip |
fix volume perms and deploy filestash
Diffstat (limited to 'playbooks/roles/bin')
-rw-r--r-- | playbooks/roles/bin/tasks/main.yml | 25 | ||||
-rw-r--r-- | playbooks/roles/bin/templates/stacks/docker-compose.yml | 24 | ||||
-rw-r--r-- | playbooks/roles/bin/templates/volumes/data/.gitkeep | 0 |
3 files changed, 49 insertions, 0 deletions
diff --git a/playbooks/roles/bin/tasks/main.yml b/playbooks/roles/bin/tasks/main.yml new file mode 100644 index 0000000..69516ab --- /dev/null +++ b/playbooks/roles/bin/tasks/main.yml @@ -0,0 +1,25 @@ +--- + +- name: Build bin compose dirs + ansible.builtin.file: + state: directory + dest: '{{ bin_base }}/{{ item.path }}' + owner: 1000 + group: 1000 + mode: 755 + with_filetree: '../templates' + when: item.state == 'directory' + +- name: Build bin compose files + ansible.builtin.template: + src: '{{ item.src }}' + dest: '{{ bin_base }}/{{ item.path }}' + owner: 1000 + group: 1000 + mode: 755 + with_filetree: '../templates' + when: item.state == 'file' + +- name: Deploy bin stack + ansible.builtin.command: + cmd: 'docker stack deploy -c {{ bin_base }}/stacks/docker-compose.yml bin' diff --git a/playbooks/roles/bin/templates/stacks/docker-compose.yml b/playbooks/roles/bin/templates/stacks/docker-compose.yml new file mode 100644 index 0000000..fe52d9d --- /dev/null +++ b/playbooks/roles/bin/templates/stacks/docker-compose.yml @@ -0,0 +1,24 @@ +services: + bin: + image: machines/filestash:latest + volumes: + - {{ bin_base }}/volumes/data:/app/data/state/ + environment: + - TZ={{ timezone }} + networks: + - proxy + deploy: + mode: replicated + replicas: 1 + labels: + - traefik.enable=true + - traefik.swarm.network=proxy + - traefik.http.routers.bin.tls=true + - traefik.http.routers.bin.tls.certResolver=letsencrypt + - traefik.http.routers.bin.rule=Host(`{{ bin_domain }}`) + - traefik.http.routers.bin.entrypoints=websecure + - traefik.http.services.bin.loadbalancer.server.port=8334 + +networks: + proxy: + external: true diff --git a/playbooks/roles/bin/templates/volumes/data/.gitkeep b/playbooks/roles/bin/templates/volumes/data/.gitkeep new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/playbooks/roles/bin/templates/volumes/data/.gitkeep |