Compare commits
31 Commits
0193e74142
...
084e8dbd5f
| Author | SHA1 | Date | |
|---|---|---|---|
| 084e8dbd5f | |||
| 3f21d2211d | |||
| 9da7430e4b | |||
| a35b24dbaa | |||
| 6000e76f42 | |||
| a56e084ddc | |||
| 2c17ec766c | |||
| 3b505b7499 | |||
| 1ee50d0416 | |||
| 6292834417 | |||
| d4b9f3d1d1 | |||
| df4980d443 | |||
| 3a42d5454a | |||
| 4eb4083e69 | |||
| 52bad1a6ca | |||
| 15853e9cbc | |||
| 414cf58574 | |||
| aad9de469e | |||
| bed6e403c2 | |||
| 23998b2800 | |||
| 48aefdefa8 | |||
| 16b35cbfd3 | |||
| a892037efd | |||
| e85df2798a | |||
| a44dd6b5a9 | |||
| 4fa6676e91 | |||
| bc61753794 | |||
| 09c67abe58 | |||
| 9777fb2813 | |||
| 21997f3c33 | |||
| d08ee33972 |
@@ -26,4 +26,5 @@ jobs:
|
||||
echo "StrictHostKeyChecking no" >> ~/.ssh/config
|
||||
echo "${{ secrets.ANSIBLE_VAULT_PASSWORD }}" > ~/.vault_password.txt
|
||||
echo "nameserver 10.10.10.1" > /etc/resolv.conf
|
||||
./.gitea/workflows/deploy.sh "${{ github.event.before }}" "${{ github.sha }}"
|
||||
ansible-galaxy install -r requirements.yml
|
||||
ansible-playbook main.yml --vault-password-file ~/.vault_password.txt
|
||||
|
||||
24
all.yml
Normal file
24
all.yml
Normal file
@@ -0,0 +1,24 @@
|
||||
---
|
||||
- hosts: all
|
||||
become: yes
|
||||
name: Configure all servers
|
||||
pre_tasks:
|
||||
- name: Create directories
|
||||
file:
|
||||
path: "/data"
|
||||
state: directory
|
||||
roles:
|
||||
- role: geerlingguy.docker
|
||||
docker_users:
|
||||
- administrator
|
||||
tasks:
|
||||
- name: Gather facts (always, even with tags)
|
||||
ansible.builtin.setup:
|
||||
tags: always
|
||||
|
||||
- name: Setup base system
|
||||
import_tasks: tasks/base.yml
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -1,70 +0,0 @@
|
||||
---
|
||||
- hosts: proxmox
|
||||
become: yes
|
||||
|
||||
tasks:
|
||||
- name: Delete existing template
|
||||
community.general.proxmox_kvm:
|
||||
api_host: "{{ api_host }}"
|
||||
api_user: "{{ api_user }}"
|
||||
api_password: "{{ api_password }}"
|
||||
node: "{{ node_target }}"
|
||||
name: "debian-12-generic-amd64"
|
||||
state: absent
|
||||
|
||||
- name: Download cloud-init image
|
||||
register: image
|
||||
ansible.builtin.get_url:
|
||||
url: "https://cloud.debian.org/images/cloud/trixie/latest/debian-13-generic-amd64.qcow2"
|
||||
dest: /tmp
|
||||
mode: "0644"
|
||||
force: true
|
||||
|
||||
- name: Install Tools
|
||||
ansible.builtin.apt:
|
||||
name:
|
||||
- libguestfs-tools
|
||||
- python3
|
||||
- python3-pip
|
||||
- python3-proxmoxer
|
||||
update_cache: true
|
||||
install_recommends: false
|
||||
state: present
|
||||
|
||||
- name: Install Tools to cloud-init image
|
||||
ansible.builtin.shell: |
|
||||
virt-customize -a {{ image.dest }} --run-command 'sed -i "s|primary.*|primary: https://deb.debian.org/debian|g" /etc/cloud/cloud.cfg'
|
||||
virt-customize -a {{ image.dest }} --run-command 'apt update'
|
||||
virt-customize -a {{ image.dest }} --install qemu-guest-agent
|
||||
|
||||
- name: Create new VM template from cloud-init image
|
||||
community.general.proxmox_kvm:
|
||||
api_host: "{{ api_host }}"
|
||||
api_user: "{{ api_user }}"
|
||||
# api_password: "{{ api_password }}"
|
||||
api_token_id: "{{ api_token_id }}"
|
||||
api_token_secret: "{{ api_token_secret }}"
|
||||
api_port: "8006"
|
||||
node: "{{ node_target }}"
|
||||
name: "debian-12-generic-amd64"
|
||||
agent: "enabled=1"
|
||||
bios: ovmf
|
||||
boot: "order=scsi0"
|
||||
cores: 4
|
||||
sockets: 1
|
||||
machine: q35
|
||||
memory: 4096
|
||||
ostype: "l26"
|
||||
vga: std
|
||||
scsihw: "virtio-scsi-single"
|
||||
net:
|
||||
net0: "virtio,bridge=vmbr0,firewall=1,tag=10"
|
||||
ipconfig:
|
||||
ipconfig0: "ip=dhcp"
|
||||
template: true
|
||||
timeout: 600
|
||||
vmid: 10000
|
||||
|
||||
- name: Import HDD to Template
|
||||
command:
|
||||
cmd: "qm set 10000 --scsi0 {{ storage_target }}:0,iothread=1,discard=on,import-from=/tmp/debian-13-generic-amd64.qcow2,format=raw"
|
||||
24
cloud.yml
Normal file
24
cloud.yml
Normal file
@@ -0,0 +1,24 @@
|
||||
---
|
||||
- hosts: cloud
|
||||
become: yes
|
||||
vars:
|
||||
traefik_host: "vps02.comprofix.com"
|
||||
|
||||
tasks:
|
||||
- name: Deploy traefik
|
||||
import_tasks: tasks/traefik.yml
|
||||
|
||||
- name: Deploy postgres
|
||||
import_tasks: tasks/postgres.yml
|
||||
|
||||
- name: Deploy Vaultwarden
|
||||
import_tasks: tasks/vaultwarden.yml
|
||||
tags: vaultwarden_install
|
||||
|
||||
- name: Deploy gitea
|
||||
import_tasks: tasks/gitea.yml
|
||||
tags: gitea_install
|
||||
|
||||
- name: Gotify
|
||||
import_tasks: tasks/gotify.yml
|
||||
tags: gotify_install
|
||||
97
docker.yml
Normal file
97
docker.yml
Normal file
@@ -0,0 +1,97 @@
|
||||
---
|
||||
- hosts: docker
|
||||
become: yes
|
||||
vars_files:
|
||||
- vars/gitea-images.yml
|
||||
vars:
|
||||
traefik_host: "traefik.comprofix.xyz"
|
||||
|
||||
pre_tasks:
|
||||
- name: Connect iscsi
|
||||
import_tasks: tasks/iscsi.yml
|
||||
vars:
|
||||
iscsi_targets:
|
||||
- iqn: iqn.2005-10.org.freenas.ctl:iscsi-docker
|
||||
portal: 10.10.10.2
|
||||
mount_point: /data
|
||||
tags: iscsi_connect
|
||||
|
||||
- name: Connect NFS
|
||||
import_tasks: tasks/nfs.yml
|
||||
vars:
|
||||
mounts:
|
||||
- name: Data share
|
||||
path: /mnt/nfs/data
|
||||
src: truenas.comprofix.xyz:/mnt/datapool/docker
|
||||
|
||||
tasks:
|
||||
- name: Deploy traefik website
|
||||
import_tasks: tasks/traefik.yml
|
||||
|
||||
- name: Deploy comprofix.com website
|
||||
import_tasks: tasks/comprofix.com.yml
|
||||
tags: comprofix_install
|
||||
|
||||
- name: Deploy iDrac Fan Controller
|
||||
import_tasks: tasks/idrac.yml
|
||||
tags: idrac_install
|
||||
|
||||
- name: Deploy MariaDB
|
||||
import_tasks: tasks/mariadb.yml
|
||||
tags: mariadb_install
|
||||
|
||||
- name: Deploy InvoiceNinja
|
||||
import_tasks: tasks/invoiceninja.yml
|
||||
tags: invoiceninja_install
|
||||
|
||||
- name: Deploy Homepage
|
||||
import_tasks: tasks/homepage.yml
|
||||
tags: homepage_install
|
||||
|
||||
- name: Deploy speedtest-tracker
|
||||
import_tasks: tasks/speedtest.yml
|
||||
tags: speedtest_install
|
||||
|
||||
- name: Deploy dozzle
|
||||
import_tasks: tasks/dozzle.yml
|
||||
tags: dozzle_install
|
||||
|
||||
- name: Deploy jellyseerr
|
||||
import_tasks: tasks/jellyseerr.yml
|
||||
tags: jellyseerr_install
|
||||
|
||||
- name: Deploy lidarr
|
||||
import_tasks: tasks/lidarr.yml
|
||||
tags: lidarr_install
|
||||
|
||||
- name: Deploy prowlarr
|
||||
import_tasks: tasks/prowlarr.yml
|
||||
tags: prowlarr_install
|
||||
|
||||
- name: Deploy radarr
|
||||
import_tasks: tasks/radarr.yml
|
||||
tags: radarr_install
|
||||
|
||||
- name: Deploy sonarr
|
||||
import_tasks: tasks/sonarr.yml
|
||||
tags: sonarr_install
|
||||
|
||||
- name: Deploy sabnzbd
|
||||
import_tasks: tasks/sabnzbd.yml
|
||||
tags: sabnzbd_install
|
||||
|
||||
- name: Deploy mealie
|
||||
import_tasks: tasks/mealie.yml
|
||||
tags: mealie_install
|
||||
|
||||
- name: Deploy pyKMS
|
||||
import_tasks: tasks/pykms.yml
|
||||
tags: pykms_install
|
||||
|
||||
- name: Deploy mediawiki
|
||||
import_tasks: tasks/mediawiki.yml
|
||||
tags: mediawiki_install
|
||||
|
||||
|
||||
|
||||
tags: dockerserver_install
|
||||
10
frigate.yml
10
frigate.yml
@@ -1,10 +0,0 @@
|
||||
---
|
||||
- hosts: frigate
|
||||
become: yes
|
||||
pre_tasks:
|
||||
- name: Base Install
|
||||
include_tasks: tasks/base.yml
|
||||
roles:
|
||||
- role: docker
|
||||
tags: docker_install
|
||||
tags: frigate_install
|
||||
@@ -1,105 +1,116 @@
|
||||
$ANSIBLE_VAULT;1.1;AES256
|
||||
37623630336330623066643530623265303739643661316133316664303338363230353531666263
|
||||
6162306264303866393030616532663465343931383264360a336166613163386566623339343963
|
||||
65623639326134373462396532323738383664316433333261336563636333353365643763663363
|
||||
6339616662383730370a383736626238643963356666616434323463343639653634323463396339
|
||||
64653432353036326630333362353561616238653531386163363533306139616533616134316565
|
||||
61653164346334346564336431346435303330333835303065363631366363313538616366656363
|
||||
31653062633135613262366436323234393962623766653466383234353065353130393762636263
|
||||
33303739343934383363386161326331336430633434656564306633333337653531356532386163
|
||||
31346265383239303834633961376234343365666262656239323137336561356132323630376361
|
||||
31626132386562353862396233323835313838333363613531656137336538643335396335663731
|
||||
36393534653565393839393033623966626162353865353235613964326536346437306632386365
|
||||
39353139343130346663363632376466393938313438326531353466626637323233313665626438
|
||||
38366134313966303766306265303864643232306439356264663164356432643731373532363265
|
||||
62643039653933333331613031376366636430316436643336623665623663396639626133646138
|
||||
39306561633233343931386231616331323839643530626562316462666230336263323533313837
|
||||
61623035363536353933346431656134333464336535333239653038306331643463643732663439
|
||||
34303030323662666230306334363934613738386138386538343833323964326234616139393838
|
||||
65313633306361383365306232373230386433653233323630383332363134636366366661653030
|
||||
39353232303731393930656432633261373136353336613966633838373937363865313663323237
|
||||
62363639643835303865636632316533336265666138303636623162616464383066336631666361
|
||||
36363264393566383466646332336339306264313738616137633938626366383030656631386236
|
||||
61393664633563363831333332386332636138323466343034363338626236666130383061303662
|
||||
64383561643536653337653738346438396166346634633565646339623361363536656264373035
|
||||
63326536633834646663616263343039346138376166336538643035323034306234376139373033
|
||||
62356337313063306463323463623764306337626230613236373431663738333862373632666332
|
||||
39343262373533303762613136346532663930393562323462383431333163653937386132653562
|
||||
61363134303635626331383961633232323931306263396334396239316361383862353566613134
|
||||
37373766616264353930663763393763353933656666363963313362333234383530636366383737
|
||||
62376566346135326338636436383931633137353530323135343538366566623666633933663433
|
||||
38356531346461313834663364343033323262333864626430653939653563366566636661366263
|
||||
34363333383435383965353434323764393863666135363462323361656137323931363531376434
|
||||
33393938353764343062313234396436653232383033353237646463393536383431626265663265
|
||||
31363662383830633165386661653161646264613032323234313631613635313030383339363334
|
||||
65343736383133333561363334613362343136623737386663316161666363323731393636343039
|
||||
62626662336431303432373866326461656561323961636663376234336638663830316337333432
|
||||
61336330633866346533386661643463623539386361623666623965613062306164393766353237
|
||||
30393966383332323235313239396437623339363736666632316532666437656465623436343439
|
||||
61393635653032633966323465613065343932633231333238386338366161656135656361653962
|
||||
66663334363862376663323066323534323262333531366234663161623863386464343436343431
|
||||
37313361356534373965643630356430626237653834303861653631316330316361343935323838
|
||||
31373436396130326630326533636565396565623664383263383934343062383739323063353966
|
||||
31313733616533626538393938386336353930646662313331343134316161353366623932353739
|
||||
62653139306439663233393963343666346366626331373962386133336339323838396431333063
|
||||
33303563623337383731306234333833323338626361366564653531656133633163323062396465
|
||||
64366339343261303566303335353861613862353264373766336365313864333863316634626538
|
||||
65356566373563643531613664313633616639343234656537636131643034663539316165346137
|
||||
39353331653463646363303038306636383831333931616266613265663930623532373037636261
|
||||
33376531393732613561356662613832396133333566633166313630663664373066646361313138
|
||||
34663235386639313330643764343339326539316237333766366633666436636432373638616266
|
||||
63636165306234653635393936663261383331333361353133383538313461363862313562313935
|
||||
36303462356631316437636636643562333265343765633635623664393965333832613561666566
|
||||
30636231333666323065336335333964366434323631616330383139663065636130613035616530
|
||||
63383937393466326634363138623030333534616464666261656134326439323564356261333638
|
||||
39313935376135356363623066323862663665373136316466396338623363326164346363353631
|
||||
63303462303832333335663364353866353439376432323232613432366530626334623635393937
|
||||
66333262666131633363633432636530303562373935313737343866333364336466306331646664
|
||||
63396166643835313431663530663638616436643337373033626538616265356666646433393036
|
||||
38373532393731393539653036313363363033343837393635316636306662353964333434306630
|
||||
63363435386639316264373632316530636166336563333132616433663164333065613664343966
|
||||
61353161623131363630636264353661346430666634623031333562303630383463333238393638
|
||||
37363562363034316538303631386136373236623731653336393830633536393930333764393665
|
||||
30623731666330623334373136313837323731353738386665653733323466613362356137303365
|
||||
66633161663566653331656239643431356465366635346435323636353064613664643864616631
|
||||
33383765396333366338313030383532343663323463326466646632386461306663666464313063
|
||||
61333936666435323765323361353165326134373165613332613161376264616564313862343262
|
||||
35646664643039373335373134613966353635653361383932343439343230653663616436363639
|
||||
65326665656130323530326463303766613761396263646364363564303935353739336134303732
|
||||
39613639613661393136623035303266653934343163643938313862333538326137646330353832
|
||||
61366537313234386334396362616366616435343165313232383534356461326536333563623362
|
||||
64373166623736663335653062663234663931646432376337356164613935363333353031623938
|
||||
31346332653831383635666463343065376638326535646663393535303638646266363265373835
|
||||
66333161663833396135633436623461353237353533363366656436336563326536666532373862
|
||||
61383030663263666165373764353232613963666231373636313363366366313231346534613632
|
||||
37626630363335386165353766333339363864636437356166363437326233623763326262653663
|
||||
65303766623062633964653662326236643461633364383866313165343462303134393738643433
|
||||
38636465663730663634353633386639633765313833333336346135393861306166336135303535
|
||||
65346434653236396436393736393836366139386338393336376562653536356639653738623965
|
||||
33336438343634666563646131653263616135633035326538616530313864336431316131613438
|
||||
37646666393636303932663536303163396235646536623632326264313864636465363530626235
|
||||
32316330613433366666643665343738616139346434653133646438383663313532383836373730
|
||||
31323533666637323062303561353263653134393736373965333030343566316165623266346132
|
||||
63666236663565666238666330666561636432636162663535633963633264363836303039666135
|
||||
35306561623065633462343335343465636539613631616365396138636437343237373163343861
|
||||
65303465396434646133386162373365303761306238303664316638386538393633616131626538
|
||||
30303736646236366131663662396131396263636335643936363433373761326365616435666662
|
||||
31383265393738383436356334363764613134633138363332313630353031343234633332636263
|
||||
33636535636434386238653433306231326566373663323066353931313530353964386265336539
|
||||
34336466613466386134363230333366616235623264303533326464636163323766356361373134
|
||||
61326137303465356436353738366330363261663533663235626534356463636438626631636161
|
||||
33643332303666313939643936636236383430626337393737323566653235383464616335393135
|
||||
62333931383033343033626663316464313565646330623033656437633533386633666438363737
|
||||
31363565323566613337623131666639306530396165623639366532633063626634623762303338
|
||||
61646337663137626531326330303766663665323430363534316135633334376361313363616632
|
||||
33366163306564356138656236653764353239366437326562306539653563346461316430353063
|
||||
36656537396636363362363631623236393133306164383433353664326536616338663462376266
|
||||
35383766613164353838323332383031333633613830663239666438383833626134393636353339
|
||||
34323233313430393334303139616433336364373762643363313833653161323739333736393262
|
||||
33313635323633643765626366616633386530396232333235383739356535346362303631343235
|
||||
63616134393264343834336130343862353964303762313938666334663663363738643234396430
|
||||
61613832373165616439636133376138626439363266613439313063646331376531323437313065
|
||||
66363839623232626534323236303132663939386238396532363438623861613331643336613731
|
||||
63393434336266343636666335336663313236313234353462623564383861333734366530326438
|
||||
31323665396531333366393864336431656163633636636131343730356163386537363137393833
|
||||
64376336616361653833
|
||||
61356337303265326632383732373461363866656232653431313936346132363664393130323830
|
||||
6362653638386439636436613766346265303962653162310a663564306662643562373234333638
|
||||
37303361613632626639653031333932626332663232633861613761376431373537333036663532
|
||||
6131336336366638370a636262643331666261313934663736396265623063336530346562316436
|
||||
31613130646433613934656462376262316365333761303135303138616265333463373939366135
|
||||
36396266303438396166333631373862663966393339636162633738623131373136613263633738
|
||||
62326264633236336333623663626361343830666361333763633638303832613461316363303762
|
||||
30313337343336366435373666353562303237336235346261343833616365653464663464333530
|
||||
39353464336561623238356336396332383130363333666638343038323830616134613064313765
|
||||
39326439376265353132383161396665656534303862396237303866633165363331353832656435
|
||||
65323232333539633661653763356133373962326534356638363038643338393534646637646535
|
||||
36316534303332363435626331626636306166326166623764336338303262653263316634303662
|
||||
66346137383635613861316331393139386139336630336434386662616239633233626637376631
|
||||
38383530656264616130666138633162656164653666386639333431643936666364613338376139
|
||||
66633734396435386233643266656562376662363763373933383165376230346162643066316430
|
||||
30613530626563643231306565333932353533623937393838353866306164653432356533356331
|
||||
35633636366164326665343730393935346466636165313236643061396534363466663962623561
|
||||
31316230313764343131633862383630373666353032353735663736636261626339623938396531
|
||||
39333263613538336261653439333333386138366233363139346164623431373032353832313739
|
||||
32383834396531393362613335666634323533306461646137306665323366653034346639333635
|
||||
39626237393336346330636162373336383131366266333036353364663831653438653136313534
|
||||
39616666613737373264646330383934393264386230666231636636323264626434303532313661
|
||||
32396432623366346339393730363531653466376136633332616636326461326466303039313736
|
||||
64336165333034333939633836396332363330333232316530393333386161633264646564623831
|
||||
63366665626363336137633362323535656466646536366432613161653330303936616638653862
|
||||
37306436636435363562656539356666303661313364393365313165613339336636636161616231
|
||||
38633261396166643736653262376663313530636130643933343363636135636466366462356332
|
||||
32353139336133663234306339646635326462353462376437663761323864656430663532356330
|
||||
31653038396630336662383566376435333065373562396634313230323339393439393561356239
|
||||
37306531356338343563623539303939323562313035393066316432616434363365303636616438
|
||||
65346439356163343263303331656166313661393337393434643839346133313265383164356138
|
||||
63313334376438623235353430396532616262353134666438663065623564616164363535363663
|
||||
62383039636332653661653961376633646636613565346162323066613337643836666235363166
|
||||
32343738393134303434663164366361333162393030366465323031313664643631323862313566
|
||||
65666333366339636531653061643262393162653364386539626531383166343262393764613138
|
||||
66663337373162636439313333303931323363366438346463663139343437616262346138343036
|
||||
63386233383333356661663166313835326238386331323834373731633337323834323466353730
|
||||
37636235376164366637343964386164346362616666373631666263653861633935366137313933
|
||||
30356335323239323436353265623663383836353766653766323033346139336530353761633061
|
||||
65633662376334656662343135396232323437343031643665333063393062616137633930616263
|
||||
37386531363233663462313162663534653737626335386539386663653334343731623032333135
|
||||
34336436393565646333646536346161626232663066383365303636343062613333643466313133
|
||||
63306563393539313530313937393134653635353264386433393763323434346137666564653632
|
||||
66356561383031643137363037366630346232323139643164393637383832306439366134666431
|
||||
65633366393538376532336461343131613464653134323734613638303864343364386538656566
|
||||
66313731616264313733636134396335653037393132343964633631393735366636303535383965
|
||||
38366337396537623437616437616532623462323133376637646264646637633630633536376234
|
||||
36346465356264333633313335386634356232663436623932306635363939363033346465383934
|
||||
30383635636163376130353830643433636630323264303061616535363963353262386432346531
|
||||
61393337363833336633363564396563666366393832383937633837626137313063626335373731
|
||||
39373339303131333466376631396537646161306537306338313330343331303637383432396332
|
||||
63323361326465326230623032613536396166303632646265383938336462663538386566633261
|
||||
38636330333939643338646635306564313939373266636532363238336531643662616663616633
|
||||
36336262663832383033346563666262336132363261633332333864343265343166363562666464
|
||||
39316439343331303233306334356535333439366661353634373064383638303934343236346261
|
||||
35653131346665643639633130346464343735373764306465653235306465366533333331376464
|
||||
39346430643033653164666266636238656337626437616462346237613936666165373734376637
|
||||
35343266393562626561313832646634343564316161346263306365303635383339393637303934
|
||||
32313261633738393937386166383666333038616232306534643135316465306163666566333664
|
||||
35653738653935656138303233303034383730653765353837656231633865353739383836306461
|
||||
34393432373632656639396531396634653932343165326539326134303438613835303566346530
|
||||
35303161643439366533663537313465333431356637373164313264653034373330393532623964
|
||||
61333738653334313664656330363632303865303139643437373032623766643564383964316537
|
||||
61346362666363626135656266316265363162623463613434616663383234306431616134383532
|
||||
66386230346437383533316336333162346662646431323731306162643531366461356230653463
|
||||
31663434303261663331336639663437303161373533366330306262326366623738306435623538
|
||||
35666630656632306163393232343335626331616633326138663830646631376132613435616136
|
||||
32346562376236333631353232346430323536313430396263623261316536343562376462623233
|
||||
36326164393764343864306563353836363736393564363264386363323531653561343335343766
|
||||
34356137623430643562633835613334616539343634316365643438356537306636386133366436
|
||||
36613235353837646639643862343661646165353732663166346531666638336662373061313634
|
||||
32363530333264393364356531383332356562313236373833613932343435656361653862316162
|
||||
66346464393630393831356237666637393331336339323234363137656561336236363530646162
|
||||
31663664663265363435306465333037353836356137616264663661373537623361373664633931
|
||||
65343863323761366561656137376138303836326231643239363861343439373234323165303562
|
||||
38343233623738626631666462343336363466626164633265633730663336316234396635643865
|
||||
38326563356664663462616239313438656533383330386339323136633935663936323961386565
|
||||
30643164633338353033653635313561306365336433323463626564343765613735373763623463
|
||||
63363530393864336365363432316337343638363931643664333062326365396633386133363331
|
||||
31643030313965333635373639626232393733353633396438626562313936343439383761323364
|
||||
37303366363930333435643365376438613564373834623438663338623633643361383666393634
|
||||
63623837356237373934663232616461386639326364343665626131316263353865613936623961
|
||||
65363039353933353034393239363637623139623932373938306235633863663931383233333833
|
||||
65386262383166353063623862383531613166323537373236626138623438653365303662336638
|
||||
65623565343138646231616562376137316434623235643165646236613735613138333663383234
|
||||
35383062346435623736646132643832313231633131623036636163353134373135653963343839
|
||||
31383839343738346330303332303834336339366435373762376336666533336264386164623137
|
||||
35616635313334356465373534333961353663633432383935306366316564353364646561366237
|
||||
33623535663064643330343834353866336134613061333035326638323762383665396539346439
|
||||
65646338636131373662383334353039643737386531336662396438316264646463356561323165
|
||||
63316261666433353039386665626561633264336331623664393632653866666361323537383061
|
||||
30386238333532333934366238366236356262626539643831653632343536336462383834623266
|
||||
30346465643832343861303538613163313338646431393765323237346262396439373362336139
|
||||
39333638356336356165666130613163656161313530346439343630643834656631343635326166
|
||||
61343237653264396363366562343963663438663966643031366236623535653335366431636564
|
||||
32666432316262636337616336303834663438333361636564613163643437386336326361646435
|
||||
31383931346635386131613732653866346466623538353531373139313363323832646565383039
|
||||
32616161613366376138313333616534656466663139343834323464633138306138386635306634
|
||||
35643839643266373538636136373231666536343562346266303165373834323234636334653037
|
||||
34343336376563396138633863366563383235613932666164373539366562396533646435633562
|
||||
34333564356161373035636131353863633835386161623664613636356533383861356534653265
|
||||
61643432356530303564386434656463376136663138396362373631323030356166356261633362
|
||||
66636362376332373461613261366633636664663566393938383161363831626162666234373438
|
||||
34363131616166386465396637313436373037373033353435383534353637333862623063313735
|
||||
31653031623334396361623339656431363036303465613233653561653761663137613263333431
|
||||
66393165373934626139353539393032613539666662386561383465646162663134336432313834
|
||||
32396230376133613965626236343164333962363936333266653737303262626666383633303161
|
||||
37616162323762646332346330383162666138303763643135313331666538663064393532323633
|
||||
30633237303736393661666164303233363166653063303436306166303761656534383838646133
|
||||
37303333643531346564626562333239613737323661633930653030313164663661626261353135
|
||||
36633333393865643363643763613562363461636638396364383433346434373962303938363739
|
||||
63633162383162656466383431333163616235303164363535383561383934336535393663313439
|
||||
32323061653463343236373638343665316363353238396664643737383138313731666537303664
|
||||
61333239626231613230646531346337663535363565613838353538373532333962666239666662
|
||||
303632303162656261383365376461326466
|
||||
|
||||
@@ -14,3 +14,6 @@ vps01.comprofix.com
|
||||
jellyfin.comprofix.xyz
|
||||
|
||||
|
||||
[internetfacing]
|
||||
vps01.comprofix.com
|
||||
vps02.comprofix.com
|
||||
35
internetfacing.yml
Normal file
35
internetfacing.yml
Normal file
@@ -0,0 +1,35 @@
|
||||
---
|
||||
- name: Install fail2ban on internet facing servers
|
||||
hosts: internetfacing
|
||||
become: true
|
||||
roles:
|
||||
- role: grzegorzfranus.fail2ban
|
||||
vars:
|
||||
fail2ban_ignoreip:
|
||||
- 127.0.0.1/8 # loopback
|
||||
- 10.0.0.0/8 # Private
|
||||
- 172.16.0.0/12 # Private
|
||||
- 192.168.0.0/16 # Private
|
||||
- 169.254.0.0/16 # link-local / APIPA
|
||||
- 100.64.0.0/10 # CGNAT
|
||||
- 203.0.113.0/24 # TEST-NETs
|
||||
- 192.0.2.0/24 # TEST-NETs
|
||||
- 198.51.100.0/24 # TEST-NETs
|
||||
- ::1 # ULA - fc00::/7 # Private
|
||||
- fe80::/10 # Private
|
||||
fail2ban_bantime: "1h"
|
||||
fail2ban_findtime: "30m"
|
||||
fail2ban_maxretry: 3
|
||||
fail2ban_custom_jail_files:
|
||||
- name: sshd-strict # This will create /etc/fail2ban/jail.d/sshd-strict.conf
|
||||
content: |
|
||||
[sshd-strict]
|
||||
enabled = true
|
||||
filter = sshd
|
||||
port = ssh
|
||||
logpath = journal
|
||||
backend = systemd
|
||||
maxretry = 3
|
||||
bantime = 3600
|
||||
findtime = 300
|
||||
|
||||
203
main.yml
203
main.yml
@@ -1,200 +1,7 @@
|
||||
---
|
||||
- hosts: all
|
||||
name: Configure all servers
|
||||
tasks:
|
||||
- name: Gather facts (always, even with tags)
|
||||
ansible.builtin.setup:
|
||||
tags: always
|
||||
- import_playbook: all.yml
|
||||
- import_playbook: internetfacing.yml
|
||||
- import_playbook: cloud.yml
|
||||
- import_playbook: docker.yml
|
||||
- import_playbook: omada.yml
|
||||
|
||||
|
||||
- name: Prepare all servers
|
||||
hosts: all
|
||||
become: true
|
||||
pre_tasks:
|
||||
- name: Create directories
|
||||
file:
|
||||
path: "/data"
|
||||
state: directory
|
||||
|
||||
- name: Setup base system
|
||||
import_tasks: tasks/base.yml
|
||||
|
||||
roles:
|
||||
- role: geerlingguy.docker
|
||||
docker_users:
|
||||
- administrator
|
||||
|
||||
- role: grzegorzfranus.fail2ban
|
||||
vars:
|
||||
fail2ban_ignoreip:
|
||||
- 127.0.0.1/8 # loopback
|
||||
- 10.0.0.0/8 # Private
|
||||
- 172.16.0.0/12 # Private
|
||||
- 192.168.0.0/16 # Private
|
||||
- 169.254.0.0/16 # link-local / APIPA
|
||||
- 100.64.0.0/10 # CGNAT
|
||||
- 203.0.113.0/24 # TEST-NETs
|
||||
- 192.0.2.0/24 # TEST-NETs
|
||||
- 198.51.100.0/24 # TEST-NETs
|
||||
- ::1 # ULA - fc00::/7 # Private
|
||||
- fe80::/10 # Private
|
||||
fail2ban_bantime: "1h"
|
||||
fail2ban_findtime: "30m"
|
||||
fail2ban_maxretry: 3
|
||||
fail2ban_custom_jail_files:
|
||||
- name: sshd-strict # This will create /etc/fail2ban/jail.d/sshd-strict.conf
|
||||
content: |
|
||||
[sshd-strict]
|
||||
enabled = true
|
||||
filter = sshd
|
||||
port = ssh
|
||||
logpath = journal
|
||||
backend = systemd
|
||||
maxretry = 3
|
||||
bantime = 3600
|
||||
findtime = 300
|
||||
tags: base_install
|
||||
|
||||
|
||||
- hosts: cloud
|
||||
become: yes
|
||||
roles:
|
||||
- name: traefik
|
||||
vars:
|
||||
traefik_host: traefik01.comprofix.com
|
||||
tags: traefik_install
|
||||
|
||||
tasks:
|
||||
- name: Deploy Vaultwarden
|
||||
import_tasks: tasks/vaultwarden.yml
|
||||
tags: vaultwarden_install
|
||||
|
||||
- name: Deploy gitea
|
||||
import_tasks: tasks/gitea.yml
|
||||
tags: gitea_install
|
||||
|
||||
- name: Gotify
|
||||
import_tasks: tasks/gotify.yml
|
||||
tags: gotify_install
|
||||
tags: cloud_install
|
||||
|
||||
- hosts: docker
|
||||
become: yes
|
||||
vars_files:
|
||||
- vars/gitea-images.yml
|
||||
|
||||
pre_tasks:
|
||||
- name: Connect iscsi
|
||||
import_tasks: tasks/iscsi.yml
|
||||
tags: iscsi_connect
|
||||
|
||||
roles:
|
||||
- role: nfs
|
||||
mounts:
|
||||
- name: Data share
|
||||
path: /mnt/nfs/data
|
||||
src: truenas.comprofix.xyz:/mnt/datapool/data
|
||||
tags: nfs_install
|
||||
|
||||
- role: traefik
|
||||
vars:
|
||||
traefik_host: traefik02.comprofix.xyz
|
||||
tags: traefik_install
|
||||
|
||||
tasks:
|
||||
- name: Deploy comprofix.com website
|
||||
import_tasks: tasks/comprofix.com.yml
|
||||
tags: comprofix_install
|
||||
|
||||
- name: Deploy iDrac Fan Controller
|
||||
import_tasks: tasks/idrac.yml
|
||||
tags: idrac_install
|
||||
|
||||
- name: Deploy MariaDB
|
||||
import_tasks: tasks/mariadb.yml
|
||||
tags: mariadb_install
|
||||
|
||||
- name: Deploy InvoiceNinja
|
||||
import_tasks: tasks/invoiceninja.yml
|
||||
tags: invoiceninja_install
|
||||
|
||||
- name: Deploy Homepage
|
||||
import_tasks: tasks/homepage.yml
|
||||
tags: homepage_install
|
||||
|
||||
- name: Deploy speedtest-tracker
|
||||
import_tasks: tasks/speedtest.yml
|
||||
tags: speedtest_install
|
||||
|
||||
- name: Deploy dozzle
|
||||
import_tasks: tasks/dozzle.yml
|
||||
tags: dozzle_install
|
||||
|
||||
- name: Deploy jellyseerr
|
||||
import_tasks: tasks/jellyseerr.yml
|
||||
tags: jellyseerr_install
|
||||
|
||||
- name: Deploy lidarr
|
||||
import_tasks: tasks/lidarr.yml
|
||||
tags: lidarr_install
|
||||
|
||||
- name: Deploy prowlarr
|
||||
import_tasks: tasks/prowlarr.yml
|
||||
tags: prowlarr_install
|
||||
|
||||
- name: Deploy radarr
|
||||
import_tasks: tasks/radarr.yml
|
||||
tags: radarr_install
|
||||
|
||||
- name: Deploy sonarr
|
||||
import_tasks: tasks/sonarr.yml
|
||||
tags: sonarr_install
|
||||
|
||||
- name: Deploy sabnzbd
|
||||
import_tasks: tasks/sabnzbd.yml
|
||||
tags: sabnzbd_install
|
||||
|
||||
- name: Deploy mealie
|
||||
import_tasks: tasks/mealie.yml
|
||||
tags: mealie_install
|
||||
|
||||
- name: Deploy pyKMS
|
||||
import_tasks: tasks/pykms.yml
|
||||
tags: pykms_install
|
||||
|
||||
- name: Deploy mediawiki
|
||||
import_tasks: tasks/mediawiki.yml
|
||||
tags: mediawiki_install
|
||||
|
||||
- name: Deploy traggo
|
||||
import_tasks: tasks/traggo.yml
|
||||
tags: traggo_install
|
||||
|
||||
- name: Deploy gitea-runner-homelab
|
||||
import_tasks: tasks/gitea-runner-homelab.yml
|
||||
tags: gitea-runner-homelab_install
|
||||
|
||||
# - name: Deploy mssql
|
||||
# import_tasks: tasks/mssql.yml
|
||||
# tags: mssql_install
|
||||
|
||||
tags: dockerserver_install
|
||||
|
||||
- hosts: omada
|
||||
become: yes
|
||||
roles:
|
||||
- role: nfs
|
||||
mounts:
|
||||
- name: Data share
|
||||
path: /data
|
||||
src: truenas.comprofix.xyz:/mnt/datapool/docker
|
||||
tags: nfs_install
|
||||
tasks:
|
||||
- name: Deploy Dozzle Agent
|
||||
import_tasks: tasks/dozzle-agent.yml
|
||||
tags: dozzle-agent_install
|
||||
|
||||
- name: Deploy Omada
|
||||
import_tasks: tasks/omada.yml
|
||||
tags: omada_install
|
||||
tags: omada_lxc_install
|
||||
|
||||
8
omada.yml
Normal file
8
omada.yml
Normal file
@@ -0,0 +1,8 @@
|
||||
---
|
||||
- name: Setup the omada
|
||||
hosts: omada
|
||||
become: true
|
||||
tasks:
|
||||
- name: Deploy omada controller
|
||||
import_tasks: tasks/omada.yml
|
||||
|
||||
@@ -1,26 +0,0 @@
|
||||
---
|
||||
install_packages: # Add addition packages here
|
||||
- rsyslog
|
||||
- htop
|
||||
- vim-nox
|
||||
- git
|
||||
- zsh
|
||||
- curl
|
||||
- wget
|
||||
- apt-transport-https
|
||||
- ca-certificates
|
||||
- gnupg2
|
||||
- python3
|
||||
- python3-pip
|
||||
- nfs-common
|
||||
- cron
|
||||
- jq
|
||||
- sudo
|
||||
- logwatch
|
||||
- sendemail
|
||||
- libio-socket-ssl-perl
|
||||
- libnet-ssleay-perl
|
||||
- iptables-persistent
|
||||
- rclone
|
||||
- parted
|
||||
- open-iscsi
|
||||
@@ -1,26 +0,0 @@
|
||||
---
|
||||
- name: Replace sources.list entries for Trixie
|
||||
lineinfile:
|
||||
path: /etc/apt/sources.list
|
||||
regexp: "^deb "
|
||||
line: "deb https://deb.debian.org/debian trixie main"
|
||||
become: yes
|
||||
|
||||
- name: Update cache for Trixie
|
||||
apt:
|
||||
update_cache: yes
|
||||
force_apt_get: yes
|
||||
|
||||
- name: Dist-upgrade to Trixie
|
||||
apt:
|
||||
upgrade: dist
|
||||
force_apt_get: yes
|
||||
register: trixie_upgrade
|
||||
|
||||
- name: Reboot after Trixie upgrade
|
||||
reboot:
|
||||
reboot_timeout: 600
|
||||
test_command: whoami
|
||||
when:
|
||||
- ansible_virtualization_type != "lxc"
|
||||
- trixie_upgrade.changed
|
||||
@@ -1,17 +0,0 @@
|
||||
---
|
||||
# Gather initial facts
|
||||
- name: Gather facts
|
||||
ansible.builtin.setup:
|
||||
|
||||
# Update system and install packages
|
||||
- import_tasks: system_update.yml
|
||||
|
||||
# Upgrade Bookworm -> Trixie if applicable
|
||||
- import_tasks: bookworm_to_trixie.yml
|
||||
when: ansible_distribution_release == "bookworm"
|
||||
|
||||
# Move to Trixie sources.list.d layout
|
||||
- import_tasks: sources_list.yml
|
||||
|
||||
# Remove EXTERNALLY-MANAGED files
|
||||
- import_tasks: python_cleanup.yml
|
||||
@@ -1,17 +0,0 @@
|
||||
---
|
||||
- name: Find all EXTERNALLY-MANAGED files under /usr/lib/python*
|
||||
find:
|
||||
paths: /usr/lib
|
||||
patterns: "EXTERNALLY-MANAGED"
|
||||
file_type: file
|
||||
recurse: yes
|
||||
register: externally_managed_files
|
||||
become: yes
|
||||
|
||||
- name: Delete EXTERNALLY-MANAGED files
|
||||
file:
|
||||
path: "{{ item.path }}"
|
||||
state: absent
|
||||
loop: "{{ externally_managed_files.files }}"
|
||||
when: externally_managed_files.matched > 0
|
||||
become: yes
|
||||
@@ -1,42 +0,0 @@
|
||||
---
|
||||
- name: Remove old sources.list and sources.list.d
|
||||
file:
|
||||
path: "{{ item }}"
|
||||
state: absent
|
||||
loop:
|
||||
- /etc/apt/sources.list
|
||||
- /etc/apt/sources.list.d
|
||||
become: yes
|
||||
|
||||
- name: Ensure sources.list.d directory exists
|
||||
file:
|
||||
path: /etc/apt/sources.list.d
|
||||
state: directory
|
||||
mode: 0755
|
||||
become: yes
|
||||
|
||||
- name: Create Trixie sources.list.d
|
||||
copy:
|
||||
dest: /etc/apt/sources.list.d/debian.sources
|
||||
content: |
|
||||
Types: deb deb-src
|
||||
URIs: https://deb.debian.org/debian
|
||||
Suites: trixie trixie-updates trixie-backports
|
||||
Components: main
|
||||
Signed-By: /usr/share/keyrings/debian-archive-keyring.gpg
|
||||
|
||||
Types: deb deb-src
|
||||
URIs: https://deb.debian.org/debian-security
|
||||
Suites: trixie-security
|
||||
Components: main
|
||||
Signed-By: /usr/share/keyrings/debian-archive-keyring.gpg
|
||||
owner: root
|
||||
group: root
|
||||
mode: 0644
|
||||
become: yes
|
||||
|
||||
- name: Update APT cache after sources.list.d
|
||||
apt:
|
||||
update_cache: yes
|
||||
force_apt_get: yes
|
||||
become: yes
|
||||
@@ -1,48 +0,0 @@
|
||||
---
|
||||
- name: Ensure debian-archive-keyring is installed
|
||||
apt:
|
||||
name: debian-archive-keyring
|
||||
state: present
|
||||
update_cache: yes
|
||||
become: yes
|
||||
|
||||
- name: Update APT cache
|
||||
apt:
|
||||
update_cache: yes
|
||||
force_apt_get: yes
|
||||
when: ansible_distribution in ['Debian', 'Ubuntu']
|
||||
|
||||
- name: Upgrade all packages to latest
|
||||
apt:
|
||||
name: "*"
|
||||
state: latest
|
||||
force_apt_get: yes
|
||||
when: ansible_distribution in ['Debian', 'Ubuntu']
|
||||
register: upgrade_result
|
||||
|
||||
- name: Dist-upgrade packages
|
||||
apt:
|
||||
upgrade: dist
|
||||
force_apt_get: yes
|
||||
when: ansible_distribution in ['Debian', 'Ubuntu']
|
||||
register: dist_upgrade_result
|
||||
|
||||
- name: Install required packages
|
||||
apt:
|
||||
name: "{{ install_packages }}"
|
||||
state: present
|
||||
become: yes
|
||||
when: ansible_distribution in ['Debian', 'Ubuntu']
|
||||
register: install_result
|
||||
|
||||
- name: Reboot if required after updates
|
||||
reboot:
|
||||
reboot_timeout: 600
|
||||
test_command: whoami
|
||||
when:
|
||||
- upgrade_result.changed or dist_upgrade_result.changed or install_result.changed
|
||||
- ansible_virtualization_type != "lxc"
|
||||
become: yes
|
||||
|
||||
- name: Gather facts after reboot
|
||||
setup:
|
||||
@@ -1,2 +0,0 @@
|
||||
---
|
||||
# defaults file for docker
|
||||
@@ -1,52 +0,0 @@
|
||||
galaxy_info:
|
||||
author: Matthew McKinnon
|
||||
description: Mounting NFS filesystem
|
||||
company: support@comprofix.com
|
||||
|
||||
# If the issue tracker for your role is not on github, uncomment the
|
||||
# next line and provide a value
|
||||
# issue_tracker_url: http://example.com/issue/tracker
|
||||
|
||||
# Choose a valid license ID from https://spdx.org - some suggested licenses:
|
||||
# - BSD-3-Clause (default)
|
||||
# - MIT
|
||||
# - GPL-2.0-or-later
|
||||
# - GPL-3.0-only
|
||||
# - Apache-2.0
|
||||
# - CC-BY-4.0
|
||||
license: license (GPL-2.0-or-later, MIT, etc)
|
||||
|
||||
min_ansible_version: 2.1
|
||||
|
||||
# If this a Container Enabled role, provide the minimum Ansible Container version.
|
||||
# min_ansible_container_version:
|
||||
|
||||
#
|
||||
# Provide a list of supported platforms, and for each platform a list of versions.
|
||||
# If you don't wish to enumerate all versions for a particular platform, use 'all'.
|
||||
# To view available platforms and versions (or releases), visit:
|
||||
# https://galaxy.ansible.com/api/v1/platforms/
|
||||
#
|
||||
# platforms:
|
||||
# - name: Fedora
|
||||
# versions:
|
||||
# - all
|
||||
# - 25
|
||||
# - name: SomePlatform
|
||||
# versions:
|
||||
# - all
|
||||
# - 1.0
|
||||
# - 7
|
||||
# - 99.99
|
||||
|
||||
galaxy_tags: []
|
||||
# List tags for your role here, one per line. A tag is a keyword that describes
|
||||
# and categorizes the role. Users find roles by searching for tags. Be sure to
|
||||
# remove the '[]' above, if you add tags to this list.
|
||||
#
|
||||
# NOTE: A tag is limited to a single word comprised of alphanumeric characters.
|
||||
# Maximum 20 tags per role.
|
||||
|
||||
dependencies: []
|
||||
# List your role dependencies here, one per line. Be sure to remove the '[]' above,
|
||||
# if you add dependencies to this list.
|
||||
@@ -1,49 +0,0 @@
|
||||
---
|
||||
- name: Add Docker apt key.
|
||||
ansible.builtin.get_url:
|
||||
url: "{{ docker_apt_gpg_key }}"
|
||||
dest: /etc/apt/trusted.gpg.d/docker.asc
|
||||
mode: "0644"
|
||||
force: false
|
||||
checksum: "{{ docker_apt_gpg_key_checksum | default(omit) }}"
|
||||
ignore_errors: true
|
||||
|
||||
- name: Add Docker repository.
|
||||
apt_repository:
|
||||
repo: "{{ docker_apt_repository }}"
|
||||
state: present
|
||||
filename: "{{ docker_apt_filename }}"
|
||||
update_cache: true
|
||||
|
||||
- name: Install Docker packages.
|
||||
package:
|
||||
name: "{{ docker_packages }}"
|
||||
state: "present"
|
||||
|
||||
- name: Install Docker Module for Python
|
||||
pip:
|
||||
name:
|
||||
- PyYAML==5.3.1
|
||||
- docker
|
||||
- docker-compose
|
||||
- pymysql
|
||||
- passlib
|
||||
state: "present"
|
||||
|
||||
- name: Ensure docker users are added to the docker group.
|
||||
user:
|
||||
name: "{{ item }}"
|
||||
groups: docker
|
||||
append: true
|
||||
with_items: "{{ docker_users }}"
|
||||
|
||||
- name: Reset ssh connection to apply user changes.
|
||||
meta: reset_connection
|
||||
|
||||
- name: Setup cron job for backup
|
||||
cron:
|
||||
name: Docker Prune
|
||||
weekday: 0
|
||||
minute: 0
|
||||
hour: 5
|
||||
job: "docker system prune -af && docker image prune -af && docker system prune -af --volumes"
|
||||
@@ -1,51 +0,0 @@
|
||||
$ANSIBLE_VAULT;1.1;AES256
|
||||
66633332373830623139666134663234303066626136383861353962336436383634323261393138
|
||||
6333336361366430366262383061323836653539643732350a313837653930383637393962363130
|
||||
39663033393836656538333163303266663061353364316137663035383765363232653735396237
|
||||
6333653739316163330a626533613330336539626664313733656261336135396466356663313832
|
||||
39326131336261313162666162316562626434623366663530656130623737643765383362393261
|
||||
64616465323438656665323864383431373133346537663930353163643330613763623230316162
|
||||
34636236316263313362616230363161366633636330653937356333633933356539663130333139
|
||||
39383864313434646233343762633130396536386231643539323661623731626637383262353763
|
||||
65323865656330633830646563613666333932323131643434623532623366353530633538393362
|
||||
35383161643363623031386364376435363166306565386530333338363031376134363938666238
|
||||
65313266366535666563666265386565323532386538366332623334356165636364373462633539
|
||||
62326664663834643361343933323630366465636537343265626130633735356263393838396639
|
||||
30666632663034363934363966386130643161313035623862623636343864633665653166396363
|
||||
66326134323638316539333235346261656263633737333038363233613531666139373236666636
|
||||
37636638313635336531623835313630316336386464336231626338333033343437316361386432
|
||||
64363438616634323566336165303066353139396234343932623332653037303533613537306234
|
||||
38346165623861396434333130306239663462663365313365643636616434366463343565643339
|
||||
32383538663865353765313532666464613735363764336334323262633133653131383766353934
|
||||
64326261623833653731356366323138336330396131623836353536306332643531393837613432
|
||||
63366232653561613862316535306666623631633665613838343965326431353761386161616266
|
||||
38323064636632646132393666313339623237383437386635316663383734626466376466623438
|
||||
30303661633932303864326462396364653634306566353234346131663062386337336536366564
|
||||
30303231643461366334306661626336363737376534663330633634353435396431353563303633
|
||||
34346361383635353131353063663836343337643961623934663934613161636466613539303836
|
||||
31363739653739623038303334343364643762643162613866306439653933393866336265363231
|
||||
37623865316139363139396339363835393461356432626134363433353161626137366136363966
|
||||
36663832346338393766363234646336663832656438636536333930356532626638366631336330
|
||||
64313933366166653836313033343637636138653566383264636363626364353766616464386133
|
||||
66636565663331613036323461616531663834303161306531306539656131343164643261636566
|
||||
32613738653564383331323266366339663137656138653862633636333465656232613737353961
|
||||
35306135323132303933383463373262633263613663656162333233393634386364366138393766
|
||||
65313061326132376335656661616238663464303265383362313237323430316337373732313737
|
||||
65343531333163333735396132303162353630356535636138633562626234623362636136393862
|
||||
33643966616465393535383865393762303066353461323133633239383963353162616434333039
|
||||
30386630343834663632303638306664303832373937663465353233386266633963316331633037
|
||||
33353435333939356339386235336231343337623230313130333138666231336136623434333437
|
||||
64333162323237323535643336373939623939303331306433626433396533623339303365393164
|
||||
66353235653062363164343534303134336330653131333635663834386665613433363464353230
|
||||
61386564373861323461643439376165636231646632616333333763313262646232626437383736
|
||||
66316139636532616631396334613966636161653363363333633261616334383034656139393664
|
||||
33633635356562353238313136376639373962643764653338636336666138323337383933656132
|
||||
66363663306336663535333737613838653735626535386431356262623462356433336535613437
|
||||
35356530616365343639656630643063393263626335383461396262396430383839303433376365
|
||||
34653364663939336361373834386431393163656664633536616530643830633239346261396164
|
||||
30326138386565646636636539653761366466663461386366386430396331313434616130633364
|
||||
35386638336536666333633263323030643766323665303763356466393430333336316534306136
|
||||
61396263323636323835623935336135323363633837363364623664646335623163666131666532
|
||||
64346164316133393866316561346137383665363532393064663436333637393737656538313031
|
||||
65653531383830393733663465313437646335316537386530313631636634663564303165366532
|
||||
6432376363336661313535353436316231666462346364373337
|
||||
@@ -1,21 +0,0 @@
|
||||
---
|
||||
# vars file for docker
|
||||
docker_edition: 'ce'
|
||||
docker_packages:
|
||||
- "docker-{{ docker_edition }}"
|
||||
- "docker-{{ docker_edition }}-cli"
|
||||
- "docker-{{ docker_edition }}-rootless-extras"
|
||||
- "containerd.io"
|
||||
- "docker"
|
||||
- "docker-compose-plugin"
|
||||
# Docker repo URL.
|
||||
docker_url: https://download.docker.com/linux
|
||||
docker_apt_repository: "deb [arch=amd64 signed-by=/etc/apt/trusted.gpg.d/docker.asc] {{docker_url}}/{{ ansible_distribution | lower}} {{ansible_distribution_release}} stable"
|
||||
docker_apt_ignore_key_error: true
|
||||
docker_apt_gpg_key: "{{ docker_url }}/{{ ansible_distribution | lower }}/gpg"
|
||||
docker_apt_gpg_key_checksum: "sha256:1500c1f56fa9e26b9b8f42452a553675796ade0807cdce11975eb98170b3a570"
|
||||
docker_apt_filename: "docker"
|
||||
# A list of users who will be added to the docker group.
|
||||
docker_users: [administrator] # CHANGE_ME!!! - Add addition users.
|
||||
# Docker daemon options as a dict
|
||||
docker_daemon_options: {}
|
||||
@@ -1,8 +0,0 @@
|
||||
---
|
||||
# defaults file for roles/nfs-mount
|
||||
|
||||
# List of NFS shares
|
||||
nfs_share_mounts: []
|
||||
|
||||
# Default NFS4 mount options
|
||||
nfs_mount_opts: "rw,sync,hard"
|
||||
@@ -1,52 +0,0 @@
|
||||
galaxy_info:
|
||||
author: Matthew McKinnon
|
||||
description: Mounting NFS filesystem
|
||||
company: support@comprofix.com
|
||||
|
||||
# If the issue tracker for your role is not on github, uncomment the
|
||||
# next line and provide a value
|
||||
# issue_tracker_url: http://example.com/issue/tracker
|
||||
|
||||
# Choose a valid license ID from https://spdx.org - some suggested licenses:
|
||||
# - BSD-3-Clause (default)
|
||||
# - MIT
|
||||
# - GPL-2.0-or-later
|
||||
# - GPL-3.0-only
|
||||
# - Apache-2.0
|
||||
# - CC-BY-4.0
|
||||
license: license (GPL-2.0-or-later, MIT, etc)
|
||||
|
||||
min_ansible_version: 2.1
|
||||
|
||||
# If this a Container Enabled role, provide the minimum Ansible Container version.
|
||||
# min_ansible_container_version:
|
||||
|
||||
#
|
||||
# Provide a list of supported platforms, and for each platform a list of versions.
|
||||
# If you don't wish to enumerate all versions for a particular platform, use 'all'.
|
||||
# To view available platforms and versions (or releases), visit:
|
||||
# https://galaxy.ansible.com/api/v1/platforms/
|
||||
#
|
||||
# platforms:
|
||||
# - name: Fedora
|
||||
# versions:
|
||||
# - all
|
||||
# - 25
|
||||
# - name: SomePlatform
|
||||
# versions:
|
||||
# - all
|
||||
# - 1.0
|
||||
# - 7
|
||||
# - 99.99
|
||||
|
||||
galaxy_tags: []
|
||||
# List tags for your role here, one per line. A tag is a keyword that describes
|
||||
# and categorizes the role. Users find roles by searching for tags. Be sure to
|
||||
# remove the '[]' above, if you add tags to this list.
|
||||
#
|
||||
# NOTE: A tag is limited to a single word comprised of alphanumeric characters.
|
||||
# Maximum 20 tags per role.
|
||||
|
||||
dependencies: []
|
||||
# List your role dependencies here, one per line. Be sure to remove the '[]' above,
|
||||
# if you add dependencies to this list.
|
||||
@@ -1,2 +0,0 @@
|
||||
---
|
||||
# defaults file for common
|
||||
@@ -1,52 +0,0 @@
|
||||
galaxy_info:
|
||||
author: Matthew McKinnon
|
||||
description: Traefik Proxy
|
||||
company: support@comprofix.com
|
||||
|
||||
# If the issue tracker for your role is not on github, uncomment the
|
||||
# next line and provide a value
|
||||
# issue_tracker_url: http://example.com/issue/tracker
|
||||
|
||||
# Choose a valid license ID from https://spdx.org - some suggested licenses:
|
||||
# - BSD-3-Clause (default)
|
||||
# - MIT
|
||||
# - GPL-2.0-or-later
|
||||
# - GPL-3.0-only
|
||||
# - Apache-2.0
|
||||
# - CC-BY-4.0
|
||||
license: license (GPL-2.0-or-later, MIT, etc)
|
||||
|
||||
min_ansible_version: 2.1
|
||||
|
||||
# If this a Container Enabled role, provide the minimum Ansible Container version.
|
||||
# min_ansible_container_version:
|
||||
|
||||
#
|
||||
# Provide a list of supported platforms, and for each platform a list of versions.
|
||||
# If you don't wish to enumerate all versions for a particular platform, use 'all'.
|
||||
# To view available platforms and versions (or releases), visit:
|
||||
# https://galaxy.ansible.com/api/v1/platforms/
|
||||
#
|
||||
# platforms:
|
||||
# - name: Fedora
|
||||
# versions:
|
||||
# - all
|
||||
# - 25
|
||||
# - name: SomePlatform
|
||||
# versions:
|
||||
# - all
|
||||
# - 1.0
|
||||
# - 7
|
||||
# - 99.99
|
||||
|
||||
galaxy_tags: []
|
||||
# List tags for your role here, one per line. A tag is a keyword that describes
|
||||
# and categorizes the role. Users find roles by searching for tags. Be sure to
|
||||
# remove the '[]' above, if you add tags to this list.
|
||||
#
|
||||
# NOTE: A tag is limited to a single word comprised of alphanumeric characters.
|
||||
# Maximum 20 tags per role.
|
||||
|
||||
dependencies: []
|
||||
# List your role dependencies here, one per line. Be sure to remove the '[]' above,
|
||||
# if you add dependencies to this list.
|
||||
@@ -1,18 +0,0 @@
|
||||
$ANSIBLE_VAULT;1.1;AES256
|
||||
33613965373066613539323138336234303066356362393063343234653436393361663464353266
|
||||
3438373135383330313563306362353061343531336231320a333263656535336265373431663637
|
||||
39386136303432393335636662626466343639393966623234376366623466623237356464643131
|
||||
3036363264383535360a303030386464353630306161613239636534313163353563323763663763
|
||||
33363362313130633430373966653530373562613737343366373136646565623831633839656432
|
||||
33386563373864326433663130613664376536353337313465326266633265316438613631633061
|
||||
30363833613032376536346133313566666163303562626366353861626336633530343130373362
|
||||
38643730303530386139376661383662653834383734396633613134353561633538366365623835
|
||||
64356530373064396563643763653735313862643335373363386437666138623861653362343930
|
||||
64346562313533643230373831663036303835343035353036623965636565653331646331303361
|
||||
30613732313134326339633862333532366163346261313836366362313266303734316431336561
|
||||
37663463646162363031363662346431386566656331313235343235663732636236666237663265
|
||||
33336233623636613232333263656266393465333333333330373935346237613337313664346139
|
||||
66653236633030383835326433633737363931356139313331323731343332663937616235346533
|
||||
65636331386631303432373831393037333339316639623561313136643139306263303364383535
|
||||
61633330306630643139616231663134383932306437613138326366386565613030323539306462
|
||||
6439
|
||||
@@ -1,5 +0,0 @@
|
||||
---
|
||||
CF_API_EMAIL: CF_EMAIL
|
||||
CF_DNS_API_TOKEN: "CF_API_TOKEN"
|
||||
traefik_api_user: "admin"
|
||||
traefik_api_password: "password"
|
||||
@@ -1,2 +0,0 @@
|
||||
#!/bin/bash
|
||||
curl -H "Content-Type: application/json" -d '{"text": "Cloud-init provisioning has been completed on '"$(hostname)"'!"}' "{{ TEAMS }}"
|
||||
@@ -1,214 +1,214 @@
|
||||
$ANSIBLE_VAULT;1.1;AES256
|
||||
33656232353663376136656237323861386264656230366637393763383262353734303562616237
|
||||
3564656335663830313838623264353661303930623131630a636337313932666563653130303130
|
||||
33356365316337393935353234643432356633653734393031323834633863363539383363366461
|
||||
6666633038343233320a613437323032376134313837376239363063663032336332396666663830
|
||||
38343339396233313031386131383466303933366163396566346334313831303062363866393131
|
||||
65353233346266386434643665663930373730303566613536376461396338323066623138363632
|
||||
35396666653961616439656563383562643738373938303964643936613864613831656436356364
|
||||
61343639363630376661383861373835383133323236353333636233306637363462386564353033
|
||||
64393834353139633262396434376666653934646433393233376166336164333534666537333166
|
||||
65313139346464656564356135346262643032303561386332363930326332376532616165396165
|
||||
61353466613562633632616435343137333963393938613366616232323535333539353763313361
|
||||
35646537376533393036326237623665663437313264653033353432663131376536623338663032
|
||||
31323761666563656463663137353762663335393261353336643135356134326363643866363436
|
||||
65663739316137363333383665623266323633633133623335633335633362633235613838313462
|
||||
32623561376466393866373966333663663830353139336135363761383433376638666465623165
|
||||
62343965336664393465353633646135613562316664316631373231626562396236616336633530
|
||||
33396364393466353134386164633436316366366430313236656666663561616566343761366531
|
||||
38323737373030666231313061626162396666346436326134316565636462393565353833366531
|
||||
38316534653036643133636463613563653438373631333666636265316536376134313134313037
|
||||
39623733353737303832656164663236633361346137653638326562323837656131373237653038
|
||||
37626164303862623364316662363030353536613639396638326565666332393933656566643336
|
||||
33383663323466643263623131663530626163343861616138656663626135313562393536326565
|
||||
66333763313030303166336461316338353233626632353965303631373962353332396534306461
|
||||
34326363303162333135663834613638333531346334343635306438376139643039663537633235
|
||||
35393861343336366362666364363037373063666436623236346538373664626433303166616362
|
||||
36396538343236656431316536643739396639393663333762376239633535643138386666333335
|
||||
61353332313663313864653739636638613031336439396430306633366636643635326633373139
|
||||
39653962626638666535373962333565623361303062356531646335336431663062343831386362
|
||||
37393030333635316134393634323464623935313836306536653664343866313333666134316237
|
||||
62333562313165656634363065643864356137643439313163616437616436336363646263643164
|
||||
39316262323862616132366635333438646633666361323361326664333363626461363438323135
|
||||
37323136383735656334323762636132323732616637383232343638386232343062666438313136
|
||||
34363535303061363264343061633132363335336162656139616263653064306536636366393864
|
||||
63336135323162306138616361663232373533306634333831396531363133643838363533383766
|
||||
35376237333934373939353662663234353334633266653235373864623337333661666239636439
|
||||
64363062366139616534303738613666636332633361376537333134343536623839366364626531
|
||||
62393733646639316533363537636161376163633232633436366465623861333663353563363838
|
||||
65333037306235326534643536393437623432393862303133316333623836366337613365363032
|
||||
63376539353836306130373938616230646638306531643433326265356131346665336333663633
|
||||
37656434633933336433323962323561323539653330346231373965653030623066306630323036
|
||||
62316431666461343836623839633934323235613436653934356261623566643766346665633066
|
||||
65316332393961363439303264306162336236663565386630383039643437646133303239646135
|
||||
35356366373030626537313530336531363561643066303232613330656564363335363735363866
|
||||
32386165306334623237326464326165356537313364383566373361333535396663626362346465
|
||||
35343438323766323437393732666630623262306566326566613938663966306137376237333932
|
||||
35346432396165616437346664353235653965326562653561626334306465393565613137633334
|
||||
64363264363563313932333936613337346161643135646638346664343336653337313764396434
|
||||
35383536353032646239303338393833653563316432393661313436666161373236326231616632
|
||||
66313934376361653962653036323837393864653539383332393735663035316538623135336464
|
||||
66313864323462633338346166643533633832353862353431376133323130633034376534616235
|
||||
65343434373539613233393335386262303731323662323934653864613530396333393730343836
|
||||
62316138363530303664306633666438316331313935313433373238303364613964396166623265
|
||||
32646639623663323762346130613863356330353661336463333634373962653132356261383834
|
||||
64336231333163343538383232343130646233333332303765653564326639616130346666626334
|
||||
63363635613965393930613736356263633661326163313839306165663431336332623531383939
|
||||
62356230613831353535363064326562623065653663643864323336336437393237633835623235
|
||||
36366230316234346430323162346433336133353730653564366131323962393463333830303761
|
||||
38333961616537323563306262366463336162633032636435343637383930663739656466333135
|
||||
36653765613134646663376663353437303839323738363639636263633532333938613461363466
|
||||
33323631333137633364646638656435343633346465623862333635323332336630643738633464
|
||||
34313038366665653262386132333038663134306561363762333864613832386631643037343838
|
||||
39313863613636343432656561626331343763386561656366353164373164623963356332363234
|
||||
36353063313931643033386131343734343239646162393165666162646561333636376337663233
|
||||
62376435646562346332363533363165326261613835623061323833643134363435616530613062
|
||||
62663630386661373961663031373866316230363639333265346264333565613064643966373135
|
||||
33626466616263623239343765386265376464343964626434336133653837333835643932386534
|
||||
66333831666238643137643639373865383231383933656364636133616232323866316538343261
|
||||
35656236373236646138383238353339353936643531353237383361323665636564366163366637
|
||||
33323963316530346162373030336366626230323137613662396462343562303834343563363833
|
||||
35643362306432646335616236633431646331636261323636643739303836396166343832623231
|
||||
64633938386563396363613737383937616539616139376233336631643236656638353263373732
|
||||
65656663633961383763363737316262643133633063326634313633626166653836363930646662
|
||||
39303134373532363965396439613864393162373337636338396465643030323332636333333732
|
||||
37386435633134653564643566356163316134613861373637306232306532343863643933316430
|
||||
32636463346234326432386333636137346331623131613261393038356563333135653365376333
|
||||
35353231376237343232666638323938393936663833393736316433326434646131353964353938
|
||||
39346536323933303237346263646263303233373038613234393636313261373939636566636433
|
||||
65613465623261396639343235646266336237623531306238326265393335393363396565623165
|
||||
31303637613466643366366132636130643663393965306162346139626438393033633662383533
|
||||
64343136303936363238343161346632343131643738326434363834643037383565383537373534
|
||||
37626631333763376130383164326332303836313332626264313033313930656634626632376437
|
||||
35656264656138323331643961626264323462306562323638346164363239616330333166356137
|
||||
65636533633731653435353864343162636530346539306161353834336136313861646564646434
|
||||
66646265636537376261643935626266346334643063663839346234396661323834623665393561
|
||||
66313533653532663266326532623636316265613130316463336231343831336333376631653233
|
||||
35623562303835383664633662633633613564306661346234303234663136653934366565336235
|
||||
30303131623931333739306431376665613664613736326532313238633662643936323362366632
|
||||
39313033653566653137303262663230343432653038376265633339613739363232316564356235
|
||||
64373633663461613134646433646633393634353337653431646663323734353033346662346431
|
||||
34633635343539353733383237333639333138353236613763346234393633323837656237383361
|
||||
37643637376264656437376636313034386333306230643036333632636663356363653765313331
|
||||
62356461623861623137653530393361636262633561626566316161353665333634316262626165
|
||||
32346636646534363737643337363535323530366430373366336563356362366661303330636463
|
||||
37643964616538343638303833646265623263653336373237343533373236326136633461346631
|
||||
62326334643461356436653535366237653531373239616338393935353166656664393432313735
|
||||
34653031353730636466323966363139633833393066303531313934366263313831346534386530
|
||||
65616161623134626230393231313866616133613338616335333763653436333366363438353139
|
||||
63363430626230343638333866653165646638616435383038653936373436623566303666626461
|
||||
63333730663937346166363136353466373832303939373139393035393230383937393363646365
|
||||
35303432393739383034316237653033626265643338376639336364626431636333316136666531
|
||||
34346566326139316365393561636165396361626637323335636165656161363461366632326330
|
||||
31616535626335663339373034303064623035613131333562643934393665336537646535613732
|
||||
33643733366463666464633564326461653237316436643831396163306633333334313263333333
|
||||
66653434386265326563633765653534346138396433336232363133656632343164373638653065
|
||||
61653737376134653630306139366530313566666133643634626631353463653834616239636662
|
||||
36373365343530393635623366633162653362326237643236323862326132363236303837613837
|
||||
39643135613263613532366537396337323533313538326664363039663638323564303764306337
|
||||
66336166386638336338376534346338303832643134366662626466363535313530333430313162
|
||||
33333961353437373732653431333430336632363033343661646361393962303636643764343330
|
||||
39643061306533653564646232336639633935303366613435623030383437623165316433633335
|
||||
35663337623938396561616266383634376663633565343763626131303430313339313236396362
|
||||
39363831646435343338383530663064386262333030383364376330616362633333363532346262
|
||||
31663135373464363238373231326163353834306233376436663663306666346437666162323835
|
||||
38333564343663626365646231346338363261623664656232323732313034626436336161383830
|
||||
38616132616165346366396566653664303631386133313032323431343530386135313933653432
|
||||
65346436376232633639316338623434353639373163643939386166343437366637383262626139
|
||||
37333031646264333139336664383636643663643630613761326661313935333361333131353630
|
||||
31396337626565663538396439303332636231363266383037646562636163393761613332303036
|
||||
35656236373839616663376231323930316636363133626639623538343136656561643063306539
|
||||
30353961363234643134306633343930653431613034373464346139303232653337323864303166
|
||||
61346364393765633431393037623138623038393236666334356430373830643965346661663537
|
||||
30666133633864373034346639343036663630346261373361313039643263626164663635376661
|
||||
66653633646339363263636334346131623662356335383466366164326435303135303336323732
|
||||
33333831346633633563663065386661643035363336323262306131333262633063376530643738
|
||||
33313939616334656464643238663962633635323636316361653363346231366131356661666162
|
||||
33363836366666353735663336643836656663336639306262383765313435626633616263353132
|
||||
35363166326165343539646336623933666636333236633863353266386162313134396135396538
|
||||
31346337396633613930376166393064373161373432656136303633306566306433343630663631
|
||||
33356533643163313039336565333633303937363634616535623434663066353566383735343637
|
||||
64666166616462653337303731326366353261313661663762343563666565326566663065616339
|
||||
30316235333738373630653635353462636137346538303462643632653664306635626566376464
|
||||
65666266333937616461616233646130326231386662393166623463636139653839613030613964
|
||||
35396535636637366232383764353835616233316538326237303862393463643934383439366562
|
||||
64613033613265393930643464373939346533353331366337323131643932366161366636666630
|
||||
34393863363337636561333931306362663936353565376635663262656133626530653233363635
|
||||
65396462666431386333613761653738346438656330326464666430303162303263643632326561
|
||||
33363135633961356137663631366665346533633562663664303837373730346236376132323735
|
||||
39326137313437376434636436626335333134666163376231623130306634636330366236386139
|
||||
32333563616339616536363430663362633537353661653136326131343437343738393330333966
|
||||
63383265623961633864376465633232663536373962386631623161663063346463623339613534
|
||||
30626165303866346437383364633066326330323165646561623538616235383234343234346334
|
||||
31623961623762373966396235373161643738623631386462643764393366613937323738646235
|
||||
34316638306663656137353366393261323132613839633733313336346633303939653231666664
|
||||
62353232633131303631393035346239363936323633316366346631323362306238363365386134
|
||||
63333837383734386130653061393966616463643234656566393238383035663765373837613561
|
||||
61303035653762623536343630616465663166383266363865353137633034626131643863663261
|
||||
61376464386434626139316532313133386132396338376232626466356532303566646138376662
|
||||
34646462373634626333346166316232316663346330613237343439323564306266313632633264
|
||||
39646436613033313865643038353933383431363461313537646463633963396237356336333931
|
||||
33336364363836343863356565636436346236393435306638323531336263303562633932373230
|
||||
36653337343930396163643663363333373563356261633833633137386134326138353536656134
|
||||
64306530613632653535613535653266333639363334343339303436393163666431366164343834
|
||||
65363031333533613930306433646333353232613336633230373563656361356538653366333130
|
||||
61636665663234373430313965336334326366353163626265353063323735613766366662326634
|
||||
37343763316431323733333834643466653638663464636232333664666337323739396539386366
|
||||
65376566356233363064313138313035613765613035353838353265386264653136363235323031
|
||||
34643830633361613265613732333766376363633165333866383637306438316430346333313430
|
||||
37313230393139623633346666326566616465663638326164343764393666616166393363393365
|
||||
36306636356333643333623334613961626132363135636630663537386230626532313262666565
|
||||
64623135393063323239653930386463383065656262303365663536376136653139336331633332
|
||||
64303663656136313430643231306638616361326461616666623234636366363436373464366366
|
||||
36323733613730313233623466353765353962363934363230353231373265363435363135613338
|
||||
64306236396561643064616631373366316162386538393734336263623033396564323665376465
|
||||
63373462333865646265666161393263633632343537626438383833376164383635393566336539
|
||||
61363666306466616334363561633561363435386537613233383965353330306337396663663631
|
||||
33333335396432343365353430613662386330666464636266333731653661363833386234383763
|
||||
36343330653533636361386536643339336630373338653333643736613062366439613031623238
|
||||
32383463306165343538373765643939623361326263323838333333376462303762633134653635
|
||||
37356236346462316466366461333730626333633539393035313264353162333931323365333962
|
||||
39303261343566633735386665396134646537333866613532653065383463303062353930386430
|
||||
65336666333561373466313066313135333732646262613063333866356336396130633330336434
|
||||
32656365643464376431363161633732633064396336643134323338623731346163633039626665
|
||||
35333062626233653733336563323864333666396361613564306534666633353466613434356632
|
||||
39376233646134363263643164393766363730656161623666313862373566646462396365626234
|
||||
35366132363264326463303932316561643939623732333939633466383234633763393435396135
|
||||
34363734343466393930653436323861396334663966333533626165316562653730363262313065
|
||||
38626666643639323462376639303862336164333065336534373337313133346563626635313534
|
||||
33646662303831633130613938393231613062643165323464346462643764386461373637323636
|
||||
62663437313135383339653065626465616564303539663363373964366334393339396361626635
|
||||
64343430383661356237646630363362623033326133393236336136373165366666653762626637
|
||||
65356630303135396263626139363331313038363064326436346436353765356431383165313337
|
||||
34626633353166626663333431653436386337656365336133623662623433393364626536643438
|
||||
33353666643934633066323565363963626138393066656632333466636632356438346165303462
|
||||
30383032366539313039633335323438616234613233303435373833353864336138663165326331
|
||||
61376330313132326530613634316333633339353066626238343361333666616231643031343566
|
||||
63323232643238393463373264643934353630666165636339303933393264383832663764623437
|
||||
36373262313934346562633333363861646539343666353532343938363366396464623436636434
|
||||
38393439393937346263303430366263633566333336373265393837363639666464653538343930
|
||||
61306163633339613838356661373131376165323664363366633663666633373134383162313732
|
||||
62383433383362346135633435313563653466383864323236653164303262366363356238333363
|
||||
65333936633365663134383364643962313739313735383665323762313131616161393266343336
|
||||
64623930633932623464306438383039343133356235336132633936633562643165343532333564
|
||||
66633339643837366339316631346561616331353961613333363037396264663866633831383932
|
||||
66633863313535663138303538653131666665343038396430386435656666393966633436633866
|
||||
63366366653364356161616134613130303438613065643731313538393862363436393831323335
|
||||
33613063663162393338313136306262396634653535613030663136326232316364376333313962
|
||||
66343737646161643062353336373835613662636133363437656239623561346433363965663136
|
||||
34653837373535663564303932336439643162643135653936316361363566373265616462643763
|
||||
32643131663263353365316438626663623736353863373236646530353263623432393664363139
|
||||
31663331336233396639636133626333306134343232633866383030383462366533633461306131
|
||||
39393430346539323861393863306539613566666361376231613566346231326164376432303536
|
||||
38393930383335653133326236656630643233396465643233336632666130623034316332633930
|
||||
30396336643231653264333166653636663630643933343534663833646532323463363165326265
|
||||
66333837643664333230646236333339663732313532353838643638373237653636303433336139
|
||||
37353334393363363936383533623962303539343834316561643230393737343837646264623538
|
||||
64323364386635646531633938373161373832363439376530323861373437396365656437353264
|
||||
65643635656337336337623762373935613036356231356463613833393435326364373063353236
|
||||
38663137626331643462313733353563623237373664333234353832653030626435303535346263
|
||||
61373765376239333232616431643031333638626532326565613339346362626361353263306535
|
||||
37613764623537393730666364336264623434323739336235626237396137653637373839323930
|
||||
61386530656339363064323762376536333230313666356639363462633562646231656533646661
|
||||
62303265373962643838303236616538653731613962393136303861366637643535396666663336
|
||||
3864
|
||||
62333263323564336664383061303137643138343137633638653964323339663833396335633061
|
||||
3631626266393238656561656436373835363931363132340a306238383061373237636261326332
|
||||
38633134623234623334353063663730326566373161613466316537393865643334656561656661
|
||||
3662393034326534330a643564323334613665613063313439326666393131663161376366373334
|
||||
39366466666230346533363534303265383135373662383839323230623232643634393136326665
|
||||
63663832643032393861313835336432643965363530303731393266633932613963366561633932
|
||||
34353133656562363866623534326638653535663931313261363238323137386231616365653635
|
||||
66303435383832373265316262313162353736383334316338663934623231386330626564613962
|
||||
32396363643465346362613537363737333730333666636632616539376339373139353735336236
|
||||
61313939346235343339616435633363393131623038386430356537353831626534356130636332
|
||||
34313333353930636138663563343338336336366161323266333533316664333039373861663230
|
||||
36323733363938653438616433626437663431633933623632383333626336326662373331613865
|
||||
61373630633734633030336537646165366233353730613035353062626634666635316566303332
|
||||
39343834323662383831646664623363353837373433633763383764636261363666666535303530
|
||||
64343236346132633032613865383736346164326238306638343263653865366233313663663839
|
||||
34383532343138633066313566346631343032363363396163663235333637623966373337336235
|
||||
66303832323333373161346563343562316164376564613237636133626230616564333538363737
|
||||
35626234303565343861363939636537316638643866333033303863333538333930346337383766
|
||||
35303162626135326434373833663738653833633362663538313062303433383633633531303962
|
||||
30326438656332353863326631623861336231643733376665646133353765306136353136346231
|
||||
61383335376236336538643637336233343537646538366531623030343134633935333435323164
|
||||
33303933316237343565393531383263366137313962363833623133643566306631366166663534
|
||||
39653935306265333433356534656561326262363431396139393430623266383339303561303536
|
||||
61363165393766313964376336353566316635363834616139666533326663653832313138336235
|
||||
37313432383266303636643433656538613331656433633031323364346665396635393133343534
|
||||
31363636636435363733303731336234346133353733343237323862393234383162643631623730
|
||||
66613061336463643962633763393539356239346432333363616635643435356439613565633061
|
||||
33383736336436376535646665366431343034353663656138663937303634303564323538363231
|
||||
37376134393731663137623131646236393838363064336536333766613831663761626238653064
|
||||
64613836303165353438343861663734313435343431353833613834393530383265366434623162
|
||||
63633436653336633366376534616131636530376165346663303865326666323738393634333837
|
||||
36636264376162383638323333363837366666393932616136326339393739386565396333393537
|
||||
65633139376534633337383963313938373534303863303261633136376265303363663237353263
|
||||
36643230636334636162616664656430343431616131336237326534333861376262333237396236
|
||||
38356434306136383261633837393864633931613262363065383035303661653662323030363536
|
||||
63316261326230386135363362653239333966323438353762666130393265313936383638343066
|
||||
37353661346134666662356336323362396662383332386633306431636663333261306164623930
|
||||
33303230313961636162356437633135333633376435386462353030613532633066653730383262
|
||||
62656135613435363862393833393239333762353731373039303436363735643862653337313364
|
||||
39353364323138343163616336613337343466376565303936346163653065326564333761353435
|
||||
36623138643863623464336432393930373064313964663934663238366563366630326265313239
|
||||
31346333306438333935366330336337616637373239663139343838343263343366626664643933
|
||||
65653332316164306466393935363331313761396132373539396430626263653464323236363061
|
||||
63613866616462336632313035396438326337303966363831633839346365613061363364326632
|
||||
64653335633638353933653764313138363831346235393837343632336533383031623330333863
|
||||
33623634636332306233323561323132623631376564346430303861343463353439383433623635
|
||||
39353735613336343436316333666237633066313235383163323637353164326161643937396134
|
||||
36396437393862623431636538363364333763616138653330333363363130646130316634316439
|
||||
62303031663437633335623232613838343636343230353466663165303636386266353530323063
|
||||
37333533633734303036643435386236646535343431316535336366333030313336303433346134
|
||||
66326439326334666534353137653231366631333437623638633232333761336333323130326264
|
||||
35346564316530373338313334386264643236363066633533663334373861663631346266613333
|
||||
33363162313832626336633966656136636131363265623232633935396433356337616634666161
|
||||
64386439316534616234326231613431363164643362636262623732613562346237656134663464
|
||||
35366533633933613133616166396139623263316164323161323666316134303339346535346365
|
||||
37336535383265313737306438386630643838303331346238616364626634376463353634373937
|
||||
64613734363661306235323438373065626331363539646338376434363632373061383762313861
|
||||
34316337393161313666363936376137366632366639373462643330363238336539313832323035
|
||||
32306534363866643464386230633865613662613538326233366637393737333961663563653234
|
||||
65376364393939333163386134393833643938383866343365316161316362363531646433623138
|
||||
32383137313232663831373439366337396430663938313334396336663139646336383262393963
|
||||
64373965343465393363363962666662313161323336653139643964313831303764313032336138
|
||||
63346534393736663639383666653066353031366566363035393834376538326365616435326137
|
||||
36313534333330366230623436343133356431336462643665356162356161633063396435613664
|
||||
62353061653862343535656331396366313333373862613535333862646536386166323831623334
|
||||
37366466333138393037613135313062633466386237656232393139633936346635663437346237
|
||||
34623839343939363561363663356336313231386463656130393163333237633236363931613137
|
||||
39643235383561386338356532366236333861656331616338303265393561646136333439373066
|
||||
35393137353766613763383963623833383132356266633231643663323733386236346135613635
|
||||
37313662363839316336343762613534336432396534303530343930643039653165613437366366
|
||||
35366565323063373062396531343430623831333135373264313935333661653535353339333563
|
||||
30383933666534646435316262613966633565636232616136313938363633633233323865323639
|
||||
30346438393832643431636664383931386163356234343835333130303262653361646432653038
|
||||
30303865616366663566303235383565653731336363336632666536313136353130346431373337
|
||||
31356339393461366661346530323366396130373932316639346239363263663032633065313338
|
||||
33376335363238316265306637623030366565363763393166613464386136663063643165326362
|
||||
62343232386235626565366664316565333236383065303036623335643334353366353236656337
|
||||
62623263666433353934393334386639326438313866613334353339663737393830663737653833
|
||||
33666432333635613634363464376362366566376338616233396364646434303163373532376535
|
||||
64633565303038316631343765363632383431336637306563313230623661663231623535333963
|
||||
35313335393337313530313262396464353432623731643639633731356630313938313261646236
|
||||
37303535626332623333346265633933653835396130376133326465643037626364356138393238
|
||||
64353366656462383064636563346332646632383161306238373737323837343535613236343065
|
||||
32666638313664376261326531323737363739616337646433643831356561633564653330663138
|
||||
38333938333639663438626136633361306330346361666236623430316433643032376430303233
|
||||
33346537353532373435656261356263316338373736323166306263306266653337333939653235
|
||||
33643763323030396532626266396638613739363862373266633333616566346239356434633763
|
||||
39623835346663323933313564613065636338366664363035313061643264346438326564353939
|
||||
64653233663333396161643631666437613735356536363737353636626663626435646138306432
|
||||
66303361336139626232623132666239333065613038333532323234646466376134306238393065
|
||||
36313630353639616431613466623133356339336436353862663631323061343331656435666233
|
||||
34613731656539326364323837313537356137373165643964663963616430303162613862356563
|
||||
34316436646664306436626462633963316630643162356363636232353038646138653434333034
|
||||
34623430343365363365306262333766303433633163336264323235333234336531666361383938
|
||||
38663962363538313530616561636563303666323130633437363833373436633834646333336239
|
||||
32386439333564333061393934613064666362373134326530646131626539633736646137663434
|
||||
33626130323939303863323339383330643535366531313230326666643737666333366663333438
|
||||
63306361663037616630356365613137666564393265626662663837363739343030326465373039
|
||||
63393333363066303464343435356130303434623031313661623365613130636261303636356631
|
||||
64643130393962626366643366316464643136633037626361303732303736613932646632313431
|
||||
64356563626262396365613037383465353863326364656637663536306262396330383666383334
|
||||
62643632353235336366343163353732303464393236613664393838356432306664636264343564
|
||||
64636237373061333339653430383034613363306566643466313133363864376137383738326265
|
||||
63353137383266613337363835303636343663316632613733376435396339623765613935643735
|
||||
37373465376339356338353561393430663366353766653136623861626538376435383630386635
|
||||
33356563396332316363353031613664656366303431626637333437666262303265333436356161
|
||||
62346537383535633838366439623666366564303738373066313663326239336266393331373535
|
||||
37643465376462636539323366336338303364303735303234383339653066386633356564636336
|
||||
33656338613464356561666562343266383963303031306430396438636261646564613234353336
|
||||
35313732373866363665666462313163343164666263333431613963366361383037633165343535
|
||||
35376561616331303364613166366161383936336464366635613334306238333763653563323131
|
||||
65373862393834383936626461396634653838633862626239343239346237373035373639336533
|
||||
62346262306232386334323162323930396562333034343062346165313063383065393033663365
|
||||
38326232656463633761653563386334316464303565623562653032613532383565663130646132
|
||||
64646464633665613532613736653139306336636635643566643430373732346664303231656465
|
||||
65353831396138363163383237313939353436623231376337313236353565616239326165356163
|
||||
32313135333339343062376565376464363431643263316664373436656234326235393166643931
|
||||
33626335383934393834333762653061326165373535353764643137633465646530653764303432
|
||||
64386439663130396639383030363238373462386265356631363862646230366132626132663131
|
||||
31653539306236376666633136363164356232636637333632653430343931313532636335303662
|
||||
35323636303963343330626132303665636334353264373035626635366235393739623836626134
|
||||
64323532313633353139336662643336613166333334383261656133626436646163336663393436
|
||||
66613436393531386133343063663332636166633534313439383865366132353334633237393931
|
||||
31306131356432633738666330626339383730663535626532396563356133353465353132633933
|
||||
33663136626362306235313636386534623063656432303332313163353635343839306632366163
|
||||
36363133666333613430316333376166363832303566643631316237383866396531643132333439
|
||||
32623438633862663430396531383634643631366337643130653961613231323030623132623039
|
||||
32303938636264343134656464323938303565626134343632633862356632646639633065323638
|
||||
63393862303465633035366439323439396163326563383736383833306335313834376166353835
|
||||
38626533343431663137343363316238356431323964643738326236383233633136343765386235
|
||||
65313464333264616465393334613634323761613634323739326636323634396361633761383031
|
||||
33663330333365313262643039633238633664356132653865336136323234616262343364383361
|
||||
61653365636462633031626164373061376439626665383530666632366365623630623235343730
|
||||
38666139386566323235356361626231313261306337663039343564393733633061633034303531
|
||||
33376565626634396333393265346464323330613364323732616366666261326234336239316364
|
||||
39353862663935363361313731383861313637663533343463306262613962646466383562653463
|
||||
62313263396236656262323861626263363865666438633338313732653463396665396535343235
|
||||
31383563663831663339383532353032353136666366393462643864653638616539356432353933
|
||||
33663639346433626265313334633137633339393061623539656361663739646630386466623632
|
||||
61316333343030366262316666393138346533383763336165663163363530393464363531646132
|
||||
38393061623064353839353165613035333335333835666666323236623931306137666263656464
|
||||
38363337633534303262353033366332353065613333313362646137356532383637336636393039
|
||||
32333462616134393137333661383564623336366336633839663264626238366530353965373433
|
||||
34633661343962316466313962393533363062666339656235353531656263396265336630623634
|
||||
64303561636239343039353062353763323337373564373761623866363833373331376233363538
|
||||
30666532313532643931353464633536626534303331393237346635653332386233306161666138
|
||||
37366338643839663961666132383537643736333833626364666264376431386137346137663339
|
||||
66363930306666303330653266343364356463353537383033303836613133656464323165626232
|
||||
33366239623736336361373635383466613031376138306530316632663165333836343337663562
|
||||
37353761626665333132653734363034616236353065613863343365663532626632323131323536
|
||||
64623639633236383437323532333832653462366662303931626331386534346338643936343834
|
||||
63346531306333306466333733396164343238386261396261316236366433626533373066383130
|
||||
32663132666565656537383134393165376636313663646465346662653537323432343261363962
|
||||
36396130373636303566373334366364306266663963336663343038366236373732303039336136
|
||||
63653035373233346139363935643061346464396465653461393232343966623038363639633761
|
||||
65633665363638613636326434316239653533383338393664326532346637373431316237646365
|
||||
63363365323066303366646634313138643061656361666131613662343662383030346363366465
|
||||
35313264373536303832623038323032373936656365376261636537353965316664346234313531
|
||||
36366361646461636261643163633762666664313032613530393063343262666663613464313964
|
||||
39343664356232623935663439303733653434633466353335636336393833353436323136336563
|
||||
30363936623032666364313537313330663366633031633531323235333663313136323633393731
|
||||
36626534643765353961356361336464646534393031346137383530343063393035383630306462
|
||||
33333837623133393762363735306431666537616535393630383430393339333432316136313337
|
||||
39646562393464316334313965313964616435346465653563376139336238386265613931396362
|
||||
32343232316634343331383733623738323962646566326230363466363461623266623135613865
|
||||
61366630643962613031636361393837613636356533666139623261396337376435353661303934
|
||||
64323163663135313830376662656136333032646332303737343861383431646363386661393664
|
||||
38393436363931666634333166616431623437303331393263633139353836353031613936323763
|
||||
30633266663764653862663231383536636463653464333263373665646165376365363834633063
|
||||
64333662616237353062376133323164393338303461336435376635613063313034353862396231
|
||||
64346335346430666464653933363564313964666465376564383530366130383039346361313662
|
||||
34303063613961353866336632613364623737646635373062346266323630656666346166666639
|
||||
34343466376232353534353465656334303364323061343138626638316334336637653936306438
|
||||
33303937383431376562373339656364633233386432373039326639353861336338343561643166
|
||||
65626334363739366634396363383061646638346138653132623364383764383262616635336161
|
||||
36356337343366343366653037656466653063646361383438373063653739626435393835656336
|
||||
34643665323632383562643638376538643439613430333436336561643738613563653634376135
|
||||
30616537303333653535306234633166363864343165643038376264643431613532646566366433
|
||||
36386164326463333437313337613236653831323032616262336464383332323863323563626135
|
||||
31663264303362303165326466346266653232623166313937323134663936363933636230626166
|
||||
35306533323537313637393438383031623935663861306535393132323762613063326232366534
|
||||
39313837343537616436643732383762303261616630653732343230316336633663303736333664
|
||||
38353939653139303633626437306361613863613534363864303838346164656561373262323764
|
||||
37313035386137363864663537616530363135366461393732316564656165326339663165613466
|
||||
33356631373365313138353634323461666532663736363238626564306663333166396366616332
|
||||
30363765303435633462656532663539636132353062633961376339303464623236633930376439
|
||||
63633034303230343061373865336262666234353265616565363638613661343331356163313765
|
||||
36623730353936316436333334353564653366386533356566396134343364393539313235306335
|
||||
35343464313730633662326261393330326333356565653138336230323066663465613236346530
|
||||
66323033336363303363643338346663383036386130643730363963303663646233373636386636
|
||||
62363234353838613865313334313632626133323934633734316633643938316532626161396531
|
||||
61386661623735396565663936613030623036306565373862353536323231363433303865366365
|
||||
32626630643033633364653330313134353938353261366237326138326631373738343537643461
|
||||
65623135633332393939383530633738666233323830663366373965396535366330333630386235
|
||||
32343730363431343161376566646237363238646463376562323939316334306463393834613562
|
||||
63323136396431393537633632396466336433306231306336663734633464376435366430363563
|
||||
63313632363438646664343935393037636565646437316366653535653139373435623331376338
|
||||
37613863316561373663343937386535303962666537373462363039333130653437373434363432
|
||||
64323936313666353937613931366537616134613864666334633261616130656636303561666232
|
||||
36666163303137346438323862353761633032356539613035613434393330316335396231376432
|
||||
39623330383338373938663130363830346232316430376137636231323539626666343730663732
|
||||
61353165373636363338346161356662393665323666396333356238373762393766626161316636
|
||||
31633235333132323766353937653733633731636635616138383761666130373465633232653831
|
||||
30303031656434346630623232386530343837353163666631363133373239316561306262383164
|
||||
61656437626261663936666336346234303161363361393736353736393339313534343161363864
|
||||
65333861666662343263313330366137303636663262663633633636343830373863636638383131
|
||||
62336265303262613063633963646562373738376337656133616435333136333137396561313538
|
||||
62316137373935653230643731663161303137353264326562653731656361353333323236343261
|
||||
31646237396237393261313437643335616534316630623831633162383830636631623763353165
|
||||
31646363323464663636656433613563386434656563396264616133363761656163383162353162
|
||||
32323837646632646530346434633234636539303934376537643730643134663337356237303738
|
||||
36316265643462393137663661346338353238323538666238643862346437313465326630643363
|
||||
3062
|
||||
|
||||
@@ -5,7 +5,6 @@
|
||||
image: amir20/dozzle:v8.14.4
|
||||
restart_policy: unless-stopped
|
||||
command: agent
|
||||
recreate: true
|
||||
ports:
|
||||
- 7007:7007
|
||||
volumes:
|
||||
38
tasks/OLDmssql.yml
Normal file
38
tasks/OLDmssql.yml
Normal file
@@ -0,0 +1,38 @@
|
||||
---
|
||||
- name: Create directories
|
||||
file:
|
||||
path: "{{ item }}"
|
||||
state: directory
|
||||
with_items:
|
||||
- "/data/mssql"
|
||||
- "/data/mssql/data"
|
||||
- "/data/mssql/log"
|
||||
- "/data/mssql/secrets"
|
||||
|
||||
- name: Pull docker image
|
||||
community.docker.docker_image:
|
||||
name: mcr.microsoft.com/mssql/server
|
||||
tag: 2025-latest@sha256:2c80e548ef65fb65a8ca23c3a74ed60e0964ea709f46d07c97ccaf7c437e2cc6
|
||||
source: pull
|
||||
register: docker_image
|
||||
|
||||
- name: Create the mssql container
|
||||
docker_container:
|
||||
name: mssql
|
||||
image: "{{ docker_image.image.RepoTags[0] }}"
|
||||
user: root
|
||||
restart_policy: unless-stopped
|
||||
ports:
|
||||
- 1433:1433
|
||||
env:
|
||||
PUID: "0"
|
||||
PGID: "0"
|
||||
ACCEPT_EULA: "Y"
|
||||
MSSQL_PID: "Express"
|
||||
SA_PASSWORD: "{{ SA_PASSWORD }}"
|
||||
volumes:
|
||||
- "/data/mssql/data:/var/opt/mssql/data"
|
||||
- "/data/mssql/log:/var/opt/mssql/log"
|
||||
- "/data/mssql/secrets:/var/opt/mssql/secrets"
|
||||
when: docker_image.changed
|
||||
register: container_mssql
|
||||
@@ -4,15 +4,14 @@
|
||||
path: "{{ item }}"
|
||||
state: directory
|
||||
with_items:
|
||||
- "{{ data_folder }}/osticket"
|
||||
- "{{ data_folder }}/osticket/config"
|
||||
- "/data/osticket"
|
||||
- "/data/osticket/config"
|
||||
|
||||
- name: Create the osticket container
|
||||
docker_container:
|
||||
name: osticket
|
||||
image: devinsolutions/osticket:1.17.5
|
||||
restart_policy: unless-stopped
|
||||
recreate: true
|
||||
networks:
|
||||
- name: proxy
|
||||
env:
|
||||
@@ -3,7 +3,6 @@
|
||||
name: comprofix.com
|
||||
image: git.comprofix.com/mmckinnon/comprofix.com:latest
|
||||
restart_policy: unless-stopped
|
||||
recreate: true
|
||||
networks:
|
||||
- name: proxy
|
||||
labels:
|
||||
|
||||
@@ -1,29 +1,29 @@
|
||||
---
|
||||
- name: Create directories
|
||||
file:
|
||||
path: "{{ item }}"
|
||||
state: directory
|
||||
with_items:
|
||||
- "{{ data_folder }}/dozzle"
|
||||
- "{{ data_folder }}/dozzle/config"
|
||||
|
||||
- name: Create the dozzle container
|
||||
- name: Pull docker image
|
||||
community.docker.docker_image:
|
||||
name: amir20/dozzle
|
||||
tag: v8.14.4
|
||||
source: pull
|
||||
register: docker_image
|
||||
|
||||
- name: Create/Update the dozzle container
|
||||
docker_container:
|
||||
name: dozzle
|
||||
image: amir20/dozzle:v8.14.4
|
||||
image: "{{ docker_image.image.RepoTags[0] }}"
|
||||
restart_policy: unless-stopped
|
||||
recreate: true
|
||||
networks:
|
||||
- name: proxy
|
||||
volumes:
|
||||
- /var/run/docker.sock:/var/run/docker.sock
|
||||
env:
|
||||
DOZZLE_LEVEL: "trace"
|
||||
DOZZLE_REMOTE_AGENT: "omada-lxc.comprofix.xyz:7007"
|
||||
# env:
|
||||
# DOZZLE_LEVEL: "trace"
|
||||
# DOZZLE_REMOTE_AGENT: "omada-lxc.comprofix.xyz:7007"
|
||||
labels:
|
||||
traefik.enable: "true"
|
||||
traefik.http.routers.dozzle.rule: "Host(`dozzle.comprofix.xyz`)"
|
||||
traefik.http.routers.dozzle.rule: "Host(`devdozzle.comprofix.xyz`)"
|
||||
traefik.http.routers.dozzle.entrypoints: "https"
|
||||
traefik.http.routers.dozzle.tls: "true"
|
||||
traefik.http.services.dozzle.loadbalancer.server.port: "8080"
|
||||
traefik.http.services.dozzle.loadbalancer.server.scheme: "http"
|
||||
when: docker_image.changed
|
||||
register: container_dozzle
|
||||
|
||||
@@ -1,42 +0,0 @@
|
||||
- name: Create directories
|
||||
file:
|
||||
path: "{{ item }}"
|
||||
state: directory
|
||||
with_items:
|
||||
- "{{ data_folder }}/gitea-runner"
|
||||
- "{{ data_folder }}/gitea-runner/config"
|
||||
|
||||
- name: Check that config.yaml exists
|
||||
stat:
|
||||
path: "{{ data_folder }}/gitea-runner/config/config.yaml"
|
||||
register: configyaml
|
||||
|
||||
- name: Create config.yaml file
|
||||
file:
|
||||
path: "{{ data_folder }}/gitea-runner/config/config.yaml"
|
||||
state: touch
|
||||
mode: "0600"
|
||||
access_time: preserve
|
||||
modification_time: preserve
|
||||
when: configyaml.stat.exists == False
|
||||
|
||||
- name: Create the gitea-runner container
|
||||
docker_container:
|
||||
name: gitea-runner
|
||||
image: gitea/act_runner:0.2.13
|
||||
restart_policy: unless-stopped
|
||||
recreate: true
|
||||
# dns_servers:a
|
||||
# - 10.10.10.1
|
||||
# - 127.0.0.11
|
||||
volumes:
|
||||
- "/etc/resolv.conf:/etc/resolv.conf:ro"
|
||||
- /var/run/docker.sock:/var/run/docker.sock
|
||||
- "{{ data_folder }}/gitea-runner/config/config.yaml:/config.yaml"
|
||||
- "/etc/hosts:/etc/hosts:ro"
|
||||
env:
|
||||
CONFIG_FILE: "/config.yaml"
|
||||
GITEA_INSTANCE_URL: "https://git.comprofix.com"
|
||||
GITEA_RUNNER_REGISTRATION_TOKEN: "{{ GITEA_RUNNER_TOKEN }}"
|
||||
GITEA_RUNNER_NAME: "homelab-runner"
|
||||
GITEA_RUNNER_LABELS: "alpine-latest:docker://{{ alpine_latest_image }},ubuntu-latest:docker://{{ ubuntu_latest_image }},homelab-latest:docker://{{ debian_latest_image }}"
|
||||
@@ -4,14 +4,21 @@
|
||||
path: "{{ item }}"
|
||||
state: directory
|
||||
with_items:
|
||||
- "{{ data_folder }}/gitea"
|
||||
- "{{ data_folder }}/gitea/data"
|
||||
- "{{ data_folder }}/gitea/db"
|
||||
- "/data/gitea"
|
||||
- "/data/gitea/data"
|
||||
- "/data/gitea/db"
|
||||
|
||||
- name: Pull docker image
|
||||
community.docker.docker_image:
|
||||
name: mysql
|
||||
tag: 9
|
||||
source: pull
|
||||
register: docker_image
|
||||
|
||||
- name: Create MySQL DB for Gitea
|
||||
docker_container:
|
||||
name: gitea_db
|
||||
image: mysql:9
|
||||
image: "{{ docker_image.image.RepoTags[0] }}"
|
||||
restart_policy: unless-stopped
|
||||
networks:
|
||||
- name: proxy
|
||||
@@ -21,17 +28,22 @@
|
||||
MYSQL_PASSWORD: "{{ gitea_db_password }}"
|
||||
MYSQL_DATABASE: gitea
|
||||
volumes:
|
||||
- "{{ data_folder }}/gitea/db:/var/lib/mysql"
|
||||
- "/data/gitea/db:/var/lib/mysql"
|
||||
when: docker_image.changed
|
||||
register: container_mysql
|
||||
|
||||
- name: Pull docker image
|
||||
community.docker.docker_image:
|
||||
name: gitea/gitea
|
||||
tag: 1.24
|
||||
source: pull
|
||||
register: docker_image
|
||||
|
||||
- name: Create the Gitea container
|
||||
docker_container:
|
||||
name: gitea
|
||||
image: gitea/gitea:1.24
|
||||
image: "{{ docker_image.image.RepoTags[0] }}"
|
||||
restart_policy: unless-stopped
|
||||
recreate: true
|
||||
# dns_servers:
|
||||
# - 10.10.10.1
|
||||
# - 127.0.0.11
|
||||
networks:
|
||||
- name: proxy
|
||||
ports:
|
||||
@@ -41,7 +53,7 @@
|
||||
PGID: "1001"
|
||||
TZ: "Australia/Brisbane"
|
||||
volumes:
|
||||
- "{{ data_folder }}/gitea/data:/data"
|
||||
- "/data/gitea/data:/data"
|
||||
- "/etc/timezone:/etc/timezone:ro"
|
||||
- "/etc/localtime:/etc/localtime:ro"
|
||||
labels:
|
||||
@@ -51,6 +63,7 @@
|
||||
traefik.http.routers.gitea.tls: "true"
|
||||
traefik.http.routers.gitea.service: "gitea"
|
||||
traefik.http.services.gitea.loadbalancer.server.port: "3000"
|
||||
when: docker_image.changed
|
||||
register: container_gitea
|
||||
|
||||
- name: Create directories
|
||||
@@ -58,64 +71,24 @@
|
||||
path: "{{ item }}"
|
||||
state: directory
|
||||
with_items:
|
||||
- "{{ data_folder }}/gitea-runner"
|
||||
- "{{ data_folder }}/gitea-runner/config"
|
||||
- "/data/opengist"
|
||||
|
||||
- name: Check that config.yaml exists
|
||||
stat:
|
||||
path: "{{ data_folder }}/gitea-runner/config/config.yaml"
|
||||
register: configyaml
|
||||
|
||||
- name: Create config.yaml file
|
||||
file:
|
||||
path: "{{ data_folder }}/gitea-runner/config/config.yaml"
|
||||
state: touch
|
||||
mode: "0600"
|
||||
access_time: preserve
|
||||
modification_time: preserve
|
||||
when: configyaml.stat.exists == False
|
||||
|
||||
- name: Create the gitea-runner container
|
||||
docker_container:
|
||||
name: gitea-runner
|
||||
image: gitea/act_runner:0.2.13
|
||||
restart_policy: unless-stopped
|
||||
recreate: true
|
||||
# dns_servers:
|
||||
# - 10.10.10.1
|
||||
# - 127.0.0.11
|
||||
volumes:
|
||||
- "/etc/resolv.conf:/etc/resolv.conf:ro"
|
||||
- /var/run/docker.sock:/var/run/docker.sock
|
||||
- "{{ data_folder }}/gitea-runner/config/config.yaml:/config.yaml"
|
||||
- "/etc/hosts:/etc/hosts:ro"
|
||||
env:
|
||||
CONFIG_FILE: "/config.yaml"
|
||||
GITEA_INSTANCE_URL: "https://git.comprofix.com"
|
||||
GITEA_RUNNER_REGISTRATION_TOKEN: "{{ GITEA_RUNNER_TOKEN }}"
|
||||
GITEA_RUNNER_NAME: "gitea-runner"
|
||||
GITEA_RUNNER_LABELS: "alpine-latest:docker://{{ alpine_latest_image }},ubuntu-latest:docker://{{ ubuntu_latest_image }},vps-latest:docker://{{ debian_latest_image }}"
|
||||
|
||||
- name: Create directories
|
||||
file:
|
||||
path: "{{ item }}"
|
||||
state: directory
|
||||
with_items:
|
||||
- "{{ data_folder }}/opengist"
|
||||
- name: Pull docker image
|
||||
community.docker.docker_image:
|
||||
name: ghcr.io/thomiceli/opengist
|
||||
tag: 1.11
|
||||
source: pull
|
||||
register: docker_image
|
||||
|
||||
- name: Create the opengist container
|
||||
docker_container:
|
||||
name: opengist
|
||||
image: ghcr.io/thomiceli/opengist:1.11
|
||||
image: "{{ docker_image.image.RepoTags[0] }}"
|
||||
restart_policy: unless-stopped
|
||||
recreate: true
|
||||
networks:
|
||||
- name: proxy
|
||||
# dns_servers:
|
||||
# - 10.10.10.1
|
||||
# - 127.0.0.11
|
||||
volumes:
|
||||
- "{{ data_folder }}/opengist:/opengist"
|
||||
- "/data/opengist:/opengist"
|
||||
env:
|
||||
OG_GITEA_CLIENT_KEY: "{{ OG_GITEA_KEY }}"
|
||||
OG_GITEA_SECRET: "{{ OG_GITEA_SECRET }}"
|
||||
@@ -131,4 +104,5 @@
|
||||
traefik.http.routers.opengist.tls: "true"
|
||||
traefik.http.routers.opengist.service: "opengist"
|
||||
traefik.http.services.opengist.loadbalancer.server.port: "6157"
|
||||
register: container
|
||||
when: docker_image.changed
|
||||
register: container_opengist
|
||||
|
||||
@@ -4,15 +4,21 @@
|
||||
path: "{{ item }}"
|
||||
state: directory
|
||||
with_items:
|
||||
- "{{ data_folder }}/gotify"
|
||||
- "{{ data_folder }}/gotify/data"
|
||||
- "/data/gotify"
|
||||
- "/data/gotify/data"
|
||||
|
||||
- name: Pull docker image
|
||||
community.docker.docker_image:
|
||||
name: gotify/server
|
||||
tag: 2.7.3
|
||||
source: pull
|
||||
register: docker_image
|
||||
|
||||
- name: Create the gotify container
|
||||
docker_container:
|
||||
name: gotify
|
||||
image: gotify/server:2.7.3
|
||||
image: "{{ docker_image.image.RepoTags[0] }}"
|
||||
restart_policy: unless-stopped
|
||||
recreate: true
|
||||
networks:
|
||||
- name: proxy
|
||||
volumes:
|
||||
@@ -24,3 +30,6 @@
|
||||
traefik.http.routers.gotify.tls: "true"
|
||||
traefik.http.routers.gotify.service: "gotify"
|
||||
traefik.http.services.gotify.loadbalancer.server.port: "80"
|
||||
when: docker_image.changed
|
||||
register: container_gotify
|
||||
|
||||
|
||||
@@ -4,8 +4,8 @@
|
||||
path: "{{ item }}"
|
||||
state: directory
|
||||
with_items:
|
||||
- "{{ data_folder }}/homepage"
|
||||
- "{{ data_folder }}/homepage/config"
|
||||
- "/data/homepage"
|
||||
- "/data/homepage/config"
|
||||
|
||||
- name: Get dashboard-icons
|
||||
git:
|
||||
@@ -13,22 +13,27 @@
|
||||
dest: /data/dashboard-icons
|
||||
update: yes
|
||||
|
||||
- name: Pull docker image
|
||||
community.docker.docker_image:
|
||||
name: ghcr.io/gethomepage/homepage
|
||||
tag: v1.5.0
|
||||
source: pull
|
||||
register: docker_image
|
||||
|
||||
|
||||
- name: Create the homepage container
|
||||
docker_container:
|
||||
name: homepage
|
||||
image: ghcr.io/gethomepage/homepage:v1.5.0
|
||||
image: "{{ docker_image.image.RepoTags[0] }}"
|
||||
restart_policy: unless-stopped
|
||||
recreate: true
|
||||
networks:
|
||||
- name: proxy
|
||||
dns_servers:
|
||||
- 10.10.10.1
|
||||
env:
|
||||
LOG_LEVEL: debug
|
||||
HOMEPAGE_ALLOWED_HOSTS: homepage.comprofix.xyz
|
||||
volumes:
|
||||
- "{{ data_folder }}/homepage/config:/app/config"
|
||||
- "{{ data_folder }}/dashboard-icons:/app/public/icons"
|
||||
- "/data/homepage/config:/app/config"
|
||||
- "/data/dashboard-icons:/app/public/icons"
|
||||
- /var/run/docker.sock:/var/run/docker.sock
|
||||
labels:
|
||||
traefik.enable: "true"
|
||||
@@ -37,4 +42,5 @@
|
||||
traefik.http.routers.homepage.tls: "true"
|
||||
traefik.http.routers.homepage.service: "homepage"
|
||||
traefik.http.services.homepage.loadbalancer.server.port: "3000"
|
||||
when: docker_image.changed
|
||||
register: container_homepage
|
||||
|
||||
@@ -1,10 +1,18 @@
|
||||
---
|
||||
- name: Pull docker image
|
||||
community.docker.docker_image:
|
||||
name: ghcr.io/tigerblue77/dell_idrac_fan_controller
|
||||
tag: latest
|
||||
source: pull
|
||||
force_source: true
|
||||
force_tag: true
|
||||
register: docker_image
|
||||
|
||||
- name: Create the Dell_R730xd Fan Contoller container
|
||||
docker_container:
|
||||
name: Dell_R730xd
|
||||
image: ghcr.io/tigerblue77/dell_idrac_fan_controller:latest@sha256:eda09016a4acbee8883996f3b8cd4832a723200999bd037934675e75e2f00908
|
||||
image: "{{ docker_image.image.RepoTags[0] }}"
|
||||
restart_policy: unless-stopped
|
||||
recreate: true
|
||||
env:
|
||||
IDRAC_HOST: "10.10.10.105"
|
||||
IDRAC_USERNAME: "root"
|
||||
@@ -13,3 +21,5 @@
|
||||
CPU_TEMPERATURE_THRESHOLD: "80"
|
||||
CHECK_INTERVAL: "60"
|
||||
DISABLE_THIRD_PARTY_PCIE_CARD_DELL_DEFAULT_COOLING_RESPONSE: "true"
|
||||
when: docker_image.changed
|
||||
register: container_idrac
|
||||
|
||||
@@ -4,13 +4,13 @@
|
||||
path: "{{ item }}"
|
||||
state: directory
|
||||
with_items:
|
||||
- "{{ data_folder }}/invoiceninja/"
|
||||
- "{{ data_folder }}/invoiceninja/config"
|
||||
- "{{ data_folder }}/invoiceninja/db"
|
||||
- "/data/invoiceninja/"
|
||||
- "/data/invoiceninja/config"
|
||||
- "/data/invoiceninja/db"
|
||||
|
||||
- name: "create stack.env"
|
||||
copy:
|
||||
dest: "{{ data_folder }}/invoiceninja/stack.env"
|
||||
dest: "/data/invoiceninja/stack.env"
|
||||
content: |
|
||||
APP_NAME="Invoice Ninja"
|
||||
APP_ENV=production
|
||||
@@ -56,33 +56,47 @@
|
||||
UPDATE_SECRET=secret
|
||||
SENTRY_LARAVEL_DSN=https://32f01ea994744fa08a0f688769cef78a@sentry.invoicing.co/
|
||||
|
||||
- name: Pull docker image
|
||||
community.docker.docker_image:
|
||||
name: invoiceninja/invoiceninja
|
||||
tag: 5
|
||||
source: pull
|
||||
register: docker_image
|
||||
|
||||
- name: Create the invoiceninja-app container
|
||||
docker_container:
|
||||
name: invoiceninja-app
|
||||
image: invoiceninja/invoiceninja:5
|
||||
env_file: "{{ data_folder }}/invoiceninja/stack.env"
|
||||
image: "{{ docker_image.image.RepoTags[0] }}"
|
||||
env_file: "/data/invoiceninja/stack.env"
|
||||
restart_policy: unless-stopped
|
||||
recreate: true
|
||||
networks:
|
||||
- name: proxy
|
||||
volumes:
|
||||
- "{{ data_folder }}/invoiceninja/config/hosts:/etc/hosts"
|
||||
- "{{ data_folder }}/invoiceninja/docker/app/public:/var/www/app/public"
|
||||
- "{{ data_folder }}/invoiceninja/docker/app/storage:/var/www/app/storage"
|
||||
- "/data/invoiceninja/config/hosts:/etc/hosts"
|
||||
- "/data/invoiceninja/docker/app/public:/var/www/app/public"
|
||||
- "/data/invoiceninja/docker/app/storage:/var/www/app/storage"
|
||||
when: docker_image.changed
|
||||
register: container_inv_app
|
||||
|
||||
- name: Pull docker image
|
||||
community.docker.docker_image:
|
||||
name: nginx
|
||||
tag: 1.29.2
|
||||
source: pull
|
||||
register: docker_image
|
||||
|
||||
- name: Create the invoiceninja-nginx container
|
||||
docker_container:
|
||||
name: invoiceninja-nginx
|
||||
image: nginx:1.29.2
|
||||
env_file: "{{ data_folder }}/invoiceninja/stack.env"
|
||||
image: "{{ docker_image.image.RepoTags[0] }}"
|
||||
env_file: "/data/invoiceninja/stack.env"
|
||||
restart_policy: unless-stopped
|
||||
recreate: true
|
||||
networks:
|
||||
- name: proxy
|
||||
volumes:
|
||||
- "{{ data_folder }}/invoiceninja/config/nginx/in-vhost.conf:/etc/nginx/conf.d/in-vhost.conf"
|
||||
- "{{ data_folder }}/invoiceninja/docker/app/public:/var/www/app/public"
|
||||
- "{{ data_folder }}/invoiceninja/docker/app/storage:/var/www/app/storage"
|
||||
- "/data/invoiceninja/config/nginx/in-vhost.conf:/etc/nginx/conf.d/in-vhost.conf"
|
||||
- "/data/invoiceninja/docker/app/public:/var/www/app/public"
|
||||
- "/data/invoiceninja/docker/app/storage:/var/www/app/storage"
|
||||
labels:
|
||||
traefik.enable: "true"
|
||||
traefik.http.routers.invoiceninja.rule: "Host(`invoice.comprofix.com`)"
|
||||
@@ -90,6 +104,9 @@
|
||||
traefik.http.routers.invoiceninja.tls: "true"
|
||||
traefik.http.services.invoiceninja.loadbalancer.server.port: "80"
|
||||
traefik.http.services.invoiceninja.loadbalancer.server.scheme: "http"
|
||||
when: docker_image.changed
|
||||
register: container_inv_nginx
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
134
tasks/iscsi.yml
134
tasks/iscsi.yml
@@ -9,80 +9,112 @@
|
||||
name: parted
|
||||
state: present
|
||||
|
||||
- name: Discover iSCSI targets
|
||||
command: sudo iscsiadm -m discovery -t sendtargets -p "10.10.10.2"
|
||||
register: iscsi_discovery
|
||||
|
||||
- name: Set target_iqn variable based on discovery
|
||||
set_fact:
|
||||
target_iqn: "{{ item.split(' ')[1] }}"
|
||||
loop: "{{ iscsi_discovery.stdout_lines }}"
|
||||
when: item.startswith("10.10.10.2")
|
||||
|
||||
- name: Check if iSCSI target is already connected
|
||||
- name: Check existing iSCSI sessions
|
||||
command: iscsiadm -m session
|
||||
register: iscsi_sessions
|
||||
changed_when: false
|
||||
failed_when: iscsi_sessions.rc not in [0, 21] # Allow success if the return code is 0 or 21
|
||||
failed_when: iscsi_sessions.rc not in [0, 21]
|
||||
|
||||
- name: Connect to iSCSI target
|
||||
command: sudo iscsiadm -m node -T "{{ target_iqn }}" -p "10.10.10.2" --login
|
||||
when: target_iqn is defined and target_iqn not in iscsi_sessions.stdout
|
||||
- name: Discover iSCSI targets for each portal
|
||||
command: iscsiadm -m discovery -t sendtargets -p "{{ item.portal }}"
|
||||
register: iscsi_discovery
|
||||
loop: "{{ iscsi_targets }}"
|
||||
loop_control:
|
||||
label: "{{ item.iqn }}"
|
||||
changed_when: false
|
||||
|
||||
- name: Set iSCSI target for automatic login
|
||||
command: sudo iscsiadm -m node -T "{{ target_iqn }}" -p "10.10.10.2" --op update --name node.startup --value automatic
|
||||
when: target_iqn is defined
|
||||
- name: Connect to iSCSI targets for this host
|
||||
command: iscsiadm -m node -T "{{ item.iqn }}" -p "{{ item.portal }}" --login
|
||||
loop: "{{ iscsi_targets }}"
|
||||
when: item.iqn not in iscsi_sessions.stdout
|
||||
loop_control:
|
||||
label: "{{ item.iqn }}"
|
||||
|
||||
- name: Fail if no target_iqn found
|
||||
fail:
|
||||
msg: "No target IQN found for iSCSI server IP 10.10.10.2"
|
||||
when: target_iqn is not defined
|
||||
- name: Set iSCSI targets for automatic login
|
||||
command: iscsiadm -m node -T "{{ item.iqn }}" -p "{{ item.portal }}" --op update --name node.startup --value automatic
|
||||
loop: "{{ iscsi_targets }}"
|
||||
loop_control:
|
||||
label: "{{ item.iqn }}"
|
||||
|
||||
- name: List all block devices
|
||||
command: lsblk -o NAME,SIZE,TYPE,MODEL
|
||||
register: lsblk_output
|
||||
# --------------------------
|
||||
# Wait for the iSCSI device to appear
|
||||
# --------------------------
|
||||
- name: Wait for iSCSI device to appear
|
||||
wait_for:
|
||||
path: "/dev/disk/by-path/ip-{{ item.portal }}:3260-iscsi-{{ item.iqn }}-lun-0"
|
||||
state: present
|
||||
timeout: 30
|
||||
loop: "{{ iscsi_targets }}"
|
||||
loop_control:
|
||||
label: "{{ item.iqn }}"
|
||||
|
||||
- name: Set iSCSI device variable
|
||||
set_fact:
|
||||
iscsi_device: "/dev/{{ item.split()[0] }}"
|
||||
loop: "{{ lsblk_output.stdout_lines }}"
|
||||
when: item.split()[2] == 'disk' and 'iSCSI' in item # Adjust based on the MODEL you observe
|
||||
# --------------------------
|
||||
# Check if device is raw
|
||||
# --------------------------
|
||||
- name: Get block device info for each target
|
||||
command: "blkid /dev/disk/by-path/ip-{{ item.portal }}:3260-iscsi-{{ item.iqn }}-lun-0"
|
||||
register: blkid_output
|
||||
failed_when: false
|
||||
changed_when: false
|
||||
loop: "{{ iscsi_targets }}"
|
||||
loop_control:
|
||||
label: "{{ item.iqn }}"
|
||||
|
||||
- name: Fail if no iSCSI device found
|
||||
fail:
|
||||
msg: "No iSCSI device found!"
|
||||
when: iscsi_device is not defined
|
||||
|
||||
- name: Create a partition on iSCSI device using parted
|
||||
# --------------------------
|
||||
# Create partition if device is raw
|
||||
# --------------------------
|
||||
- name: Create partition if device is raw
|
||||
parted:
|
||||
device: "{{ iscsi_device }}"
|
||||
device: "/dev/disk/by-path/ip-{{ item[1].portal }}:3260-iscsi-{{ item[1].iqn }}-lun-0"
|
||||
number: 1
|
||||
state: present
|
||||
part_type: primary
|
||||
fs_type: ext4
|
||||
part_start: 0% # Start at the beginning of the device
|
||||
part_end: 100% # Use the entire available space
|
||||
part_start: 0%
|
||||
part_end: 100%
|
||||
loop: "{{ blkid_output.results | zip(iscsi_targets) | map('flatten') | list }}"
|
||||
loop_control:
|
||||
label: "{{ item[1].iqn }}"
|
||||
when: item[0].stdout == ""
|
||||
|
||||
- name: Create filesystem on new partition
|
||||
- name: Create filesystem if partition is raw
|
||||
filesystem:
|
||||
fstype: ext4
|
||||
dev: "{{ iscsi_device }}1" # Format the partition
|
||||
dev: "/dev/disk/by-path/ip-{{ item[1].portal }}:3260-iscsi-{{ item[1].iqn }}-lun-0-part1"
|
||||
loop: "{{ blkid_output.results | zip(iscsi_targets) | map('flatten') | list }}"
|
||||
loop_control:
|
||||
label: "{{ item[1].iqn }}"
|
||||
when: item[0].stdout == ""
|
||||
|
||||
- name: Create mount point
|
||||
- name: Create mount points
|
||||
file:
|
||||
path: /data
|
||||
path: "{{ item.mount_point }}"
|
||||
state: directory
|
||||
mode: "0777"
|
||||
owner: root
|
||||
group: root
|
||||
loop: "{{ iscsi_targets }}"
|
||||
loop_control:
|
||||
label: "{{ item.iqn }}"
|
||||
|
||||
- name: Mount iSCSI target
|
||||
- name: Mount iSCSI targets
|
||||
mount:
|
||||
path: /data
|
||||
src: "{{ iscsi_device }}1" # Mount the new partition
|
||||
path: "{{ item.mount_point }}"
|
||||
src: "/dev/disk/by-path/ip-{{ item.portal }}:3260-iscsi-{{ item.iqn }}-lun-0-part1"
|
||||
fstype: ext4
|
||||
opts: defaults,_netdev
|
||||
state: mounted
|
||||
loop: "{{ iscsi_targets }}"
|
||||
loop_control:
|
||||
label: "{{ item.iqn }}"
|
||||
|
||||
# - name: Ensure iSCSI target is mounted at boot
|
||||
# lineinfile:
|
||||
# path: /etc/fstab
|
||||
# line: "{{ iscsi_device }}1 /data ext4 _netdev 0 0"
|
||||
# state: present
|
||||
- name: Ensure mounted directories are world-writable
|
||||
file:
|
||||
path: "{{ item.mount_point }}"
|
||||
state: directory
|
||||
mode: "0777"
|
||||
owner: root
|
||||
group: root
|
||||
loop: "{{ iscsi_targets }}"
|
||||
loop_control:
|
||||
label: "{{ item.iqn }}"
|
||||
|
||||
@@ -4,15 +4,21 @@
|
||||
path: "{{ item }}"
|
||||
state: directory
|
||||
with_items:
|
||||
- "{{ data_folder }}/jellyseerr"
|
||||
- "{{ data_folder }}/jellyseerr/config"
|
||||
|
||||
- "/data/jellyseerr"
|
||||
- "/data/jellyseerr/config"
|
||||
|
||||
- name: Pull docker image
|
||||
community.docker.docker_image:
|
||||
name: fallenbagel/jellyseerr:2.7.3
|
||||
tag: 2.7.3
|
||||
source: pull
|
||||
register: docker_image
|
||||
|
||||
- name: Create the jellyseerr container
|
||||
docker_container:
|
||||
name: jellyseerr
|
||||
image: fallenbagel/jellyseerr:2.7.3
|
||||
image: "{{ docker_image.image.RepoTags[0] }}"
|
||||
restart_policy: unless-stopped
|
||||
recreate: true
|
||||
networks:
|
||||
- name: proxy
|
||||
env:
|
||||
@@ -20,10 +26,12 @@
|
||||
PGID: "1000"
|
||||
TZ: "Australia/Brisbane"
|
||||
volumes:
|
||||
- "{{ data_folder }}/jellyseerr/config:/app/config"
|
||||
- "/data/jellyseerr/config:/app/config"
|
||||
labels:
|
||||
traefik.enable: "true"
|
||||
traefik.http.routers.jellyseerr.rule: "Host(`jellyseerr.comprofix.xyz`)"
|
||||
traefik.http.routers.jellyseerr.entrypoints: "https"
|
||||
traefik.http.routers.jellyseerr.tls: "true"
|
||||
traefik.http.services.jellyseerr.loadbalancer.server.port: "5055"
|
||||
traefik.http.services.jellyseerr.loadbalancer.server.port: "5055"
|
||||
when: docker_image.changed
|
||||
register: container_jellyseerr
|
||||
@@ -1,22 +1,26 @@
|
||||
---
|
||||
- name: Set Facts
|
||||
set_fact:
|
||||
container_name: 'lidarr'
|
||||
|
||||
- name: Create directories
|
||||
file:
|
||||
path: "{{ item }}"
|
||||
state: directory
|
||||
with_items:
|
||||
- "{{ data_folder }}/lidarr"
|
||||
- "{{ data_folder }}/lidarr/config"
|
||||
- "/data/lidarr"
|
||||
- "/data/lidarr/config"
|
||||
|
||||
- name: Pull docker image
|
||||
community.docker.docker_image:
|
||||
name: ghcr.io/linuxserver/lidarr
|
||||
tag: latest
|
||||
source: pull
|
||||
force_source: true
|
||||
force_tag: true
|
||||
register: docker_image
|
||||
|
||||
- name: Create the lidarr container
|
||||
docker_container:
|
||||
name: lidarr
|
||||
image: ghcr.io/linuxserver/lidarr:latest@sha256:5661b79d7245ec0c196a5a35ac13be44c6d76563d9e5bf855b3ffa3b91160999
|
||||
image: "{{ docker_image.image.RepoTags[0] }}"
|
||||
restart_policy: unless-stopped
|
||||
recreate: true
|
||||
networks:
|
||||
- name: proxy
|
||||
env:
|
||||
@@ -26,7 +30,7 @@
|
||||
AUTO_UPDATE: "true" #optional
|
||||
DOCKER_MODS: "ghcr.io/themepark-dev/theme.park:lidarr"
|
||||
volumes:
|
||||
- "{{ data_folder }}/lidarr/config:/config"
|
||||
- "/data/lidarr/config:/config"
|
||||
- /mnt/nfs/data:/data
|
||||
labels:
|
||||
traefik.enable: "true"
|
||||
@@ -34,3 +38,5 @@
|
||||
traefik.http.routers.lidarr.entrypoints: "https"
|
||||
traefik.http.routers.lidarr.tls: "true"
|
||||
traefik.http.services.lidarr.loadbalancer.server.port: "8686"
|
||||
when: docker_image.changed
|
||||
register: container_gotify
|
||||
|
||||
@@ -1,22 +1,24 @@
|
||||
---
|
||||
- name: Set Facts
|
||||
set_fact:
|
||||
container_name: 'mariadb'
|
||||
|
||||
- name: Create directories
|
||||
file:
|
||||
path: "{{ item }}"
|
||||
state: directory
|
||||
with_items:
|
||||
- "{{ data_folder }}/mariadb"
|
||||
- "{{ data_folder }}/mariadb/config"
|
||||
- "/data/mariadb"
|
||||
- "/data/mariadb/config"
|
||||
|
||||
- name: Pull docker image
|
||||
community.docker.docker_image:
|
||||
name: ghcr.io/linuxserver/mariadb
|
||||
tag: 11.4.8
|
||||
source: pull
|
||||
register: docker_image
|
||||
|
||||
- name: Create the mariadb container
|
||||
docker_container:
|
||||
name: "mariadb"
|
||||
image: ghcr.io/linuxserver/mariadb:11.4.8
|
||||
image: "{{ docker_image.image.RepoTags[0] }}"
|
||||
restart_policy: unless-stopped
|
||||
recreate: true
|
||||
ports:
|
||||
- 3306:3306
|
||||
env:
|
||||
@@ -25,5 +27,7 @@
|
||||
MYSQL_ROOT_PASSWORD: "{{MYSQL_ROOT_PASSWORD}}"
|
||||
TZ: "Australia/Brisbane"
|
||||
volumes:
|
||||
- "{{ data_folder }}/mariadb/config:/config"
|
||||
- "/data/mariadb/config:/config"
|
||||
when: docker_image.changed
|
||||
register: container_mariadb
|
||||
|
||||
@@ -4,13 +4,20 @@
|
||||
path: "{{ item }}"
|
||||
state: directory
|
||||
with_items:
|
||||
- "{{ data_folder }}/mealie"
|
||||
- "{{ data_folder }}/mealie/config"
|
||||
- "/data/mealie"
|
||||
- "/data/mealie/config"
|
||||
|
||||
- name: Pull docker image
|
||||
community.docker.docker_image:
|
||||
name: ghcr.io/mealie-recipes/mealie
|
||||
tag: v3.3.2
|
||||
source: pull
|
||||
register: docker_image
|
||||
|
||||
- name: Create the mealie container
|
||||
docker_container:
|
||||
name: mealie
|
||||
image: ghcr.io/mealie-recipes/mealie:v3.3.2
|
||||
image: "{{ docker_image.image.RepoTags[0] }}"
|
||||
restart_policy: unless-stopped
|
||||
networks:
|
||||
- name: proxy
|
||||
@@ -27,10 +34,12 @@
|
||||
BASE_URL: "mealie.comprofix.xyz"
|
||||
SMTP_HOST: "{{MAIL_HOST}}"
|
||||
volumes:
|
||||
- "{{ data_folder }}/mealie/data/:/app/data"
|
||||
- "/data/mealie/data/:/app/data"
|
||||
labels:
|
||||
traefik.enable: "true"
|
||||
traefik.http.routers.mealie.rule: "Host(`mealie.comprofix.xyz`)"
|
||||
traefik.http.routers.mealie.entrypoints: "https"
|
||||
traefik.http.routers.mealie.tls: "true"
|
||||
traefik.http.services.mealie.loadbalancer.server.port: "9000"
|
||||
when: docker_image.changed
|
||||
register: container_mealie
|
||||
|
||||
@@ -4,14 +4,20 @@
|
||||
path: "{{ item }}"
|
||||
state: directory
|
||||
with_items:
|
||||
- "{{ data_folder }}/mediawiki"
|
||||
- "/data/mediawiki"
|
||||
|
||||
- name: Pull docker image
|
||||
community.docker.docker_image:
|
||||
name: mediawiki
|
||||
tag: 1.44.2
|
||||
source: pull
|
||||
register: docker_image
|
||||
|
||||
- name: Create the wiki container
|
||||
docker_container:
|
||||
name: mediawiki
|
||||
image: mediawiki:1.44.2
|
||||
image: "{{ docker_image.image.RepoTags[0] }}"
|
||||
restart_policy: unless-stopped
|
||||
recreate: true
|
||||
networks:
|
||||
- name: proxy
|
||||
env:
|
||||
@@ -19,11 +25,13 @@
|
||||
PGID: "1000"
|
||||
TZ: "Australia/Brisbane"
|
||||
volumes:
|
||||
- "{{ data_folder }}/mediawiki/images:/var/www/html/images"
|
||||
- "{{ data_folder }}/mediawiki/LocalSettings.php:/var/www/html/LocalSettings.php"
|
||||
- "/data/mediawiki/images:/var/www/html/images"
|
||||
- "/data/mediawiki/LocalSettings.php:/var/www/html/LocalSettings.php"
|
||||
labels:
|
||||
traefik.enable: "true"
|
||||
traefik.http.routers.wiki.rule: "Host(`wiki.comprofix.xyz`)"
|
||||
traefik.http.routers.wiki.entrypoints: "https"
|
||||
traefik.http.routers.wiki.tls: "true"
|
||||
traefik.http.services.wiki.loadbalancer.server.port: "80"
|
||||
when: docker_image.changed
|
||||
register: container_mediawiki
|
||||
@@ -1,30 +0,0 @@
|
||||
---
|
||||
- name: Create directories
|
||||
file:
|
||||
path: "{{ item }}"
|
||||
state: directory
|
||||
with_items:
|
||||
- "{{ data_folder }}/mssql"
|
||||
- "{{ data_folder }}/mssql/data"
|
||||
- "{{ data_folder }}/mssql/log"
|
||||
- "{{ data_folder }}/mssql/secrets"
|
||||
|
||||
- name: Create the mssql container
|
||||
docker_container:
|
||||
name: mssql
|
||||
image: mcr.microsoft.com/mssql/server:2025-latest@sha256:2c80e548ef65fb65a8ca23c3a74ed60e0964ea709f46d07c97ccaf7c437e2cc6
|
||||
user: root
|
||||
restart_policy: unless-stopped
|
||||
recreate: true
|
||||
ports:
|
||||
- 1433:1433
|
||||
env:
|
||||
PUID: "0"
|
||||
PGID: "0"
|
||||
ACCEPT_EULA: "Y"
|
||||
MSSQL_PID: "Express"
|
||||
SA_PASSWORD: "{{ SA_PASSWORD }}"
|
||||
volumes:
|
||||
- "{{ data_folder }}/mssql/data:/var/opt/mssql/data"
|
||||
- "{{ data_folder }}/mssql/log:/var/opt/mssql/log"
|
||||
- "{{ data_folder }}/mssql/secrets:/var/opt/mssql/secrets"
|
||||
6
roles/nfs/tasks/main.yml → tasks/nfs.yml
Normal file → Executable file
6
roles/nfs/tasks/main.yml → tasks/nfs.yml
Normal file → Executable file
@@ -1,5 +1,4 @@
|
||||
---
|
||||
|
||||
- name: Install NFS mount utility
|
||||
ansible.builtin.apt:
|
||||
update_cache: true
|
||||
@@ -11,10 +10,7 @@
|
||||
ansible.posix.mount:
|
||||
src: "{{ item.src }}"
|
||||
path: "{{ item.path }}"
|
||||
opts: "{{ item.opts | default(nfs_mount_opts) }}"
|
||||
opts: "{{ item.opts | default('rw,sync,hard') }}"
|
||||
state: "{{ item.state | default( 'mounted' ) }}"
|
||||
fstype: nfs
|
||||
with_items: "{{ mounts }}"
|
||||
|
||||
|
||||
|
||||
@@ -4,21 +4,29 @@
|
||||
path: "{{ item }}"
|
||||
state: directory
|
||||
with_items:
|
||||
- "{{ data_folder }}/omada"
|
||||
- "{{ data_folder }}/omada/data"
|
||||
- "{{ data_folder }}/omada/logs"
|
||||
- "/data/omada"
|
||||
- "/data/omada/data"
|
||||
- "/data/omada/logs"
|
||||
|
||||
- name: Create the omada container
|
||||
- name: Pull omada image
|
||||
community.docker.docker_image:
|
||||
name: mbentley/omada-controller
|
||||
tag: "5.15"
|
||||
source: pull
|
||||
register: docker_image
|
||||
|
||||
- name: Create/Update the omada-controller container
|
||||
docker_container:
|
||||
name: omada
|
||||
image: mbentley/omada-controller:5.15
|
||||
image: "{{ docker_image.image.RepoTags[0] }}"
|
||||
restart_policy: unless-stopped
|
||||
recreate: true
|
||||
network_mode: host
|
||||
volumes:
|
||||
- "{{ data_folder }}/omada/data:/opt/tplink/EAPController/data"
|
||||
- "{{ data_folder }}/omada/logs:/opt/tplink/EAPController/logs"
|
||||
- "/data/omada/data:/opt/tplink/EAPController/data"
|
||||
- "/data/omada/logs:/opt/tplink/EAPController/logs"
|
||||
env:
|
||||
PUID: "1000"
|
||||
PGID: "1000"
|
||||
TZ: "Australia/Brisbane"
|
||||
when: docker_image.changed
|
||||
register: container_omada
|
||||
@@ -4,19 +4,27 @@
|
||||
path: "{{ item }}"
|
||||
state: directory
|
||||
with_items:
|
||||
- "/mnt/nfs/docker/postgres"
|
||||
- "/mnt/nfs/docker/postgres/config"
|
||||
- "/data/postgres"
|
||||
- "/data/postgres/data"
|
||||
|
||||
- name: Pull docker image
|
||||
community.docker.docker_image:
|
||||
name: postgres
|
||||
tag: 17.0-alpine
|
||||
source: pull
|
||||
register: docker_image
|
||||
|
||||
- name: Create the postgres container
|
||||
docker_container:
|
||||
name: postgres
|
||||
image: postgres:16-alpine
|
||||
image: "{{ docker_image.image.RepoTags[0] }}"
|
||||
restart_policy: unless-stopped
|
||||
recreate: true
|
||||
ports:
|
||||
- 5432:5432
|
||||
env:
|
||||
POSTGRES_PASSWORD: "{{POSTGRES_PASSWORD}}"
|
||||
volumes:
|
||||
- /mnt/nfs/docker/postgres/db-data:/var/lib/postgresql/data
|
||||
- /data/postgres/data:/var/lib/postgresql/data
|
||||
when: docker_image.changed
|
||||
register: container_postgres
|
||||
|
||||
|
||||
@@ -4,15 +4,22 @@
|
||||
path: "{{ item }}"
|
||||
state: directory
|
||||
with_items:
|
||||
- "{{ data_folder }}/prowlarr"
|
||||
- "{{ data_folder }}/prowlarr/config"
|
||||
|
||||
- "/data/prowlarr"
|
||||
- "/data/prowlarr/config"
|
||||
|
||||
- name: Pull docker image
|
||||
community.docker.docker_image:
|
||||
name: linuxserver/prowlarr
|
||||
tag: 2.0.5
|
||||
source: pull
|
||||
register: docker_image
|
||||
|
||||
|
||||
- name: Create the prowlarr container
|
||||
docker_container:
|
||||
name: prowlarr
|
||||
image: linuxserver/prowlarr:2.0.5
|
||||
image: "{{ docker_image.image.RepoTags[0] }}"
|
||||
restart_policy: unless-stopped
|
||||
recreate: true
|
||||
networks:
|
||||
- name: proxy
|
||||
env:
|
||||
@@ -22,10 +29,12 @@
|
||||
AUTO_UPDATE: "true" #optional
|
||||
DOCKER_MODS: "ghcr.io/themepark-dev/theme.park:prowlarr"
|
||||
volumes:
|
||||
- "{{ data_folder }}/prowlarr/config:/config"
|
||||
- "/data/prowlarr/config:/config"
|
||||
labels:
|
||||
traefik.enable: "true"
|
||||
traefik.http.routers.prowlarr.rule: "Host(`prowlarr.comprofix.xyz`)"
|
||||
traefik.http.routers.prowlarr.entrypoints: "https"
|
||||
traefik.http.routers.prowlarr.tls: "true"
|
||||
traefik.http.services.prowlarr.loadbalancer.server.port: "9696"
|
||||
when: docker_image.changed
|
||||
register: container_prowlarr
|
||||
@@ -4,15 +4,23 @@
|
||||
path: "{{ item }}"
|
||||
state: directory
|
||||
with_items:
|
||||
- "{{ data_folder }}/pykms"
|
||||
- "{{ data_folder }}/pykms/db"
|
||||
- "/data/pykms"
|
||||
- "/data/pykms/db"
|
||||
|
||||
- name: Pull docker image
|
||||
community.docker.docker_image:
|
||||
name: ghcr.io/py-kms-organization/py-kms
|
||||
tag: latest
|
||||
source: pull
|
||||
force_source: true
|
||||
force_tag: true
|
||||
register: docker_image
|
||||
|
||||
- name: Create the pykms container
|
||||
docker_container:
|
||||
name: pykms
|
||||
image: ghcr.io/py-kms-organization/py-kms:latest
|
||||
image: "{{ docker_image.image.RepoTags[0] }}"
|
||||
restart_policy: unless-stopped
|
||||
recreate: true
|
||||
ports:
|
||||
- "1688:1688"
|
||||
env:
|
||||
@@ -21,6 +29,8 @@
|
||||
HWID: "RANDOM"
|
||||
LOGLEVEL: "INFO"
|
||||
volumes:
|
||||
- "{{ data_folder }}/pykms/db:/home/py-kms/db"
|
||||
- "/data/pykms/db:/home/py-kms/db"
|
||||
- /etc/localtime:/etc/localtime:ro
|
||||
when: docker_image.changed
|
||||
register: container_pykms
|
||||
|
||||
|
||||
@@ -4,15 +4,21 @@
|
||||
path: "{{ item }}"
|
||||
state: directory
|
||||
with_items:
|
||||
- "{{ data_folder }}/radarr"
|
||||
- "{{ data_folder }}/radarr/config"
|
||||
- "/data/radarr"
|
||||
- "/data/radarr/config"
|
||||
|
||||
- name: Pull docker image
|
||||
community.docker.docker_image:
|
||||
name: linuxserver/radarr
|
||||
tag: 5.27.5
|
||||
source: pull
|
||||
register: docker_image
|
||||
|
||||
- name: Create the radarr container
|
||||
docker_container:
|
||||
name: radarr
|
||||
image: linuxserver/radarr:5.27.5
|
||||
image: "{{ docker_image.image.RepoTags[0] }}"
|
||||
restart_policy: unless-stopped
|
||||
recreate: true
|
||||
networks:
|
||||
- name: proxy
|
||||
env:
|
||||
@@ -21,11 +27,13 @@
|
||||
TZ: "Australia/Brisbane"
|
||||
DOCKER_MODS: "ghcr.io/themepark-dev/theme.park:radarr"
|
||||
volumes:
|
||||
- "{{ data_folder }}/radarr/config:/config"
|
||||
- "/data/radarr/config:/config"
|
||||
- /mnt/nfs/data:/data
|
||||
labels:
|
||||
traefik.enable: "true"
|
||||
traefik.http.routers.radarr.rule: "Host(`radarr.comprofix.xyz`)"
|
||||
traefik.http.routers.radarr.entrypoints: "https"
|
||||
traefik.http.routers.radarr.tls: "true"
|
||||
traefik.http.services.radarr.loadbalancer.server.port: "7878"
|
||||
traefik.http.services.radarr.loadbalancer.server.port: "7878"
|
||||
when: docker_image.changed
|
||||
register: container_radarr
|
||||
@@ -1,33 +0,0 @@
|
||||
# Readarr has been archived/retired.
|
||||
# Keeping this for history
|
||||
# ---
|
||||
# - name: Create directories
|
||||
# file:
|
||||
# path: "{{ item }}"
|
||||
# state: directory
|
||||
# with_items:
|
||||
# - "{{ data_folder }}/readarr"
|
||||
# - "{{ data_folder }}/readarr/config"
|
||||
|
||||
# - name: Create the readarr container
|
||||
# docker_container:
|
||||
# name: readarr
|
||||
# image: linuxserver/readarr:develop@sha256:eb37f58646a901dc7727cf448cae36daaefaba79de33b5058dab79aa4c04aefb
|
||||
# restart_policy: unless-stopped
|
||||
# recreate: true
|
||||
# networks:
|
||||
# - name: proxy
|
||||
# env:
|
||||
# PUID: "1000"
|
||||
# PGID: "1000"
|
||||
# TZ: "Australia/Brisbane"
|
||||
# DOCKER_MODS: "ghcr.io/themepark-dev/theme.park:readarr"
|
||||
# volumes:
|
||||
# - "{{ data_folder }}/readarr/config/:/config"
|
||||
# - /mnt/nfs/data/:/data
|
||||
# labels:
|
||||
# traefik.enable: "true"
|
||||
# traefik.http.routers.readarr.rule: "Host(`readarr.comprofix.xyz`)"
|
||||
# traefik.http.routers.readarr.entrypoints: "https"
|
||||
# traefik.http.routers.readarr.tls: "true"
|
||||
# traefik.http.services.readarr.loadbalancer.server.port: "8787"
|
||||
@@ -4,15 +4,21 @@
|
||||
path: "{{ item }}"
|
||||
state: directory
|
||||
with_items:
|
||||
- "{{ data_folder }}/sabnzbd"
|
||||
- "{{ data_folder }}/sabnzbd/config"
|
||||
- "/data/sabnzbd"
|
||||
- "/data/sabnzbd/config"
|
||||
|
||||
- name: Pull docker image
|
||||
community.docker.docker_image:
|
||||
name: linuxserver/sabnzbd
|
||||
tag: 4.5.3
|
||||
source: pull
|
||||
register: docker_image
|
||||
|
||||
- name: Create the sabnzbd container
|
||||
docker_container:
|
||||
name: sabnzbd
|
||||
image: linuxserver/sabnzbd:4.5.3
|
||||
image: "{{ docker_image.image.RepoTags[0] }}"
|
||||
restart_policy: unless-stopped
|
||||
recreate: true
|
||||
networks:
|
||||
- name: proxy
|
||||
env:
|
||||
@@ -22,7 +28,7 @@
|
||||
HOSTNAME: "sabnzbd.comprofix.xyz"
|
||||
DOCKER_MODS: "ghcr.io/themepark-dev/theme.park:sabnzbd"
|
||||
volumes:
|
||||
- "{{ data_folder }}/sabnzbd/config:/config"
|
||||
- "/data/sabnzbd/config:/config"
|
||||
- /mnt/nfs/data:/data
|
||||
labels:
|
||||
traefik.enable: "true"
|
||||
@@ -30,3 +36,5 @@
|
||||
traefik.http.routers.sabnzbd.entrypoints: "https"
|
||||
traefik.http.routers.sabnzbd.tls: "true"
|
||||
traefik.http.services.sabnzbd.loadbalancer.server.port: "8080"
|
||||
when: docker_image.changed
|
||||
register: container_sabnzbd
|
||||
|
||||
@@ -4,15 +4,21 @@
|
||||
path: "{{ item }}"
|
||||
state: directory
|
||||
with_items:
|
||||
- "{{ data_folder }}/sonarr"
|
||||
- "{{ data_folder }}/sonarr/config"
|
||||
- "/data/sonarr"
|
||||
- "/data/sonarr/config"
|
||||
|
||||
- name: Pull docker image
|
||||
community.docker.docker_image:
|
||||
name: linuxserver/sonarr
|
||||
tag: 4.0.15
|
||||
source: pull
|
||||
register: docker_image
|
||||
|
||||
- name: Create the sonarr container
|
||||
docker_container:
|
||||
name: sonarr
|
||||
image: linuxserver/sonarr:4.0.15
|
||||
image: "{{ docker_image.image.RepoTags[0] }}"
|
||||
restart_policy: unless-stopped
|
||||
recreate: true
|
||||
networks:
|
||||
- name: proxy
|
||||
env:
|
||||
@@ -21,7 +27,7 @@
|
||||
TZ: "Australia/Brisbane"
|
||||
DOCKER_MODS: "ghcr.io/themepark-dev/theme.park:sonarr"
|
||||
volumes:
|
||||
- "{{ data_folder }}/sonarr/config/:/config"
|
||||
- "/data/sonarr/config/:/config"
|
||||
- /mnt/nfs/data:/data
|
||||
labels:
|
||||
traefik.enable: "true"
|
||||
@@ -29,3 +35,5 @@
|
||||
traefik.http.routers.sonarr.entrypoints: "https"
|
||||
traefik.http.routers.sonarr.tls: "true"
|
||||
traefik.http.services.sonarr.loadbalancer.server.port: "8989"
|
||||
when: docker_image.changed
|
||||
register: container_sonarr
|
||||
|
||||
@@ -4,16 +4,22 @@
|
||||
path: "{{ item }}"
|
||||
state: directory
|
||||
with_items:
|
||||
- "{{ data_folder }}/speedtest"
|
||||
- "{{ data_folder }}/speedtest/config"
|
||||
- "{{ data_folder }}/speedtest/web"
|
||||
- "/data/speedtest"
|
||||
- "/data/speedtest/config"
|
||||
- "/data/speedtest/web"
|
||||
|
||||
- name: Pull docker image
|
||||
community.docker.docker_image:
|
||||
name: lscr.io/linuxserver/speedtest-tracker
|
||||
tag: 1.6.8
|
||||
source: pull
|
||||
register: docker_image
|
||||
|
||||
- name: Create the speedtest container
|
||||
docker_container:
|
||||
name: speedtest
|
||||
image: lscr.io/linuxserver/speedtest-tracker:1.6.8
|
||||
image: "{{ docker_image.image.RepoTags[0] }}"
|
||||
restart_policy: unless-stopped
|
||||
recreate: true
|
||||
networks:
|
||||
- name: proxy
|
||||
env:
|
||||
@@ -30,8 +36,8 @@
|
||||
SPEEDTEST_SCHEDULE: "0 * * * *"
|
||||
DISPLAY_TIMEZONE: "Australia/Brisbane"
|
||||
volumes:
|
||||
- "{{ data_folder }}/speedtest/config:/config"
|
||||
- "{{ data_folder }}/speedtest/web:/etc/ssl/web"
|
||||
- "/data/speedtest/config:/config"
|
||||
- "/data/speedtest/web:/etc/ssl/web"
|
||||
labels:
|
||||
traefik.enable: "true"
|
||||
traefik.http.routers.speedtest.rule: "Host(`speedtest.comprofix.xyz`)"
|
||||
@@ -39,3 +45,5 @@
|
||||
traefik.http.routers.speedtest.tls: "true"
|
||||
traefik.http.services.speedtest.loadbalancer.server.port: "80"
|
||||
traefik.http.services.speedtest.loadbalancer.server.scheme: "http"
|
||||
when: docker_image.changed
|
||||
register: container_speedtest
|
||||
|
||||
@@ -4,61 +4,45 @@
|
||||
path: "{{ item }}"
|
||||
state: directory
|
||||
with_items:
|
||||
- "{{ data_folder }}/traefik"
|
||||
- "{{ data_folder }}/traefik/data"
|
||||
- "{{ data_folder }}/traefik/data/log"
|
||||
- "/data/traefik"
|
||||
- "/data/traefik/config"
|
||||
- "/data/traefik/log"
|
||||
|
||||
|
||||
- name: Create a network
|
||||
- name: Ensure 'proxy' network exists
|
||||
docker_network:
|
||||
name: proxy
|
||||
register: network
|
||||
|
||||
- name: Copy Traefik config
|
||||
- name: Copy Traefik main configuration
|
||||
template:
|
||||
src: templates/traefik.yml.j2
|
||||
dest: "{{ data_folder }}/traefik/data/traefik.yml"
|
||||
src: ../templates/traefik.yml.j2
|
||||
dest: "/data/traefik/config/traefik.yml"
|
||||
mode: "0600"
|
||||
|
||||
- name: Copy Traefik config
|
||||
- name: Copy Traefik extra config
|
||||
template:
|
||||
src: templates/config.yml.j2
|
||||
dest: "{{ data_folder }}/traefik/data/config.yml"
|
||||
src: ../templates/config.yml.j2
|
||||
dest: "/data/traefik/config/config.yml"
|
||||
mode: "0600"
|
||||
when: traefik_host == "traefik02.comprofix.xyz"
|
||||
|
||||
- name: Check if {{ data_folder }}/traefik/data/acme.json exists
|
||||
ansible.builtin.stat:
|
||||
path: "{{ data_folder }}/traefik/data/acme.json"
|
||||
register: file_status
|
||||
|
||||
- name: Creates {{ data_folder }}/traefik/data/acme.json if it doesn't exists
|
||||
ansible.builtin.file:
|
||||
path: "{{ data_folder }}/traefik/data/acme.json"
|
||||
- name: Ensure acme.json exists
|
||||
file:
|
||||
path: "/data/traefik/config/acme.json"
|
||||
state: touch
|
||||
owner: root
|
||||
group: root
|
||||
owner: root # UID Traefik runs as
|
||||
group: root # GID Traefik runs as
|
||||
mode: "0600"
|
||||
when: not file_status.stat.exists
|
||||
|
||||
- name: Check if traefik.json.log exists
|
||||
ansible.builtin.stat:
|
||||
path: "{{ data_folder }}/traefik/data/log/traefik.json.log"
|
||||
register: file_status
|
||||
|
||||
- name: Creates traefik.json.log if it doesn't exists
|
||||
ansible.builtin.file:
|
||||
path: "{{ data_folder }}/traefik/data/log/traefik.json.log"
|
||||
state: touch
|
||||
owner: root
|
||||
group: root
|
||||
mode: "0600"
|
||||
when: not file_status.stat.exists
|
||||
- name: Pull docker image
|
||||
community.docker.docker_image:
|
||||
name: traefik
|
||||
tag: v3.5
|
||||
source: pull
|
||||
register: docker_image
|
||||
|
||||
- name: Create traefik Container
|
||||
docker_container:
|
||||
name: traefik
|
||||
image: traefik:v3.5
|
||||
image: "{{ docker_image.image.RepoTags[0] }}"
|
||||
restart_policy: unless-stopped
|
||||
networks:
|
||||
- name: "proxy"
|
||||
@@ -71,17 +55,17 @@
|
||||
volumes:
|
||||
- /etc/localtime:/etc/localtime:ro
|
||||
- /var/run/docker.sock:/var/run/docker.sock:ro
|
||||
- "{{ data_folder }}/traefik/data/traefik.yml:/traefik.yml:ro"
|
||||
- "{{ data_folder }}/traefik/data/acme.json:/acme.json"
|
||||
- "{{ data_folder }}/traefik/data/log:/var/log/traefik"
|
||||
- "{{ data_folder }}/traefik/data/config.yml:/config.yml:ro"
|
||||
- "/data/traefik/config/traefik.yml:/traefik.yml:ro"
|
||||
- "/data/traefik/config/acme.json:/acme.json"
|
||||
- "/data/traefik/log:/var/log/traefik"
|
||||
- "/data/traefik/config/config.yml:/config.yml:ro"
|
||||
labels:
|
||||
traefik.enable: "true"
|
||||
traefik.http.routers.traefik.entrypoints: "http"
|
||||
traefik.http.routers.traefik.rule: "Host(`{{traefik_host}}`)"
|
||||
traefik.http.middlewares.traefik-auth.basicauth.users: "{{ traefik_api_password }}"
|
||||
traefik.http.middlewares.traefik-https-redirect.redirectscheme.scheme: "https"
|
||||
traefik.http.middlewares.sslheader.headers.customrequestheaders.X-Forwarded-Proto: "https"
|
||||
traefik.http.middlewares.traefik-auth.basicauth.users: "{{ traefik_api_userpass }}"
|
||||
traefik.http.routers.traefik.middlewares: "traefik-https-redirect"
|
||||
traefik.http.routers.traefik-secure.entrypoints: "https"
|
||||
traefik.http.routers.traefik-secure.rule: "Host(`{{traefik_host}}`)"
|
||||
@@ -93,3 +77,5 @@
|
||||
traefik.http.routers.traefik-secure.tls.domains[1].main: "comprofix.xyz"
|
||||
traefik.http.routers.traefik-secure.tls.domains[1].sans: "*.comprofix.xyz"
|
||||
traefik.http.routers.traefik-secure.service: "api@internal"
|
||||
when: docker_image.changed
|
||||
register: container_traefik
|
||||
@@ -1,26 +0,0 @@
|
||||
---
|
||||
- name: Create directories
|
||||
file:
|
||||
path: "{{ item }}"
|
||||
state: directory
|
||||
with_items:
|
||||
- "{{ data_folder }}/traggo"
|
||||
- "{{ data_folder }}/traggo/data"
|
||||
|
||||
- name: Create the traggo container
|
||||
docker_container:
|
||||
name: traggo
|
||||
image: traggo/server:0.7.1
|
||||
restart_policy: unless-stopped
|
||||
recreate: true
|
||||
networks:
|
||||
- name: proxy
|
||||
volumes:
|
||||
- /data/traggo/data:/opt/traggo/data
|
||||
labels:
|
||||
traefik.enable: "true"
|
||||
traefik.http.routers.traggo.rule: "Host(`traggo.comprofix.xyz`)"
|
||||
traefik.http.routers.traggo.entrypoints: "https"
|
||||
traefik.http.routers.traggo.tls: "true"
|
||||
traefik.http.services.traggo.loadbalancer.server.port: "3030"
|
||||
traefik.http.services.traggo.loadbalancer.server.scheme: "http"
|
||||
@@ -4,18 +4,24 @@
|
||||
path: "{{ item }}"
|
||||
state: directory
|
||||
with_items:
|
||||
- "{{ data_folder }}/vaultwarden"
|
||||
- "{{ data_folder }}/vaultwarden/config"
|
||||
- "{{ data_folder }}/vaultwardenbackup"
|
||||
- "{{ data_folder }}/vaultwardenbackup/config"
|
||||
- "{{ data_folder }}/vaultwardenbackup/config/rclone"
|
||||
- "/data/vaultwarden"
|
||||
- "/data/vaultwarden/config"
|
||||
- "/data/vaultwardenbackup"
|
||||
- "/data/vaultwardenbackup/config"
|
||||
- "/data/vaultwardenbackup/config/rclone"
|
||||
|
||||
- name: Pull docker image
|
||||
community.docker.docker_image:
|
||||
name: vaultwarden/server
|
||||
tag: 1.34.3
|
||||
source: pull
|
||||
register: docker_image
|
||||
|
||||
- name: Create the vaultwarden container
|
||||
docker_container:
|
||||
name: vaultwarden
|
||||
image: vaultwarden/server:1.34.3
|
||||
image: "{{ docker_image.image.RepoTags[0] }}"
|
||||
restart_policy: unless-stopped
|
||||
recreate: true
|
||||
networks:
|
||||
- name: proxy
|
||||
env:
|
||||
@@ -23,7 +29,7 @@
|
||||
PGID: "1000"
|
||||
TZ: "Australia/Brisbane"
|
||||
volumes:
|
||||
- "{{ data_folder }}/vaultwarden/data:/data"
|
||||
- "/data/vaultwarden/data:/data"
|
||||
labels:
|
||||
traefik.enable: "true"
|
||||
traefik.http.routers.vaultwarden.rule: "Host(`vault.comprofix.com`)"
|
||||
@@ -31,21 +37,28 @@
|
||||
traefik.http.routers.vaultwarden.tls: "true"
|
||||
traefik.http.routers.vaultwarden.service: "vaultwarden"
|
||||
traefik.http.services.vaultwarden.loadbalancer.server.port: "80"
|
||||
register: container
|
||||
when: docker_image.changed
|
||||
register: container_vaultwarden
|
||||
|
||||
- name: Copy rclone config
|
||||
copy:
|
||||
src: scripts/rclone.conf
|
||||
dest: "{{ data_folder }}/vaultwardenbackup/config/rclone/rclone.conf"
|
||||
dest: "/data/vaultwardenbackup/config/rclone/rclone.conf"
|
||||
decrypt: yes
|
||||
mode: "0600"
|
||||
|
||||
- name: Pull docker image
|
||||
community.docker.docker_image:
|
||||
name: ttionya/vaultwarden-backup
|
||||
tag: 1.25.2
|
||||
source: pull
|
||||
register: docker_image
|
||||
|
||||
- name: Create the vaultwarden container
|
||||
docker_container:
|
||||
name: vaultwardenbackup
|
||||
image: ttionya/vaultwarden-backup:1.25.2
|
||||
image: "{{ docker_image.image.RepoTags[0] }}"
|
||||
restart_policy: unless-stopped
|
||||
recreate: true
|
||||
env:
|
||||
PUID: "1000"
|
||||
PGID: "1000"
|
||||
@@ -54,9 +67,10 @@
|
||||
BACKUP_KEEP_DAYS: "14"
|
||||
ZIP_PASSWORD: "{{ VAULTWARDEN_BACKUP_ZIP_PASSWORD }}"
|
||||
volumes:
|
||||
- "{{ data_folder }}/vaultwarden/data:/bitwarden/data"
|
||||
- "{{ data_folder }}/vaultwardenbackup/config:/config"
|
||||
register: container
|
||||
- "/data/vaultwarden/data:/bitwarden/data"
|
||||
- "/data/vaultwardenbackup/config:/config"
|
||||
when: docker_image.changed
|
||||
register: container_vaultwardenbackup
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -1,3 +0,0 @@
|
||||
alpine_latest_image: "alpine:latest"
|
||||
ubuntu_latest_image: "node:22-trixie"
|
||||
debian_latest_image: "git.comprofix.com/mmckinnon/debian-latest:2025.08.31-093853"
|
||||
Reference in New Issue
Block a user