pull/28/head
Cian Hatton 3 years ago
parent 3c7182bed0
commit 2af27f1c0f

@ -8,11 +8,14 @@ bootstrap:
qnap:
ansible-playbook playbooks/setup-homelab.yml --limit qnap
services:
ansible-playbook playbooks/setup-homelab.yml --tags services
snunmu:
ansible-playbook playbooks/setup-homelab.yml --limit snunmu
homelab: bootstrap
homelab:
ansible-playbook playbooks/setup-homelab.yml
verify:

@ -15,11 +15,11 @@ olivetin:
config_file: config.yml
config_directory: /etc/config/OliveTin
docker_networks: []
homelab_user: cianhatton
configure_samba: true
configure_mergerfs: false
configure_samba: false
samba_group: smbgroup
samba_user: smbuser
users:
@ -51,4 +51,8 @@ directories:
desired_docker_images:
- ubuntu:latest
- busybox:latest
portainer_endpoint: -1
portainer_host: false
portainer_base_url: "http://qnap:9000"
external_docker_networks: []

@ -1,6 +1,7 @@
# all encrypted variables should go in the linked file.
vault_file: vault_vars/qnap-vault.yml
# any qnap specific variables go here
configure_mergerfs: true
mounts:
- path: /mnt/mergerfs
state: mounted
@ -10,6 +11,10 @@ mounts:
- /mnt/data/device2
options: allow_other,use_ino
configure_samba: true
portainer_host: true
devices:
- uuid: a54c1bde-1400-4975-bf24-08c603ca3a11 # /dev/sdc1
path: /mnt/data/device0
@ -25,48 +30,35 @@ devices:
external_docker_networks:
- mariadb_net
portainer_endpoint: 2
services:
- name: gitea
endpoint_id: &qnap_endpoint 2
template_vars:
image: gitea/gitea
tag: 1.16.9
- name: mealie
endpoint_id: *qnap_endpoint
template_vars: {}
- name: linkding
endpoint_id: *qnap_endpoint
template_vars: {}
- name: overseerr
endpoint_id: *qnap_endpoint
template_vars: {}
- name: nextcloud
endpoint_id: *qnap_endpoint
template_vars:
default_network: mariadb_net
- name: dashboards
endpoint_id: *qnap_endpoint
template_vars: {}
- name: nginx-proxy-manager
endpoint_id: *qnap_endpoint
template_vars: {}
- name: plex
endpoint_id: *qnap_endpoint
template_vars: {}
- name: uptime-kuma
endpoint_id: *qnap_endpoint
template_vars: {}
- name: vpn-stack
endpoint_id: *qnap_endpoint
template_vars: {}
- name: mariadb
endpoint_id: *qnap_endpoint
template_vars:
default_network: mariadb_net
- name: photoprism
endpoint_id: *qnap_endpoint
template_vars:
default_network: mariadb_net
- name: olivetin
endpoint_id: *qnap_endpoint
template_vars: {}

@ -1 +1,7 @@
---
vault_file: vault_vars/qnap-vault.yml
portainer_endpoint: 23
services:
- name: linkding
template_vars: {}

@ -11,15 +11,8 @@
roles:
- role: setup_users
- name: Install docker on docker hosts
hosts: dockerhosts
become: true
roles:
- role: setup_docker
tags: [setup, docker]
- name: Setup and deploy services on the QNAP
hosts: qnap
- name: Setup and deploy services.
hosts: servers
become: true
pre_tasks:
- name: Include vault variables.
@ -29,14 +22,18 @@
roles:
- role: setup_mergerfs
tags: [mergerfs]
when: configure_mergerfs
- role: setup_samba
when: configure_samba
tags: [samba]
- role: setup_docker
tags: [setup, docker]
- role: setup_portainer
when: portainer_host
tags: [services, portainer]
- role: setup_hosted_services
tags: [services]
- name: Setup home lab on linode instances.
hosts: linodes
become: true

@ -56,6 +56,7 @@
chatton.portainer.portainer_stack:
username: admin
password: '{{ portainer.password }}'
base_url: '{{ portainer_base_url }}'
docker_compose_file_path: '{{ directories.docker_compose_directory }}/{{ portainer_stack_name }}/docker-compose.yml'
stack_name: '{{ portainer_stack_name }}'
endpoint_id: '{{ portainer_stack_endpoint_id }}'

@ -1,4 +1,9 @@
---
- name: Install Modules for Python
ansible.builtin.pip:
name:
- boto3
- name: Docker | Pull images
docker_image:
name: '{{ item }}'
@ -47,7 +52,7 @@
name: deploy_portainer_stack
vars:
portainer_stack_name: "{{ item.name }}"
portainer_stack_endpoint_id: "{{ item.endpoint_id }}"
portainer_stack_endpoint_id: "{{ portainer_endpoint }}"
portainer_stack_template_vars: "{{ item.template_vars | default({}) }}"
with_items: "{{ services }}"

Loading…
Cancel
Save