move from docker to podman
This commit is contained in:
parent
9a7e2b7022
commit
fbf3ae07e5
@ -23,19 +23,19 @@ ddclient_conf: |
|
|||||||
{% endfor %}
|
{% endfor %}
|
||||||
|
|
||||||
ddclient_hosts:
|
ddclient_hosts:
|
||||||
- "{% if nextcloud_publish | default(false) %}{{ nextcloud_short_name | default('nextcloud') }}.{{ domain }}{% else %}omitme{% endif %}"
|
- "{% if nextcloud_publish %}{{ nextcloud_short_name | default('nextcloud') }}.{{ domain }}{% else %}omitme{% endif %}"
|
||||||
- "{% if drone_publish | default(false) %}{{ drone_short_name | default('drone') }}.{{ domain }}{% else %}omitme{% endif %}"
|
- "{% if drone_publish %}{{ drone_short_name | default('drone') }}.{{ domain }}{% else %}omitme{% endif %}"
|
||||||
- "{% if gitea_publish_web | default(false) %}{{ gitea_short_name | default('gitea') }}.{{ domain }}{% else %}omitme{% endif %}"
|
- "{% if gitea_publish_web %}{{ gitea_short_name | default('gitea') }}.{{ domain }}{% else %}omitme{% endif %}"
|
||||||
- "{% if bitwarden_publish | default(false) %}{{ bitwarden_short_name | default('bitwarden') }}.{{ domain }}{% else %}omitme{% endif %}"
|
- "{% if bitwarden_publish %}{{ bitwarden_short_name | default('bitwarden') }}.{{ domain }}{% else %}omitme{% endif %}"
|
||||||
- "{% if playmaker_publish | default(false) %}{{ playmaker_short_name | default('playmaker') }}.{{ domain }}{% else %}omitme{% endif %}"
|
- "{% if playmaker_publish %}{{ playmaker_short_name | default('playmaker') }}.{{ domain }}{% else %}omitme{% endif %}"
|
||||||
- "{% if pypiserver_publish | default(false) %}{{ pypiserver_short_name | default('pip') }}.{{ domain }}{% else %}omitme{% endif %}"
|
- "{% if pypiserver_publish %}{{ pypiserver_short_name | default('pip') }}.{{ domain }}{% else %}omitme{% endif %}"
|
||||||
- "{% if wikijs_publish | default(false) %}{{ wikijs_short_name | default('wikijs') }}.{{ domain }}{% else %}omitme{% endif %}"
|
- "{% if wikijs_publish %}{{ wikijs_short_name | default('wikijs') }}.{{ domain }}{% else %}omitme{% endif %}"
|
||||||
- "{% if chartmuseum_publish | default(false) %}{{ chartsmuseum_short_name | default('charts') }}.{{ domain }}{% else %}omitme{% endif %}"
|
- "{% if chartmuseum_publish %}{{ chartsmuseum_short_name | default('charts') }}.{{ domain }}{% else %}omitme{% endif %}"
|
||||||
- "{% if registry_publish | default(false) %}{{ registry_short_name | default('registry') }}.{{ domain }}{% else %}omitme{% endif %}"
|
- "{% if registry_publish %}{{ registry_short_name | default('registry') }}.{{ domain }}{% else %}omitme{% endif %}"
|
||||||
- "{% if peertube_publish | default(false) %}{{ peertube_short_name | default('peertube') }}.{{ domain }}{% else %}omitme{% endif %}"
|
- "{% if peertube_publish %}{{ peertube_short_name | default('peertube') }}.{{ domain }}{% else %}omitme{% endif %}"
|
||||||
- "{% if mastodon_publish | default(false) %}{{ mastodon_short_name | default('mastodon') }}.{{ domain }}{% else %}omitme{% endif %}"
|
- "{% if mastodon_publish %}{{ mastodon_short_name | default('mastodon') }}.{{ domain }}{% else %}omitme{% endif %}"
|
||||||
- "{% if harbor_publish | default(false) %}{{ harbor_short_name | default('harbor') }}.{{ domain }}{% else %}omitme{% endif %}"
|
- "{% if harbor_publish %}{{ harbor_short_name | default('harbor') }}.{{ domain }}{% else %}omitme{% endif %}"
|
||||||
- "{% if roundcube_publish | default(false) %}{{ roundcube_short_name | default('webmail') }}.{{ domain }}{% else %}omitme{% endif %}"
|
- "{% if roundcube_publish %}{{ roundcube_short_name | default('webmail') }}.{{ domain }}{% else %}omitme{% endif %}"
|
||||||
- "{{ harbor_readonly_ingress | default('omitme') }}"
|
- "{{ harbor_readonly_ingress | default('omitme') }}"
|
||||||
- "{{ registry_readonly_ingress | default('omitme') }}"
|
- "{{ registry_readonly_ingress | default('omitme') }}"
|
||||||
- "{{ chartmuseum_readonly_ingress | default('omitme') }}"
|
- "{{ chartmuseum_readonly_ingress | default('omitme') }}"
|
||||||
|
@ -11,7 +11,7 @@
|
|||||||
|
|
||||||
- hosts: ddclient
|
- hosts: ddclient
|
||||||
roles:
|
roles:
|
||||||
- docker
|
- { role: docker, when: ddclient_container_engine == "docker" }
|
||||||
- role: ddclient
|
- { role: podman, when: ddclient_container_engine == "podman" }
|
||||||
dockerize: true
|
- { role: ddclient, ddclient_containerized: yes }
|
||||||
tags: ddclient
|
tags: ddclient
|
||||||
|
@ -1,6 +1,12 @@
|
|||||||
dockerize: false
|
ddclient_containerized: false
|
||||||
namespace: ddclient
|
ddclient_container_engine: "{{ container_engine | default('podman') }}"
|
||||||
ddclient_image_tag: v3.9.1-ls45
|
ddclient_network_mode: "host"
|
||||||
|
ddclient_namespace: "{{ namespace | default('ddclient') }}"
|
||||||
|
ddclient_container_name: "{{ ddclient_namespace }}-ddclient"
|
||||||
|
ddclient_container_registry: "{{ container_registry | default(docker_registry) | default('registry.geekhome.org/ghp') }}"
|
||||||
|
ddclient_image_name: "ddclient"
|
||||||
|
ddclient_image_tag: "v3.9.1-ls45"
|
||||||
|
ddclient_systemd_unit_name: "{{ ddclient_container_name }}-container.service"
|
||||||
|
|
||||||
harbor_readonly_ingress: false
|
harbor_readonly_ingress: false
|
||||||
registry_readonly_ingress: false
|
registry_readonly_ingress: false
|
||||||
@ -10,7 +16,7 @@ registry_publish: false
|
|||||||
chartmuseum_publish: false
|
chartmuseum_publish: false
|
||||||
harbor_publish: false
|
harbor_publish: false
|
||||||
roundcube_publish: false
|
roundcube_publish: false
|
||||||
nextcloud_publish: true
|
nextcloud_publish: false
|
||||||
bitwarden_publish: false
|
bitwarden_publish: false
|
||||||
gitea_publish_web: false
|
gitea_publish_web: false
|
||||||
gitea_publish_ssh: false
|
gitea_publish_ssh: false
|
||||||
@ -21,4 +27,3 @@ pypiserver_publish: false
|
|||||||
peertube_publish: false
|
peertube_publish: false
|
||||||
adguard_publish: false
|
adguard_publish: false
|
||||||
mastodon_publish: false
|
mastodon_publish: false
|
||||||
|
|
||||||
|
@ -13,15 +13,30 @@
|
|||||||
|
|
||||||
- name: restart docker ddclient
|
- name: restart docker ddclient
|
||||||
community.general.docker_container:
|
community.general.docker_container:
|
||||||
name: "{{ namespace }}-ddclient"
|
name: "{{ ddclient_container_name }}"
|
||||||
image: "{{ docker_registry }}/ddclient:{{ ddclient_image_tag | default('v3.9.1-ls45') }}"
|
image: "{{ ddclient_container_registry }}/{{ ddclient_image_name }}:{{ ddclient_image_tag }}"
|
||||||
state: started
|
state: started
|
||||||
restart: yes
|
restart: yes
|
||||||
container_default_behavior: no_defaults
|
container_default_behavior: no_defaults
|
||||||
detach: true
|
detach: true
|
||||||
restart_policy: unless-stopped
|
restart_policy: unless-stopped
|
||||||
volumes:
|
volumes:
|
||||||
- "/opt/{{ namespace }}/ddclient.conf:/config/ddclient.conf"
|
- "/opt/{{ ddclient_namespace }}/ddclient.conf:/config/ddclient.conf"
|
||||||
- "/opt/{{ namespace }}/Kvps.key:/config/Kvps.key"
|
- "/opt/{{ ddclient_namespace }}/Kvps.key:/config/Kvps.key"
|
||||||
- "/opt/{{ namespace }}/Kvps.private:/config/Kvps.private"
|
- "/opt/{{ ddclient_namespace }}/Kvps.private:/config/Kvps.private"
|
||||||
|
when: ddclient_container_engine == 'docker'
|
||||||
|
|
||||||
|
- name: restart podman ddclient
|
||||||
|
community.general.docker_container:
|
||||||
|
name: "{{ ddclient_container_name }}"
|
||||||
|
hostname: "{{ ddclient_container_name }}"
|
||||||
|
network: "{{ ddclient_network_mode }}"
|
||||||
|
image: "{{ ddclient_container_registry }}/{{ ddclient_image_name }}:{{ ddclient_image_tag }}"
|
||||||
|
state: started
|
||||||
|
restart: yes
|
||||||
|
volumes:
|
||||||
|
- "/opt/{{ ddclient_namespace }}/ddclient.conf:/config/ddclient.conf"
|
||||||
|
- "/opt/{{ ddclient_namespace }}/Kvps.key:/config/Kvps.key"
|
||||||
|
- "/opt/{{ ddclient_namespace }}/Kvps.private:/config/Kvps.private"
|
||||||
|
when: ddclient_container_engine == 'podman'
|
||||||
|
|
||||||
|
@ -1,35 +1,35 @@
|
|||||||
---
|
---
|
||||||
- name: Create configuration dir for {{ namespace }}
|
- name: Create configuration dir for {{ ddclient_namespace }}
|
||||||
file:
|
file:
|
||||||
name: "/opt/{{ namespace }}"
|
name: "/opt/{{ ddclient_namespace }}"
|
||||||
state: directory
|
state: directory
|
||||||
|
|
||||||
- name: Copy ddclient configuration for {{ namespace }}
|
- name: Copy ddclient configuration for {{ ddclient_namespace }}
|
||||||
copy:
|
copy:
|
||||||
dest: "/opt/{{ namespace }}/ddclient.conf"
|
dest: "/opt/{{ ddclient_namespace }}/ddclient.conf"
|
||||||
content: "{{ ddclient_conf }}"
|
content: "{{ ddclient_conf }}"
|
||||||
notify: restart docker ddclient
|
notify: restart docker ddclient
|
||||||
|
|
||||||
- name: Copy Kvps.key for {{ namespace }}
|
- name: Copy Kvps.key for {{ ddclient_namespace }}
|
||||||
copy:
|
copy:
|
||||||
dest: "/opt/{{ namespace }}/Kvps.key"
|
dest: "/opt/{{ ddclient_namespace }}/Kvps.key"
|
||||||
content: "{{ ddclient_tsig_public_key_base64 | b64decode }}"
|
content: "{{ ddclient_tsig_public_key_base64 | b64decode }}"
|
||||||
notify: restart docker ddclient
|
notify: restart docker ddclient
|
||||||
|
|
||||||
- name: Copy Kvps.private for {{ namespace }}
|
- name: Copy Kvps.private for {{ ddclient_namespace }}
|
||||||
copy:
|
copy:
|
||||||
dest: "/opt/{{ namespace }}/Kvps.private"
|
dest: "/opt/{{ ddclient_namespace }}/Kvps.private"
|
||||||
content: "{{ ddclient_tsig_private_key_base64 | b64decode }}"
|
content: "{{ ddclient_tsig_private_key_base64 | b64decode }}"
|
||||||
notify: restart docker ddclient
|
notify: restart docker ddclient
|
||||||
|
|
||||||
- name: Start ddclient in docker for {{ namespace }}
|
- name: Start ddclient in docker for {{ ddclient_namespace }}
|
||||||
docker_container:
|
docker_container:
|
||||||
name: "{{ namespace }}-ddclient"
|
name: "{{ ddclient_container_name }}"
|
||||||
image: "{{ docker_registry }}/ddclient:{{ ddclient_image_tag }}"
|
image: "{{ ddclient_container_registry }}/{{ ddclient_image_name }}:{{ ddclient_image_tag }}"
|
||||||
state: started
|
state: started
|
||||||
container_default_behavior: no_defaults
|
container_default_behavior: no_defaults
|
||||||
restart_policy: unless-stopped
|
restart_policy: unless-stopped
|
||||||
volumes:
|
volumes:
|
||||||
- "/opt/{{ namespace }}/ddclient.conf:/config/ddclient.conf"
|
- "/opt/{{ ddclient_namespace }}/ddclient.conf:/config/ddclient.conf"
|
||||||
- "/opt/{{ namespace }}/Kvps.key:/config/Kvps.key"
|
- "/opt/{{ ddclient_namespace }}/Kvps.key:/config/Kvps.key"
|
||||||
- "/opt/{{ namespace }}/Kvps.private:/config/Kvps.private"
|
- "/opt/{{ ddclient_namespace }}/Kvps.private:/config/Kvps.private"
|
||||||
|
@ -1,12 +1,18 @@
|
|||||||
---
|
---
|
||||||
- block:
|
- block:
|
||||||
- import_tasks: install.yml
|
- import_tasks: install.yml
|
||||||
when: not dockerize
|
when: not ddclient_containerized
|
||||||
- import_tasks: configure.yml
|
- import_tasks: configure.yml
|
||||||
when: not dockerize
|
when: not ddclient_containerized
|
||||||
become: true
|
become: true
|
||||||
|
|
||||||
- block:
|
- block:
|
||||||
- import_tasks: docker.yml
|
- import_tasks: docker.yml
|
||||||
when: dockerize
|
when:
|
||||||
|
- ddclient_containerized
|
||||||
|
- ddclient_container_engine == "docker"
|
||||||
|
- import_tasks: podman.yml
|
||||||
|
when:
|
||||||
|
- ddclient_containerized
|
||||||
|
- ddclient_container_engine == "podman"
|
||||||
become: true
|
become: true
|
||||||
|
Loading…
x
Reference in New Issue
Block a user