From 83935a86499124818ad619a174ed2e95fc5e7a88 Mon Sep 17 00:00:00 2001 From: Jesper Hess Nielsen Date: Wed, 13 Feb 2019 08:50:42 +0100 Subject: [PATCH 1/5] Add privatebin service --- roles/docker/defaults/main.yml | 3 +++ roles/docker/tasks/services/privatebin.yml | 18 ++++++++++++++++++ 2 files changed, 21 insertions(+) create mode 100644 roles/docker/tasks/services/privatebin.yml diff --git a/roles/docker/defaults/main.yml b/roles/docker/defaults/main.yml index 804536a..e5bfd45 100644 --- a/roles/docker/defaults/main.yml +++ b/roles/docker/defaults/main.yml @@ -21,3 +21,6 @@ matrix: riot: domain: "riot.{{ base_domain }}" + +privatebin: + domain: "paste.{{ base_domain }}" diff --git a/roles/docker/tasks/services/privatebin.yml b/roles/docker/tasks/services/privatebin.yml new file mode 100644 index 0000000..db1869c --- /dev/null +++ b/roles/docker/tasks/services/privatebin.yml @@ -0,0 +1,18 @@ +--- +- name: privatebin volume + docker_volume: + name: privatebin + +- name: privatebin app container + docker_container: + name: privatebin + image: jgeusebroek/privatebin:latest + restart_policy: unless_stopped + volumes: + - privatebin:/privatebin + networks: + - name: external_services + env: + VIRTUAL_HOST: "{{ privatebin.domain }}" + LETSENCRYPT_HOST: "{{ privatebin.domain }}" + LETSENCRYPT_EMAIL: "{{ letsencrypt_email }}" From 7a1e2c4b02c5c218962c267f7af3edfdb3c42c23 Mon Sep 17 00:00:00 2001 From: Jesper Hess Nielsen Date: Wed, 13 Feb 2019 08:54:05 +0100 Subject: [PATCH 2/5] Fix typo --- roles/docker/tasks/services/privatebin.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/roles/docker/tasks/services/privatebin.yml b/roles/docker/tasks/services/privatebin.yml index db1869c..b60755e 100644 --- a/roles/docker/tasks/services/privatebin.yml +++ b/roles/docker/tasks/services/privatebin.yml @@ -7,7 +7,7 @@ docker_container: name: privatebin image: jgeusebroek/privatebin:latest - restart_policy: unless_stopped + restart_policy: unless-stopped volumes: - privatebin:/privatebin networks: From d9921adae08198bc01371f4d5521fc6d6bd00b32 Mon Sep 17 00:00:00 2001 From: Jesper Hess Nielsen Date: Wed, 13 Feb 2019 10:04:22 +0100 Subject: [PATCH 3/5] Add /docker-volumes folder structure for bind mounts --- group_vars/all/vars.yml | 2 ++ roles/docker/defaults/main.yml | 1 + 2 files changed, 3 insertions(+) diff --git a/group_vars/all/vars.yml b/group_vars/all/vars.yml index 9edd0c2..578c45e 100644 --- a/group_vars/all/vars.yml +++ b/group_vars/all/vars.yml @@ -13,3 +13,5 @@ users: password: $6$qt3G.E.CxhC$OwBDn4rZUbCz06HLEMBHjgvKjxiv/eeerbklTHi.gpHIn1OejzX3k2.0NM0Dforaw6Yn5Y8Cgn8kL2FdbQLZ3/ groups: - sudo + +volume_root_folder: "/docker-volumes" diff --git a/roles/docker/defaults/main.yml b/roles/docker/defaults/main.yml index e5bfd45..3670b6b 100644 --- a/roles/docker/defaults/main.yml +++ b/roles/docker/defaults/main.yml @@ -24,3 +24,4 @@ riot: privatebin: domain: "paste.{{ base_domain }}" + volume_folder: "{{ volume_root_folder}}/privatebin" From ca183eaf4dca054781f5119648a564785f08287e Mon Sep 17 00:00:00 2001 From: Jesper Hess Nielsen Date: Wed, 13 Feb 2019 10:04:40 +0100 Subject: [PATCH 4/5] Add privatebin config file --- .../docker/files/configs/privatebin-conf.php | 154 ++++++++++++++++++ 1 file changed, 154 insertions(+) create mode 100644 roles/docker/files/configs/privatebin-conf.php diff --git a/roles/docker/files/configs/privatebin-conf.php b/roles/docker/files/configs/privatebin-conf.php new file mode 100644 index 0000000..039c2c0 --- /dev/null +++ b/roles/docker/files/configs/privatebin-conf.php @@ -0,0 +1,154 @@ +; Date: Wed, 13 Feb 2019 10:05:00 +0100 Subject: [PATCH 5/5] Finalise privatebin service setup --- roles/docker/tasks/main.yml | 5 +++++ roles/docker/tasks/services/privatebin.yml | 19 +++++++++++++++---- 2 files changed, 20 insertions(+), 4 deletions(-) diff --git a/roles/docker/tasks/main.yml b/roles/docker/tasks/main.yml index f4183ac..a54eaa1 100644 --- a/roles/docker/tasks/main.yml +++ b/roles/docker/tasks/main.yml @@ -22,6 +22,11 @@ name: "docker-compose" state: present +- name: create folder structure for bind mounts + file: + name: "{{ volume_root_folder }}" + state: directory + - name: setup services import_tasks: services.yml tags: diff --git a/roles/docker/tasks/services/privatebin.yml b/roles/docker/tasks/services/privatebin.yml index b60755e..d6ab54b 100644 --- a/roles/docker/tasks/services/privatebin.yml +++ b/roles/docker/tasks/services/privatebin.yml @@ -1,7 +1,17 @@ --- -- name: privatebin volume - docker_volume: - name: privatebin + +- name: create privatebin volume folders + file: + name: "{{ privatebin.volume_folder }}/{{ item }}" + state: directory + with_items: + - cfg + - data + +- name: upload privatebin config + template: + src: files/configs/privatebin-conf.php + dest: "{{ privatebin.volume_folder }}/cfg/conf.php" - name: privatebin app container docker_container: @@ -9,7 +19,8 @@ image: jgeusebroek/privatebin:latest restart_policy: unless-stopped volumes: - - privatebin:/privatebin + - "{{ privatebin.volume_folder }}/cfg:/privatebin/cfg" + - "{{ privatebin.volume_folder }}/data:/privatebin/data" networks: - name: external_services env: