115 lines
2.4 KiB
YAML
115 lines
2.4 KiB
YAML
- name: Create a pangolin group
|
|
group:
|
|
name: pangolin
|
|
state: present
|
|
gid: 1051
|
|
|
|
- name: Create a pangolin user
|
|
user:
|
|
name: pangolin
|
|
uid: 1051
|
|
group: 1051
|
|
comment: "pangolin user"
|
|
shell: /bin/bash
|
|
state: present
|
|
create_home: yes
|
|
|
|
- name: Permanently enable http service (firewalld)
|
|
ansible.posix.firewalld:
|
|
service: http
|
|
state: enabled
|
|
permanent: true
|
|
immediate: true
|
|
offline: true
|
|
|
|
- name: Permanently enable https service (firewalld)
|
|
ansible.posix.firewalld:
|
|
service: https
|
|
state: enabled
|
|
permanent: true
|
|
immediate: true
|
|
offline: true
|
|
|
|
- name: Permanently enable wireguard service (firewalld)
|
|
ansible.posix.firewalld:
|
|
service: wireguard
|
|
state: enabled
|
|
permanent: true
|
|
immediate: true
|
|
offline: true
|
|
|
|
- name: Permit traffic in default zone on port 21820/udp
|
|
ansible.posix.firewalld:
|
|
port: 21820/udp
|
|
permanent: true
|
|
state: enabled
|
|
immediate: true
|
|
offline: true
|
|
|
|
- name: Install epel
|
|
package:
|
|
name: epel-release
|
|
state: present
|
|
|
|
- name: Install podman
|
|
package:
|
|
name: podman
|
|
state: present
|
|
|
|
- name: Install podman-compose
|
|
package:
|
|
name: podman-compose
|
|
state: present
|
|
|
|
- name: Start and enable podman service
|
|
service:
|
|
name: podman
|
|
state: started
|
|
enabled: true
|
|
|
|
- name: Create pangolin config and logging directories
|
|
file:
|
|
path: "{{ item }}"
|
|
state: directory
|
|
mode: 0750
|
|
owner: pangolin
|
|
group: pangolin
|
|
loop:
|
|
- /home/pangolin/config
|
|
- /home/pangolin/config/db
|
|
- /home/pangolin/config/traefik
|
|
- /home/pangolin/config/letsencrypt
|
|
- /home/pangolin/config/logs
|
|
|
|
- name: Create pangolin config
|
|
template:
|
|
src: templates/config.yaml.j2
|
|
dest: /home/pangolin/config/config.yaml
|
|
owner: pangolin
|
|
group: pangolin
|
|
mode: 0600
|
|
|
|
- name: Create traefik config
|
|
template:
|
|
src: templates/traefik_config.yaml.j2
|
|
dest: /home/pangolin/config/traefik/traefik_config.yaml
|
|
owner: pangolin
|
|
group: pangolin
|
|
mode: 0600
|
|
|
|
- name: Create traefik dynamic config
|
|
template:
|
|
src: templates/dynamic_config.yaml.j2
|
|
dest: /home/pangolin/config/traefik/dynamic_config.yaml
|
|
owner: pangolin
|
|
group: pangolin
|
|
mode: 0600
|
|
|
|
- name: Create docker-compose
|
|
template:
|
|
src: templates/docker-compose.yaml.j2
|
|
dest: /home/pangolin/docker-compose.yaml
|
|
owner: pangolin
|
|
group: pangolin
|
|
mode: 0600
|