chore(deps): update amir20/dozzle docker tag to v8.4.3 - autoclosed #1
@ -1,34 +0,0 @@
|
|||||||
name: Deploy
|
|
||||||
|
|
||||||
on:
|
|
||||||
push:
|
|
||||||
branches:
|
|
||||||
- master
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
deploy:
|
|
||||||
name: Prepare Build
|
|
||||||
runs-on: homelab
|
|
||||||
container: git.comprofix.com/mmckinnon/alpine-runner:latest
|
|
||||||
steps:
|
|
||||||
|
|
||||||
- name: Checkout code
|
|
||||||
uses: actions/checkout@v4
|
|
||||||
with:
|
|
||||||
fetch-depth: 0
|
|
||||||
|
|
||||||
- name: Deploy containers
|
|
||||||
run: |
|
|
||||||
mkdir -p ~/.ssh
|
|
||||||
echo "${{ secrets.SSH_KNOWN_HOSTS }}" >> ~/.ssh/known_hosts
|
|
||||||
chmod 644 ~/.ssh/known_hosts
|
|
||||||
eval $(ssh-agent -s)
|
|
||||||
ssh-add <(echo "${{ secrets.SSH_PRIVATE_KEY }}")
|
|
||||||
echo "HOST *" > ~/.ssh/config
|
|
||||||
echo "StrictHostKeyChecking no" >> ~/.ssh/config
|
|
||||||
echo "${{ secrets.ANSIBLE_VAULT_PASSWORD }}" > ~/.vault_password.txt
|
|
||||||
echo "nameserver 10.10.10.1" > /etc/resolv.conf
|
|
||||||
ansible-galaxy install oefenweb.fail2ban
|
|
||||||
./.gitea/workflows/deploy.sh "${{ github.event.before }}" "${{ github.sha }}"
|
|
||||||
|
|
||||||
|
|
@ -1,14 +0,0 @@
|
|||||||
#!/bin/bash
|
|
||||||
|
|
||||||
changed_tasks=($(git diff --name-only $1 $2 | grep '\.yml$'))
|
|
||||||
if [ ! -z "$changed_tasks" ]; then
|
|
||||||
for task in "${changed_tasks[@]}"; do
|
|
||||||
tag=$(echo "$task" | awk -F/ '{print $2}')
|
|
||||||
if [[ "$tag" != "deploy-homelab.yml" && "$tag" != "main.yml" && "$tag" != "all.yml" && "$tag" != "all.example.yml" && "$tag" != "ISSUE_TEMPLATE" && "$tag" != "workflows" ]] ; then
|
|
||||||
tag=${tag%.*}_install
|
|
||||||
/root/.local/bin/ansible-playbook main.yml --tags "$tag" --vault-password-file ~/.vault_password.txt
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
else
|
|
||||||
echo "No changes detected in task files. Skipping Ansible playbook execution."
|
|
||||||
fi
|
|
@ -3,47 +3,39 @@
|
|||||||
become: yes
|
become: yes
|
||||||
|
|
||||||
tasks:
|
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: Write notify script
|
# - name: Download cloud-init image
|
||||||
ansible.builtin.template:
|
# register: image
|
||||||
src: scripts/notify.sh.j2
|
# ansible.builtin.get_url:
|
||||||
dest: /tmp/notify.sh
|
# url: "https://cloud.debian.org/images/cloud/bookworm/latest/debian-12-generic-amd64.qcow2"
|
||||||
|
# dest: /tmp
|
||||||
|
# mode: '0644'
|
||||||
|
# force: true
|
||||||
|
|
||||||
- name: Delete existing template
|
# - name: Install Tools
|
||||||
community.general.proxmox_kvm:
|
# ansible.builtin.apt:
|
||||||
api_host: "{{ api_host }}"
|
# name:
|
||||||
api_user: "{{ api_user }}"
|
# - libguestfs-tools
|
||||||
api_password: "{{ api_password }}"
|
# - python3
|
||||||
node: "{{ node_target }}"
|
# - python3-pip
|
||||||
name: "debian-12-generic-amd64"
|
# - python3-proxmoxer
|
||||||
state: absent
|
# update_cache: true
|
||||||
|
# install_recommends: false
|
||||||
|
# state: present
|
||||||
|
|
||||||
- name: Download cloud-init image
|
# - name: Install Tools to cloud-init image
|
||||||
register: image
|
# ansible.builtin.shell: |
|
||||||
ansible.builtin.get_url:
|
# virt-customize -a {{ image.dest }} --install qemu-guest-agent
|
||||||
url: "https://cloud.debian.org/images/cloud/bookworm/latest/debian-12-generic-amd64.qcow2"
|
# virt-customize -a {{ image.dest }} --install vim
|
||||||
dest: /tmp
|
# virt-customize -a {{ image.dest }} --install git
|
||||||
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-copy-in -a {{ image.dest }} /tmp/notify.sh /usr/local/bin
|
|
||||||
virt-customize -a {{ image.dest }} --run-command 'chmod +x /usr/local/bin/notify.sh'
|
|
||||||
virt-customize -a {{ image.dest }} --run-command 'sed -i "s|primary.*|primary: http://mirror.amaze.com.au/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
|
- name: Create new VM template from cloud-init image
|
||||||
community.general.proxmox_kvm:
|
community.general.proxmox_kvm:
|
||||||
@ -65,6 +57,9 @@
|
|||||||
ostype: "l26"
|
ostype: "l26"
|
||||||
vga: std
|
vga: std
|
||||||
scsihw: 'virtio-scsi-single'
|
scsihw: 'virtio-scsi-single'
|
||||||
|
#scsi:
|
||||||
|
#scsi0: "{{ storage_target }}:0,iothread=1,discard=on,import-from={{ image.dest }},format=raw"
|
||||||
|
#scsi0: "{{ storage_target }}:0,import-from=/tmp/debian-12-generic-amd64.qcow2,format=raw"
|
||||||
net:
|
net:
|
||||||
net0: 'virtio,bridge=vmbr0,firewall=1,tag=10'
|
net0: 'virtio,bridge=vmbr0,firewall=1,tag=10'
|
||||||
ipconfig:
|
ipconfig:
|
||||||
@ -73,6 +68,10 @@
|
|||||||
timeout: 600
|
timeout: 600
|
||||||
vmid: 10000
|
vmid: 10000
|
||||||
|
|
||||||
|
# - name: Pause for 5 seconds while template imported
|
||||||
|
# ansible.builtin.pause:
|
||||||
|
# seconds: 10
|
||||||
|
|
||||||
- name: Import HDD to Template
|
- name: Import HDD to Template
|
||||||
command:
|
command:
|
||||||
cmd: "qm set 10000 --scsi0 {{ storage_target }}:0,iothread=1,discard=on,import-from=/tmp/debian-12-generic-amd64.qcow2,format=raw"
|
cmd: "qm set 10000 --scsi0 {{ storage_target }}:0,iothread=1,discard=on,import-from=/tmp/debian-12-generic-amd64.qcow2,format=raw"
|
||||||
|
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,124 +1,100 @@
|
|||||||
$ANSIBLE_VAULT;1.1;AES256
|
$ANSIBLE_VAULT;1.1;AES256
|
||||||
64666538613930336534626435636161313765343038323937626463636132316363323332383130
|
32656263363465383531613338653130323635653238383232646265326433616462363464656539
|
||||||
3561653634376466666463396533386262646263363131660a653332633232343538336261343162
|
3162306463653134666135376366643861353862663765630a343165613030633661353463316463
|
||||||
39663935303636396635616138363634303965663863393033653162376438336638366635343865
|
30633162376563663166616366643836316363663065333366643338383939636531323538616536
|
||||||
3035336538623866340a313532396237636465613437346562356132313763643139383963393962
|
3136383363636131360a326661366265653364323966386634656465376433633035343033653034
|
||||||
30383030316639633465376638633630393337313438643437643361346363306538636663306263
|
38613637613431616637323038363933383037396236386633303366313835333865316563373966
|
||||||
31613733393332633834613131333936666364323164386432396337636634623731316666326132
|
35623038613166356132633264366361313030313765333335343136326165326333656361363462
|
||||||
63663435346233376638313664383834303065393461616533663536323661626338386462363335
|
61383538356434643333653534346264396335653535343362386234316666626431643130346436
|
||||||
62303230313737663238663833636339373731356231336430653534613633396134616433616135
|
34363265613632666431343735376166383466633338353339646337613135613461363366346562
|
||||||
33623332373839366631346166636234623365643730616139346632623662653136363032636466
|
39333135633061376139333030666365366438366434326139313265643034363934306134643630
|
||||||
66633737316131663264663439363639663234353335663532316461646336353637616435633334
|
65356338373564346362633830383337373131366263323166386435313931633139646233623033
|
||||||
34396232383334626365323261643530663263396431636434616530343930373132363865386165
|
36666334613766356463333963653034316636376364303063666237383732396335636231303764
|
||||||
66666439313337363161393532666264633362326330343933643132383739323361336139643163
|
63343963633664393632613263333563643737393466326665633766663764363236333834313737
|
||||||
65626434393030343064623833633463616633336334616464383531333435646434313761316531
|
66353833636661643536633066366666306231643038623632306230656534336666303930303461
|
||||||
34623832656231616531323230386632393263356366613539373363383261323063383431333836
|
62323137353530396135376364316331353138616161303265376334303666633032646631323664
|
||||||
64623035326134383535353366643630636131326265643365336134333737643933613866343539
|
31323336386339326530646237666239333963343732376235306537323336303030613164623765
|
||||||
30663830356430383732343531613635653266306534363237353563626265303831366162633438
|
33383534326532383230616561376136646632643634393563346565336139656339383631333539
|
||||||
30663338613739666161373035653464356238393465663431313162393636363561386261613665
|
66613830313134313239366232323965343063633433653434373564663861323330323663363965
|
||||||
32303232386531666635626435306664616532363634313461303639613633393038613236653133
|
36363132626535663734653739333331616532666635333936306334656264646336366233356562
|
||||||
61616636363138666336353831383936653566656238626139313032633061623735623463313432
|
34383135343335653130636132633631623634333961376262316536633339313033326239356663
|
||||||
61323631366336623333366665383535313461363634313435393539386430613237396239333739
|
38666361636239356665626139643735333461633436373362373034383536326664336663623038
|
||||||
36306230346664363832393437333935333962356433323333393038613232306433643765323566
|
31383237643733613533633535383939313835313363633362343965633336626263623932663862
|
||||||
65663266653561643335353738383863623634326562633162643934636131373864366635353363
|
32376265666438333663373364613861656564326139363731313731343234373934656633613532
|
||||||
64346632643763383934353462623134356430373866633566656561316665323439356435333432
|
35396535306164323237376232633830613432633735663636396137356361303730376239373130
|
||||||
64636365303661636561363665316333663032633139663761363161623938613938623335656461
|
61313630313235373363333862363961313938303332366233656364616536316366326466316439
|
||||||
36373061653333646263363965306666643261396433383831366634373865353130306239313937
|
39376632663062666135623639343136643065363734366430386563613530343061326661653733
|
||||||
62646532383666376262666539323739366634653135363131626336613733653630336635333233
|
63323036633363386636333636633864333334306164306431663662383562396434306336303337
|
||||||
66643136653564346334386565326637373265656136346134333563373866396437656462313934
|
32383137363834633731393564353238636237313361643438306536386432666663383563653834
|
||||||
35663031396362303630623538643230346235333136336332313763386430343165363034323734
|
38613031353265316230363464353638373564636234303266396264306231383634623664626535
|
||||||
62393466623235376161646264636463376165376465613036633064326565363638303230376362
|
64363033373535666135316364303862343732393036396334326136323437646239363361373762
|
||||||
38616233343761346165623064336563666537343238643133656430613062366464626633343961
|
61633761343362653261316434636664353564363330303131333236336230643161623863376634
|
||||||
32386432343035383730626632396238336462316166633030666162316330303938303038313064
|
34613466396330313837643139333565366263363430343536386266323937336466623931383062
|
||||||
34363931313865626661616362323330303039383537623936346564356361316232613033373362
|
62626363383163663637353235343035323233393033623132336664396464343638303839376561
|
||||||
61366365643661623430613233393934626237613036643464313937383033386666353130636330
|
65376537666430666330323430393337666233636165356665323032343563333833383830616165
|
||||||
38376531333330393837313366356261313162373361316266333430666136303036316365643665
|
33636662633961346561373231646664643932386465343537626237663338613836356430393961
|
||||||
63306139313965363238343831616164353263666333333566343430646639363837636437613766
|
39363963633237306561353161643133396366633762336437633138393139653261373539303539
|
||||||
31313938306330343835306137663232623166356639633161623863333435626565656662353430
|
36316464643362336135363631666130653131326435306463366236323830663965363662646361
|
||||||
32616131336339336461643266373461396538383931393732303564336665646138313166376334
|
35643430666365613465666436386332346561326439643863333138363263306331653733343432
|
||||||
36303438393132353730323530666263653531376436633532373036386439616463356131653565
|
63363932303735396234323963363336353133376362306539333131323262336535333733393639
|
||||||
64316333626635323664646235613661353237616663613866346638616565623131393837666662
|
63613064636333303532623935393262373363636161653566373830636131633835366463363533
|
||||||
30653830346238383966626337313839626530303734386436306336333361343537356339323965
|
61333163326262343037313462303930363234316462623963323563303864383163643936643761
|
||||||
32666539336635383065316136336166396664393333373235386162393162376163616137626638
|
61623461326334396539633364643031366231316535643135313935633439643361656136616532
|
||||||
32626539653864303437323966303064353761396563663764393662326139353936346665306664
|
34653635303631623639656165666231363563383336666337323361636137643564373565323238
|
||||||
62306665363235343166656661663631663531353636336162636338386130616630366339346533
|
35353965633230663166353161643033383666373530623739396139366137316438396333666231
|
||||||
64636231653835626538303638383432633866363166343837616666663132656566313435313834
|
34613136363939633565393336336633636665363838323230346262386335386365376262326462
|
||||||
31373966313737623033333432656462646439366133623361326339326236643966623131643130
|
34393539393365346364393432313665356465653866666538323134636630613137333261383364
|
||||||
62666433366238633239663866666236633965623937393362633333396565306466343537353535
|
39313362333832623837313235353331346434303166633137303234303062646337373664373861
|
||||||
35376236643335323437386363616530373861303665333431313839363533323737636533376639
|
32343037613362346134636531356463303739396364646339333138363064376632356534323834
|
||||||
37666463356539336365363234393065613962623366623663353066313736666132633966363537
|
64313864323065303531366435393864303035303331313737316137376361656438353739333830
|
||||||
36313238343739376238376337373364626239346336383035643964396461346433366331363135
|
64333234353837383938393861643236373338323436323863393933643332366363653935646264
|
||||||
36343938303234633462653737633162666536363834333334366230616136623261643137323462
|
37376336616162346161623136393662306137616638383134363964313835333332366430353364
|
||||||
33336466396665343762313261396466313235663638323830363931616361663061623031306565
|
64363730626564393134383534313130313633623137336630386364326365336262373963396239
|
||||||
62383337383736353838333632363562613262303265663437643332613931326362633032373233
|
32393061663964643036323233633232326232656363613339376663633761316639323737383365
|
||||||
39336432316138393535633163366462646630636130343765633562393731383133613139646130
|
33356562643530313434383639393766633733383263366162316332306532366362653737356539
|
||||||
32636134656239623136653836616165383136353732393265636633623032383136386331393061
|
63656366356333396165383330626535626232336137646464323665316464626139373964623163
|
||||||
33356437373831626431653933643135343164383664326136363238636664613234613839663935
|
31626230393661333164303834396331623934356538326166313635656437316236313630313463
|
||||||
35646639353761383764663363353739326439656265303836633765663161383564633463633339
|
65303633616637383436383737366361313736383262663130343932323830383763643235353264
|
||||||
32353639656162366533633437646661363535326164376134663463623062366631363563336331
|
36643966303937336636653037633739303364626638636438396332373862306665623037306336
|
||||||
33336538623066333061363436623131303464383961393233333664306331326165663362613062
|
61626330313364333639353366363131343434663139643361323836353065656137333162333130
|
||||||
64626432303762326164616234303064346662383566303562353931353463313332353861333164
|
65326364396665613763373565323165383638386135366235646437383130333434346635393566
|
||||||
33323062383334323935656333353938373838613338313230306231343533663066633436613535
|
61303263343132663531663237666337326365653737653731626364383665663334643139346338
|
||||||
33616537383534613930643366623065646666303861636130633938636637336339386461323839
|
66613266633263613037646334346661393063373330616431346161376137656139366166616264
|
||||||
63623531336138396335613839333961333939353038646539616532353162323933616564393964
|
64343737643662663134363265653063636665656366656135633932653165343361633835336665
|
||||||
31636362303731643935353535393632343962363333613863313361326365346164326130303563
|
35336139653939656162323366386435623134623062313461613261343264323731613732313435
|
||||||
62316338623862323931616661626333646562316565653433323234373736653837636134303337
|
65313436396464366662366533313162343233323836323336393665646361343438383063623964
|
||||||
63393736346130323063323862663238323066616636353139643565386332363339353735653832
|
63303761316666643237323364336139323536643664363331643565336166316163663731393065
|
||||||
32393861613731373561623738316432663665336161323064656436396663366436613663363137
|
30643638356231303563343433616335306435316161333937363937633131373536346464356539
|
||||||
35643232346530613436346438313537633664373434356262353933666263653965376438363231
|
36663865633336666539363734613131303931363732643665363866643533643763343433616561
|
||||||
63343931623638316337386335333163353034393465333861666136633865366136656161656330
|
66656238653734383131376330616535636138663933393032613166396436623436393563643336
|
||||||
65343961343561353438373266646239653561313836616232613836373264306537396663656365
|
38656164313566356566613331396539656531666462336163373034613232666439346633616166
|
||||||
31383030663035343462643266343239393866343537396335326530353163363732633138383634
|
35316636323064346531656631363265366335336265316362623438336230626332333838626265
|
||||||
33306536663565373865366237356434326439376437373966393532333262313938633030313838
|
61313834393664353133623132303332353633636464343764643334323866303664346563353839
|
||||||
32353638396164643162636131623639653466363238666562383832613838656137376532353561
|
34366534383963383366633765366337363835326133366264323239323266313433636538303537
|
||||||
34333233306639623139623662613733623363343563366239393038383737343961386461643630
|
65306230666335386332613638333738363965623934366338653133623434373831656361386437
|
||||||
38343032653061326237623166663061313831626461393165613439366363316232646461633162
|
37323232346236616236346539613739313237326433363961666535343634643937343331653366
|
||||||
32373234366631393831666531633062333061353032333965616632336333613531303533363134
|
32313864633562346132343538633035303432383033363939306663613939376261653662666161
|
||||||
39333434333563346164396333383534366430666232343039383032623637653163333735663761
|
39383639646338656233376130633966343637353238346435383637376636363631343037336236
|
||||||
30303634316530633461353632663665353765393733326234623963396264346233313834353539
|
36393361646161613736363135343964383364316265343939393333323937376661356331376465
|
||||||
32653133363832633731633135333863386163393363623664356166633863653334363466616234
|
62616333306137643366386561343234663836653833666239383835393031303163393365356661
|
||||||
33663666623135343066633062303930616463376238353436303730323663623338313736353135
|
31356537313530333934653564353039623766326236663635396539616533303831613135653738
|
||||||
62373664306237303039633366623163623731316566393530626631393430663738366634623961
|
31373234346439373230613139636661656636393238363132383732376436646638643131376435
|
||||||
37663033373962313238386136646565356565343066396237313265313364393062363063616236
|
36376435336232353333353563616164643632363565633639623161386436643663656132373135
|
||||||
37303035616665393031323665613334323234343235303862346539613462326337393363613534
|
35646365336365333931653665343461663263333432306131633335333766396165363631663930
|
||||||
65646331396336333638636239613930323561646438613139326635366433316331363931646538
|
66633039383564613739653436666330363661666631353461613333313632333032373939626263
|
||||||
66313562366261373539663664386636303735313764393163346634653863343461623938393933
|
38326164303131386461613962326166666434393031633365306332383663303638666330363632
|
||||||
32623465306137653634373765333132346263343334306330666137303637363961303839633030
|
31343135613065623464646661623865643765613838376434393765663366343961646432306135
|
||||||
35323565363463366433646661326435653765636665343139373635303163633730363037333264
|
62356234323436653166613462373931616236333265616465346564653563323233383962306162
|
||||||
31326566643965373764366438623462313237353435326161616537363238666363636236653631
|
33393030663330336332316332343731666561346539633531653431303934316663363964616236
|
||||||
32623638356362363533396263336632326164346366373336343963653865636561316431376233
|
37336236346563346533643338366433343035653766383663306333633031343462383931343465
|
||||||
30653939323561336634343337303136316137396539376538303237623134346164393838626266
|
38663432383865616432326236376633353935323434333431313739353232343762626439366263
|
||||||
62313535373737343731313635636232373933316235353930356362656666316331626631346536
|
39333762343761613861396431643561653665303831613964363733396663356333373437383766
|
||||||
31646535633062663132316335356564643132373334333736656165643661306232313031613233
|
66343831373463623233646438393537313966613238366334356331356234356232663066316635
|
||||||
34356535373264336438626636306263333230383761366533323433376335313530643339653062
|
66636666333465643132383536643234343135396632393265663465393930346138383761363139
|
||||||
37306533383664386265316262613831373836303966363961376531313337386137353634333133
|
62623966613964373963623362343164623837626638623330383932396638363766383166653462
|
||||||
38353166353739346463383465656362363537656262363537643262333961353264316639376235
|
65346634646264313132623332633536383236376336313339356561663339656430623866306336
|
||||||
62613737643035303930303065663331333239653531636434353663653164363838633135363836
|
66393263656461316433663735353733646638633430663635643064386633666334326437613839
|
||||||
31356161666631333037626137623738626333656331633261366436336337316230656165633631
|
36316333326663663664363436613933636532393630346430313931633533623035346366343934
|
||||||
33326265633365353831363530333533393731666261343730643633373635393062353132326164
|
61303437666334323231343336366330656261646566653938653733633933653562373938633962
|
||||||
65653431623539333363386336666134633630646436393437663539353561353634303634623136
|
30386438343166316366646565333766393930303435663362303432646337323465316261623565
|
||||||
38343665343532636364316364376662313966316532343135356138643262653363656434363238
|
363632346536336638383065656231373538
|
||||||
62636330353735666131646363316133346464393135313762353863623063346661383063336132
|
|
||||||
33626238653061306364313765386666326237383131353664313564343764663666356563643463
|
|
||||||
39373261346161353161363539323166623032346364303834663865386462663738303265613132
|
|
||||||
62643266356236343962353331303337333535646231656163666433386333303830666362393733
|
|
||||||
64346435656632643239343836303134356265643635356465636166396334663536323762613062
|
|
||||||
66373964653563646135643763343031353366333936363636346331396462313033393965613564
|
|
||||||
32656232613061373035623661386564666566313636663030366662646163376135386539353865
|
|
||||||
63326139353135356666373436653832626234366639656337333465336339306339613232613363
|
|
||||||
61356237313631636131366632663330373131633832363135326362376237626264306232663338
|
|
||||||
38323539613862353464326264373064386430633432356336363337643739653935643130316439
|
|
||||||
36653834656237633030623031643763313365346333376635663064363866313831303537303665
|
|
||||||
32316336643530373431626539663731316136376331366332623433626538353235346135616162
|
|
||||||
36313961343166636463663033373839366636326261323562323762633164656539393165333265
|
|
||||||
64396233616132636437396335393066643838373465363931336266346261656461343935393838
|
|
||||||
66343366393630666639303533386136633835353631326530373536323866343933636634343930
|
|
||||||
33366231623764666137393464656634336530333732613838393539393136363338626337363939
|
|
||||||
34356337623965656137643439333265626437373563383337353836356330316333386464393832
|
|
||||||
37626536386539353266393762333534393837386533313632616464303866383833613161313564
|
|
||||||
31653936653638633035353936333234383935633638633237313638353563373539626634323566
|
|
||||||
63656330633938366133643430383237313866613166646334383937633164376330623264666162
|
|
||||||
37643837343037393063383263373238363734366338346635373036373033393263333563343931
|
|
||||||
31656337343037316563646165623934333038303063323938656339613139353466643834623933
|
|
||||||
36656538363961316161613139323038323663323737356433363930326461383763643062323639
|
|
||||||
636136323230393862353433343232626464
|
|
||||||
|
@ -1,82 +0,0 @@
|
|||||||
---
|
|
||||||
ansible_user: administrator
|
|
||||||
data_folder: "/data"
|
|
||||||
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
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
MYSQL_ROOT_PASSWORD: MYSQLPASSWORD
|
|
||||||
MYSQL_HOST: MYSQLHOSTNAME
|
|
||||||
|
|
||||||
MAIL_HOST: SMTPHOST
|
|
||||||
MAIL_PORT: 25
|
|
||||||
MAIL_FROM: emailfrom@email.com
|
|
||||||
MAIL_FROM_NAME: EMAIL NAME
|
|
||||||
MAIL_ADMIN: emailadmin@email.com
|
|
||||||
|
|
||||||
#Postgres
|
|
||||||
POSTGRES_PASSWORD: POSTGRESADMIN
|
|
||||||
|
|
||||||
# Proxmox API variables
|
|
||||||
api_host: "{{ ansible_host }}"
|
|
||||||
api_user: root@pam
|
|
||||||
api_password: APIPASSWORD
|
|
||||||
api_token_id: APIID
|
|
||||||
api_token_secret: xxxxxxx
|
|
||||||
|
|
||||||
# Proxmox node target
|
|
||||||
node_target: pve
|
|
||||||
|
|
||||||
# VM storage target
|
|
||||||
storage_target: local-zfs
|
|
||||||
|
|
||||||
#Gitea
|
|
||||||
gitea_db_root_password: "GITEA_ROOT_PASSWORD"
|
|
||||||
gitea_db_user: "GITEA_DBUSER
|
|
||||||
gitea_db_password: "GITEA_DBPASS"
|
|
||||||
|
|
||||||
OG_GITEA_KEY: xxxxxxx
|
|
||||||
OG_GITEA_SECRET: xxxxxxx
|
|
||||||
|
|
||||||
# Invoice Ninja Variables
|
|
||||||
IN_APP_KEY: base64:xxxxxx
|
|
||||||
IN_APP_URL: https://invoice.ninja.com
|
|
||||||
IN_DB_DATABASE: invoiceninja
|
|
||||||
IN_DB_USERNAME: invoiceninja
|
|
||||||
IN_DB_PASSWORD: invoiceninja
|
|
||||||
|
|
||||||
#Speedtest-Tracker
|
|
||||||
ST_DATABASE: speedtest_tracker
|
|
||||||
ST_DB_USERNAME: speedtest_dbuser
|
|
||||||
ST_DB_PASSWORD: speedtest_dbpass
|
|
||||||
|
|
||||||
GITEA_RUNNER_TOKEN: gitea_runner_token
|
|
||||||
|
|
||||||
VAULTWARDEN_BACKUP_ZIP_PASSWORD: vaultwarden_password
|
|
||||||
|
|
||||||
TEAMS: webhook_teams_url
|
|
||||||
|
|
12
hosts
12
hosts
@ -1,15 +1,9 @@
|
|||||||
[proxmox]
|
|
||||||
pve2.comprofix.xyz ansible_user=root
|
|
||||||
|
|
||||||
[cloud]
|
[cloud]
|
||||||
vps02.comprofix.com
|
vps02.comprofix.com
|
||||||
|
|
||||||
[docker]
|
# [docker]
|
||||||
docker.comprofix.xyz
|
# docker.comprofix.xyz
|
||||||
|
|
||||||
|
|
||||||
[omada]
|
|
||||||
omada-lxc.comprofix.xyz ansible_user=root
|
|
||||||
|
|
||||||
[vps]
|
|
||||||
vps01.comprofix.com
|
|
||||||
|
|
||||||
|
207
main.yml
207
main.yml
@ -1,10 +1,11 @@
|
|||||||
---
|
---
|
||||||
|
|
||||||
- hosts: all
|
- hosts: all
|
||||||
name: Configure all servers
|
name: Configure all servers
|
||||||
tasks:
|
tasks:
|
||||||
- name: Gather facts if run with tags
|
- name: Gather facts if run with tags
|
||||||
ansible.builtin.setup:
|
ansible.builtin.setup:
|
||||||
when: ansible_run_tags | length
|
when: ansible_run_tags | length
|
||||||
tags: always
|
tags: always
|
||||||
|
|
||||||
- hosts: all
|
- hosts: all
|
||||||
@ -16,15 +17,6 @@
|
|||||||
- hosts: cloud
|
- hosts: cloud
|
||||||
become: yes
|
become: yes
|
||||||
roles:
|
roles:
|
||||||
- role: oefenweb.fail2ban
|
|
||||||
vars:
|
|
||||||
fail2ban_services:
|
|
||||||
- name: sshd
|
|
||||||
port: 22
|
|
||||||
maxretry: 3
|
|
||||||
bantime: -1
|
|
||||||
tags: fail2ban
|
|
||||||
|
|
||||||
- role: docker
|
- role: docker
|
||||||
tags: docker_install
|
tags: docker_install
|
||||||
|
|
||||||
@ -34,6 +26,10 @@
|
|||||||
tags: traefik_install
|
tags: traefik_install
|
||||||
|
|
||||||
tasks:
|
tasks:
|
||||||
|
# - name: Deploy Homepage
|
||||||
|
# import_tasks: tasks/homepage.yml
|
||||||
|
# tags: homepage_install
|
||||||
|
|
||||||
- name: Deploy Vaultwarden
|
- name: Deploy Vaultwarden
|
||||||
import_tasks: tasks/vaultwarden.yml
|
import_tasks: tasks/vaultwarden.yml
|
||||||
tags: vaultwarden_install
|
tags: vaultwarden_install
|
||||||
@ -41,149 +37,96 @@
|
|||||||
- name: Deploy gitea
|
- name: Deploy gitea
|
||||||
import_tasks: tasks/gitea.yml
|
import_tasks: tasks/gitea.yml
|
||||||
tags: gitea_install
|
tags: gitea_install
|
||||||
|
|
||||||
- name: Uptime-kuma
|
|
||||||
import_tasks: tasks/uptimekuma.yml
|
|
||||||
tags: uptimekuma_install
|
|
||||||
|
|
||||||
- name: Gotify
|
|
||||||
import_tasks: tasks/gotify.yml
|
|
||||||
tags: gotify_install
|
|
||||||
tags: cloud_install
|
tags: cloud_install
|
||||||
|
|
||||||
- hosts: docker
|
# - hosts: docker
|
||||||
become: yes
|
# become: yes
|
||||||
pre_tasks:
|
# roles:
|
||||||
- name: Connect iscsi
|
# - role: docker
|
||||||
import_tasks: tasks/iscsi.yml
|
# tags: docker_install
|
||||||
tags: iscsi_connect
|
# - role: nfs
|
||||||
|
# mounts:
|
||||||
|
# - name: Docker share
|
||||||
|
# path: /mnt/nfs/docker
|
||||||
|
# src: truenas.comprofix.xyz:/mnt/datapool/docker
|
||||||
|
# - 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
|
||||||
|
# data_folder: "/mnt/nfs/docker"
|
||||||
|
# tags: traefik_install
|
||||||
|
# tasks:
|
||||||
|
# - name: Deploy iDrac Fan Controller
|
||||||
|
# import_tasks: tasks/idrac.yml
|
||||||
|
# tags: idrac_install
|
||||||
|
|
||||||
roles:
|
# - name: Deploy MariaDB
|
||||||
- role: oefenweb.fail2ban
|
# import_tasks: tasks/mariadb.yml
|
||||||
vars:
|
# tags: mariadb_install
|
||||||
fail2ban_services:
|
|
||||||
- name: sshd
|
|
||||||
port: 22
|
|
||||||
maxretry: 3
|
|
||||||
bantime: -1
|
|
||||||
tags: fail2ban
|
|
||||||
|
|
||||||
- role: docker
|
# - name: Deploy InvoiceNinja
|
||||||
tags: docker_install
|
# import_tasks: tasks/invoiceninja.yml
|
||||||
- role: nfs
|
# tags: invoiceninja_install
|
||||||
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
|
# - name: Deploy osTicket
|
||||||
import_tasks: tasks/idrac.yml
|
# import_tasks: tasks/osticket.yml
|
||||||
tags: idrac_install
|
# tags: osticket_install
|
||||||
|
|
||||||
- name: Deploy MariaDB
|
# - name: Deploy speedtest-tracker
|
||||||
import_tasks: tasks/mariadb.yml
|
# import_tasks: tasks/speedtest.yml
|
||||||
tags: mariadb_install
|
# tags: speedtest_install
|
||||||
|
|
||||||
- name: Deploy InvoiceNinja
|
# - name: Deploy dozzle
|
||||||
import_tasks: tasks/invoiceninja.yml
|
# import_tasks: tasks/dozzle.yml
|
||||||
tags: invoiceninja_install
|
# tags: dozzle_install
|
||||||
|
|
||||||
- name: Deploy Homepage
|
# - name: Deploy jellyseerr
|
||||||
import_tasks: tasks/homepage.yml
|
# import_tasks: tasks/jellyseerr.yml
|
||||||
tags: homepage_install
|
# tags: jellyseerr_install
|
||||||
|
|
||||||
# - name: Deploy osTicket
|
# - name: Deploy lidarr
|
||||||
# import_tasks: tasks/osticket.yml
|
# import_tasks: tasks/lidarr.yml
|
||||||
# tags: osticket_install
|
# tags: lidarr_install
|
||||||
|
|
||||||
- name: Deploy speedtest-tracker
|
# - name: Deploy prowlarr
|
||||||
import_tasks: tasks/speedtest.yml
|
# import_tasks: tasks/prowlarr.yml
|
||||||
tags: speedtest_install
|
# tags: prowlarr_install
|
||||||
|
|
||||||
- name: Deploy dozzle
|
# - name: Deploy radarr
|
||||||
import_tasks: tasks/dozzle.yml
|
# import_tasks: tasks/radarr.yml
|
||||||
tags: dozzle_install
|
# tags: radarr_install
|
||||||
|
|
||||||
- name: Deploy jellyseerr
|
# - name: Deploy readarr
|
||||||
import_tasks: tasks/jellyseerr.yml
|
# import_tasks: tasks/readarr.yml
|
||||||
tags: jellyseerr_install
|
# tags: readarr_install
|
||||||
|
|
||||||
- name: Deploy lidarr
|
# - name: Deploy sonarr
|
||||||
import_tasks: tasks/lidarr.yml
|
# import_tasks: tasks/sonarr.yml
|
||||||
tags: lidarr_install
|
# tags: sonarr_install
|
||||||
|
|
||||||
- name: Deploy prowlarr
|
# - name: Deploy sabnzbd
|
||||||
import_tasks: tasks/prowlarr.yml
|
# import_tasks: tasks/sabnzbd.yml
|
||||||
tags: prowlarr_install
|
# tags: sabnzbd_install
|
||||||
|
|
||||||
- name: Deploy radarr
|
# - name: Deploy mealie
|
||||||
import_tasks: tasks/radarr.yml
|
# import_tasks: tasks/mealie.yml
|
||||||
tags: radarr_install
|
# tags: mealie_install
|
||||||
|
|
||||||
|
# - name: Deploy pyKMS
|
||||||
|
# import_tasks: tasks/pykms.yml
|
||||||
|
# tags: pykms_install
|
||||||
|
# tags: dockerserver_install
|
||||||
|
|
||||||
- name: Deploy readarr
|
|
||||||
import_tasks: tasks/readarr.yml
|
|
||||||
tags: readarr_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
|
|
||||||
|
|
||||||
tags: dockerserver_install
|
|
||||||
|
|
||||||
- hosts: omada
|
|
||||||
become: yes
|
|
||||||
pre_tasks:
|
|
||||||
- name: Update packages
|
|
||||||
import_tasks: tasks/base.yml
|
|
||||||
tags: base_install
|
|
||||||
roles:
|
|
||||||
- role: docker
|
|
||||||
tags: docker_install
|
|
||||||
- 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
|
|
||||||
|
@ -1,25 +1,8 @@
|
|||||||
{
|
{
|
||||||
"$schema": "https://docs.renovatebot.com/renovate-schema.json",
|
"$schema": "https://docs.renovatebot.com/renovate-schema.json",
|
||||||
"extends": [
|
"extends": [
|
||||||
"config:recommended",
|
"config:base",
|
||||||
"renovatebot/renovate-config",
|
"renovatebot/renovate-config",
|
||||||
":semanticCommitTypeAll(chore)"
|
":semanticCommitTypeAll(chore)"
|
||||||
],
|
|
||||||
"ignoreDeps": [
|
|
||||||
"postgres"
|
|
||||||
],
|
|
||||||
"automerge": true,
|
|
||||||
"automergeType": "branch",
|
|
||||||
"automergeStrategy": "rebase",
|
|
||||||
"commitBodyTable": true,
|
|
||||||
"ignoreTests": true,
|
|
||||||
"major": {
|
|
||||||
"automerge": false,
|
|
||||||
"dependencyDashboardApproval": true,
|
|
||||||
"commitMessagePrefix": "chore(deps-major): ",
|
|
||||||
"labels": [
|
|
||||||
"dependencies",
|
|
||||||
"breaking"
|
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
@ -43,7 +43,6 @@
|
|||||||
- name: Setup cron job for backup
|
- name: Setup cron job for backup
|
||||||
cron:
|
cron:
|
||||||
name: Docker Prune
|
name: Docker Prune
|
||||||
weekday: 0
|
|
||||||
minute: 0
|
minute: 0
|
||||||
hour: 5
|
hour: 5
|
||||||
job: "docker system prune -af && docker image prune -af && docker system prune -af --volumes"
|
job: "docker system prune -af && docker image prune -af && docker system prune -af --volumes"
|
@ -1,51 +1,51 @@
|
|||||||
$ANSIBLE_VAULT;1.1;AES256
|
$ANSIBLE_VAULT;1.1;AES256
|
||||||
37343136353335343463623731343362353963316537633761656266316261383536373063316637
|
36326633353666613166393030633363373435666230663138303735323132663930663663383138
|
||||||
6438653861376433323561646139626366333065353562320a633166336330633932376336366530
|
3131616265626633663430353835663866356436373533390a623564333539306162613532393661
|
||||||
32656561333432613261643430656531636266323664373331646133656434313834393231313561
|
61326437363033383862343034356639316162363364356135616132396136383962333062653566
|
||||||
6364646637323665310a303036306637636163366237376364373464646334653463383831623137
|
3966323033663162640a323461656637633062373134656237323339346638663338353266386164
|
||||||
33313632613936373836373539383338313738623564633663323738633735383934333534316433
|
30653839343165663937653534313335316336356262303331643839643733663264643265633337
|
||||||
38666635306462396334386436333939313563353831386332373261373363653463623036313438
|
62633265656330353536663762643130636466353165336535393033663937396364373064363133
|
||||||
64313538363238323639656239336163393037383539613536303664363030636564623466323363
|
66323931663164313235316638393838326532643233636663333635656162343333643233646131
|
||||||
31663631353561366161343630366136313130643531616463373331303936663362346135383535
|
33336239393035613839646434643633313239393764613836343039383361613437626334643534
|
||||||
66613664653938383231313461306332303966366534643331333531393431303465316664393031
|
33373461336363636162646631323266353235326361393338366563653663343537633765653261
|
||||||
33643736323031333937383964663864306339613539393638316237636566373761633139663437
|
30393863323134376466346663376432623938376638393135356439326562656534376233646364
|
||||||
33663333343535316538643339646166326137663636373930303237643063313132393039306532
|
31353336396362323363323964383635303264646661626662333161303961383333636437393264
|
||||||
61336563646239643139353437666534313037656661626365623265316338366436623437363836
|
61623638303066343832303034633736343031333732633437356134393837663637653738303837
|
||||||
61356631343039623064666138393735616637633032333739663633383263656264393636303437
|
65643264663564643432363830373861323062393561386261323638353339663835663830653633
|
||||||
34373232333633323136366466346134363937383833636334313530616362303339636565333035
|
35373865383832656665333263323463303631343239346632336565393032333865353364386431
|
||||||
30343332313136653862633066393034653730383031653539333534636565353635393539346437
|
34633064356233626337646439623665613039666632366162346534656438393965623836366230
|
||||||
61383063646436346165613938636262336363326433353563626134663162653335376566313733
|
38323765633333663266656161376233343131646165343538653335653061363435316536313339
|
||||||
33363633666632323363353063613761346333663433396531633165363432346565326136356363
|
65366539313338623030663233633766373865653938616437323664633537306162353438373564
|
||||||
64653830376435313539363832356433623461663830653261313363323631376533333437366265
|
30383831353563663834373731356330393535613162313461303265353461643434613833376330
|
||||||
31373163353839656366393431623463636538373962656164633734326536353165383764343339
|
39653063363666353261373161636434366464306539306538623533373764666466383766646166
|
||||||
61353435383264646531663365626438313534663839323733613939336236333164353732313531
|
63313263626539316163656431393534393266666632366430323439373931636235663137393363
|
||||||
38336135613832626639633463383866346535666136643831326432656638393139333061653436
|
66323338643835356338646565653235333762343162636434653561626630333233343232633365
|
||||||
37633037646166653463306339663334353331623939633930623835393761653336623931616436
|
64353139376236363039343432636563316562383263336434376236613734396564393137366531
|
||||||
32353030666665303833366430373564613161353838613165633537396465623334656538313939
|
35613232646638313435326234366335356538393331363862353232353961373734646332646635
|
||||||
30313834376239356163386638333934343537616532353734666237353863396162643834613939
|
37323930623932326164323831393462653331373562336264613635396339653161303863623739
|
||||||
32643634316232663963336261633830666161613462666230366136663136356137356635366538
|
34303532376335623533373466366464666662653533363963326536633938333833376432616330
|
||||||
34653931303839396365333763363935663163346264336237373234303235343764393965373963
|
62326261366463323934663939316338306535323935623935323337333866353539336132326564
|
||||||
61363964643933623366333465393936303431303133353038386235653633663732646332396539
|
64623739623064333932386363353235356431656339663039643631353264376234316430356235
|
||||||
39323331353633313231633062643539346465643136386638393661616138626563343231663662
|
33326233356638646163633333613736343732626263333631336333343434353164333436653331
|
||||||
39383436656662356663343763323631346463323930633333643531353537376235643231396639
|
64376539336562393538613134633933373339363737363364623066383130653033633966316665
|
||||||
30373434346534633763656439616435303333306164663238623532303164636334636564303161
|
36323361656131623435346565323638313030343762313765646264396461616165393762366436
|
||||||
38393933303866396436333462373137393662386534393766616163373163633431316135383537
|
65363563313439376437626533386262323036346436663030303736363061396639633338386337
|
||||||
38393136656533363865363633313963653434646230633964623362303338646631633532666630
|
65623534393561643662653538633630363663326430383030393062323934326465313533303662
|
||||||
63633831653066363166373837656630363035393831313163326562643837613238663361643030
|
30323861613333353465396536653632373934363162393465373466636132383064663063383834
|
||||||
66626461616262373531396338663464663833306434653035326337373865376636383764363163
|
66653938346463663335333737386339666430643034386335353938633232323333633238643035
|
||||||
31356264373636326261373264363461663362316564633566303034646365303332626663306130
|
37643239383936393233353735333164663566663833383763306635646666666365336161316437
|
||||||
36613438653533663961326538326139636164636632616365393662643534386265333061363136
|
64343032376139373036366433376263376565656435336662656661336530323130356266353265
|
||||||
30646437333736383037343731376563646437343530616238623838383135613836663439303137
|
32316361623238386530303533343763646533653631613965386639386237303965636634353366
|
||||||
38366363356138336461393563633464373165663661323964333764663734633037343134353963
|
31363137376633376532383361376631663734653262616237373933363330323337386434623261
|
||||||
30643735343364656365653236336633323739363039316631313462333838636131363165646238
|
63656364653162323463626361633533353132666563393538383332306263316639396530323131
|
||||||
36666539663665626335386139663762343030336364326361653539343731363536313532643437
|
63646566623064393930343137623564323234383430363365313834336464333432623466646139
|
||||||
31613635336536386233396662646135303731333263343362336337656232333964636139346333
|
33343833353339633236613439623735316538373962663365623963663639663264396238363465
|
||||||
39333065323032393434333462303536396363633335623363623035366235353763356466653266
|
61313338343435313035643163316631303433383738393162633032613830663264386538343763
|
||||||
62323563363766383630313961663566336562363933393930303463356434383665336130323735
|
30363434653461396239306334333366333232373732353362666538323063313934346433666334
|
||||||
65306132343835643662366463363039626638646261666233333861373533366365646334313335
|
35363236333038333363653737656362653362376338653364636566346637376566306632326438
|
||||||
37613537383931636430303635343236636566336163323761326134326465356436616361623631
|
32663930613066343361616665396334393863643963316239313735363539333263656133356665
|
||||||
36393130626637633564356331643931653062363261636562616662623239623134653433393961
|
62663236366665373637373436656630336630393333393164343265306533666366333964333338
|
||||||
38366462633363626261343962653930646530633932343837323230336531386336313132613635
|
36376337376366333835326565323735613961323264663466356635653763343331373561666632
|
||||||
32616261623931313039326430366636363231646530396638663931653664663336656565303338
|
61343466643661636335373663386466333232393064623538666636653439363639386462373238
|
||||||
64336435373133613364613238656332383361363364626633306138326464316262643065303637
|
38613862656363373434353037613135363464313864386361323136613762306632653838616463
|
||||||
3363376131386438376534383636636234363837373037393736
|
3438636539363664613934313333336535623165306438353130
|
||||||
|
@ -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: {}
|
|
2
roles/portainer/defaults/main.yml
Normal file
2
roles/portainer/defaults/main.yml
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
---
|
||||||
|
# defaults file for common
|
52
roles/portainer/meta/main.yml
Normal file
52
roles/portainer/meta/main.yml
Normal file
@ -0,0 +1,52 @@
|
|||||||
|
galaxy_info:
|
||||||
|
author: Matthew McKinnon
|
||||||
|
description: Portainer CE
|
||||||
|
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.
|
29
roles/portainer/tasks/main.yml
Normal file
29
roles/portainer/tasks/main.yml
Normal file
@ -0,0 +1,29 @@
|
|||||||
|
---
|
||||||
|
- name: Create directories
|
||||||
|
file:
|
||||||
|
path: "{{ item }}"
|
||||||
|
state: directory
|
||||||
|
with_items:
|
||||||
|
- "{{ data_folder }}/portainer"
|
||||||
|
|
||||||
|
- name: Create Portainer Container
|
||||||
|
docker_container:
|
||||||
|
name: portainer
|
||||||
|
image: portainer/portainer-ce:2.21.0
|
||||||
|
command: --admin-password "{{PORTAINER_ADMIN_PASSWORD}}"
|
||||||
|
restart_policy: unless-stopped
|
||||||
|
volumes:
|
||||||
|
- "{{ data_folder }}/portainer/data:/data"
|
||||||
|
- '/var/run/docker.sock:/var/run/docker.sock'
|
||||||
|
networks:
|
||||||
|
- name: proxy
|
||||||
|
labels:
|
||||||
|
traefik.enable: "true"
|
||||||
|
traefik.http.routers.portainer-secure.rule: "Host(`{{portainer_host}}`)"
|
||||||
|
traefik.http.routers.portainer-secure.entrypoints: "https"
|
||||||
|
traefik.http.routers.portainer-secure.tls: "true"
|
||||||
|
traefik.http.routers.portainer-secure.service: "portainer"
|
||||||
|
traefik.http.services.portainer.loadbalancer.server.port: "9443"
|
||||||
|
traefik.http.services.portainer.loadbalancer.server.scheme: "https"
|
||||||
|
register: container_portainer
|
||||||
|
|
14
roles/portainer/vars/main.yml
Normal file
14
roles/portainer/vars/main.yml
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
$ANSIBLE_VAULT;1.1;AES256
|
||||||
|
66663364383263343838636561393437373730633165306539633566356166313664656166633537
|
||||||
|
6333663336336463613565666465663430303665323766300a393063366230643139363061633636
|
||||||
|
65303631383230396461303836386335306261613664393762393266636437333634663464353137
|
||||||
|
6563366664663331380a346534323264633738663063356565643137323964663964656137633363
|
||||||
|
33333264383830666637376337633432353732353630333134353638653234333730636166356164
|
||||||
|
33363433343432623762393834336637626562613633393963323963623661643862636362313930
|
||||||
|
37346233373231663762346633323634666436323364653136656630636462333638316632626435
|
||||||
|
30336433353961333334386134383032356633643261656639623237386439653739363133633836
|
||||||
|
65333065336464386164363037363766353066396163386561323338326439376138316131306636
|
||||||
|
65376230383666393762393938313535386131313134613033393936633139363366373065623033
|
||||||
|
33353733613439383366393864623130396231323433393732653966653132313262346538646334
|
||||||
|
63303831333465613962653661656237326364396465366234383663333431366233363133623936
|
||||||
|
62663632356361323930326230326565366366663733633137633938643564373766
|
@ -6,8 +6,6 @@
|
|||||||
with_items:
|
with_items:
|
||||||
- "{{ data_folder }}/traefik"
|
- "{{ data_folder }}/traefik"
|
||||||
- "{{ data_folder }}/traefik/data"
|
- "{{ data_folder }}/traefik/data"
|
||||||
- "{{ data_folder }}/traefik/data/log"
|
|
||||||
|
|
||||||
|
|
||||||
- name: Create a network
|
- name: Create a network
|
||||||
docker_network:
|
docker_network:
|
||||||
@ -18,14 +16,7 @@
|
|||||||
template:
|
template:
|
||||||
src: templates/traefik.yml.j2
|
src: templates/traefik.yml.j2
|
||||||
dest: "{{ data_folder }}/traefik/data/traefik.yml"
|
dest: "{{ data_folder }}/traefik/data/traefik.yml"
|
||||||
mode: "0600"
|
mode: '0600'
|
||||||
|
|
||||||
- name: Copy Traefik config
|
|
||||||
template:
|
|
||||||
src: templates/config.yml.j2
|
|
||||||
dest: "{{ data_folder }}/traefik/data/config.yml"
|
|
||||||
mode: "0600"
|
|
||||||
when: traefik_host == "traefik02.comprofix.xyz"
|
|
||||||
|
|
||||||
- name: Check if {{ data_folder }}/traefik/data/acme.json exists
|
- name: Check if {{ data_folder }}/traefik/data/acme.json exists
|
||||||
ansible.builtin.stat:
|
ansible.builtin.stat:
|
||||||
@ -38,27 +29,27 @@
|
|||||||
state: touch
|
state: touch
|
||||||
owner: root
|
owner: root
|
||||||
group: root
|
group: root
|
||||||
mode: "0600"
|
mode: '0600'
|
||||||
when: not file_status.stat.exists
|
when: not file_status.stat.exists
|
||||||
|
|
||||||
- name: Check if traefik.json.log exists
|
- name: Check if {{ data_folder }}/traefik/data/traefik.json.log exists
|
||||||
ansible.builtin.stat:
|
ansible.builtin.stat:
|
||||||
path: "{{ data_folder }}/traefik/data/log/traefik.json.log"
|
path: "{{ data_folder }}/traefik/data/traefik.json.log"
|
||||||
register: file_status
|
register: file_status
|
||||||
|
|
||||||
- name: Creates traefik.json.log if it doesn't exists
|
- name: Creates {{ data_folder }}/traefik/data/traefik.json.log if it doesn't exists
|
||||||
ansible.builtin.file:
|
ansible.builtin.file:
|
||||||
path: "{{ data_folder }}/traefik/data/log/traefik.json.log"
|
path: "{{ data_folder }}/traefik/data/traefik.json.log"
|
||||||
state: touch
|
state: touch
|
||||||
owner: root
|
owner: root
|
||||||
group: root
|
group: root
|
||||||
mode: "0600"
|
mode: '0600'
|
||||||
when: not file_status.stat.exists
|
when: not file_status.stat.exists
|
||||||
|
|
||||||
- name: Create traefik Container
|
- name: Create traefik Container
|
||||||
docker_container:
|
docker_container:
|
||||||
name: traefik
|
name: traefik
|
||||||
image: traefik:v3.4
|
image: traefik:v3.1
|
||||||
restart_policy: unless-stopped
|
restart_policy: unless-stopped
|
||||||
networks:
|
networks:
|
||||||
- name: "proxy"
|
- name: "proxy"
|
||||||
@ -73,8 +64,8 @@
|
|||||||
- /var/run/docker.sock:/var/run/docker.sock:ro
|
- /var/run/docker.sock:/var/run/docker.sock:ro
|
||||||
- "{{ data_folder }}/traefik/data/traefik.yml:/traefik.yml:ro"
|
- "{{ data_folder }}/traefik/data/traefik.yml:/traefik.yml:ro"
|
||||||
- "{{ data_folder }}/traefik/data/acme.json:/acme.json"
|
- "{{ data_folder }}/traefik/data/acme.json:/acme.json"
|
||||||
- "{{ data_folder }}/traefik/data/log:/var/log/traefik"
|
- "{{ data_folder }}/traefik/data/traefik.json.log:/traefik.json.log"
|
||||||
- "{{ data_folder }}/traefik/data/config.yml:/config.yml:ro"
|
# - ./data/config.yml:/config.yml:ro
|
||||||
labels:
|
labels:
|
||||||
traefik.enable: "true"
|
traefik.enable: "true"
|
||||||
traefik.http.routers.traefik.entrypoints: "http"
|
traefik.http.routers.traefik.entrypoints: "http"
|
||||||
|
@ -1,51 +0,0 @@
|
|||||||
---
|
|
||||||
http:
|
|
||||||
routers:
|
|
||||||
oc-router:
|
|
||||||
entryPoints:
|
|
||||||
- "https"
|
|
||||||
service: oc-service
|
|
||||||
rule: "Host(`omada.comprofix.xyz`)" # change it to actual address
|
|
||||||
tls: {}
|
|
||||||
middlewares:
|
|
||||||
- default-headers
|
|
||||||
- https-redirect
|
|
||||||
|
|
||||||
services:
|
|
||||||
oc-service:
|
|
||||||
loadBalancer:
|
|
||||||
servers:
|
|
||||||
- url: https://omada-lxc.comprofix.xyz:8043 # change it to actual ip of the controller
|
|
||||||
|
|
||||||
middlewares:
|
|
||||||
https-redirect:
|
|
||||||
redirectScheme:
|
|
||||||
scheme: https
|
|
||||||
permanent: true
|
|
||||||
|
|
||||||
default-headers:
|
|
||||||
headers:
|
|
||||||
frameDeny: true
|
|
||||||
sslRedirect: true
|
|
||||||
browserXssFilter: true
|
|
||||||
contentTypeNosniff: true
|
|
||||||
forceSTSHeader: true
|
|
||||||
stsIncludeSubdomains: true
|
|
||||||
stsPreload: true
|
|
||||||
stsSeconds: 15552000
|
|
||||||
customFrameOptionsValue: SAMEORIGIN
|
|
||||||
customRequestHeaders:
|
|
||||||
X-Forwarded-Proto: https
|
|
||||||
|
|
||||||
default-whitelist:
|
|
||||||
IPAllowList:
|
|
||||||
sourceRange:
|
|
||||||
- "10.0.0.0/8"
|
|
||||||
- "192.168.0.0/16"
|
|
||||||
- "172.16.0.0/12"
|
|
||||||
- "100.64.0.0/10"
|
|
||||||
|
|
||||||
secured:
|
|
||||||
chain:
|
|
||||||
middlewares:
|
|
||||||
- default-headers
|
|
@ -18,7 +18,7 @@ serversTransport:
|
|||||||
|
|
||||||
log:
|
log:
|
||||||
level: DEBUG
|
level: DEBUG
|
||||||
filePath: /var/log/traefik/traefik.json.log
|
filePath: /traefik.json.log
|
||||||
format: json
|
format: json
|
||||||
|
|
||||||
providers:
|
providers:
|
||||||
|
@ -1,14 +1,14 @@
|
|||||||
$ANSIBLE_VAULT;1.1;AES256
|
$ANSIBLE_VAULT;1.1;AES256
|
||||||
38396437323435636166363366326233663861666162656237663034386263386139373466656632
|
65353236643865303034613264613133353338613962646164333936353761336231643332303164
|
||||||
3631643461306662323430643733333862316466646663310a616439373762623461633437366165
|
3834613038663965376661373336646433353437373132300a353663633034643265653937396238
|
||||||
31653338643738323532313136353937323134646139623138383731626562666135343561353661
|
66326632323432646239663762626230326338666138653330323566633864623734396639323062
|
||||||
6365613431386131370a376330396239373864323662386463346636663231356236323738633061
|
3735326666306239370a383439646335343965316464386265613437646163636335393139316232
|
||||||
36653434333662336231373939363863633630393134383934616165646232373262363338663631
|
61396631356263333933626334313438633132663764326539393663636631303538636131303830
|
||||||
31643464353362383531336237376461616330363433613033656139373166613336323533393132
|
31633037376231326436306463376134633031666431303133383237316530646261383733313132
|
||||||
36663633356236366535373762353838323930353264623332376235333437613238333133633434
|
62343261303266613764633861393939343937343038383231353137333337383936623338313561
|
||||||
63363864616531363562373161663930306533323237373233386432336262333262303233386135
|
64633330356639643863336437653137393364653833653934633762333461393035393963313432
|
||||||
65646234326365343638316231366164663237323766333662306335613432633131643238346335
|
39633563636164363461326231306237343265626533366562626136643561636464663866303434
|
||||||
62383363656538633134313535313230366131626434346439363839393830353635383138623866
|
64363663396334623738316238316135616162393566613631396163666134663765343230656135
|
||||||
39626263653030323662393332353838646232353963623233356533343863666664313833326261
|
35646364666531303361623833643136663832363737623161386562393234393533306636363265
|
||||||
30356335653932626465326630346536656237613066383933336365383335643936346137376439
|
37343438386439303931633434303939393062363138353732373163663761366337326437316537
|
||||||
3731
|
6137
|
||||||
|
@ -1,5 +0,0 @@
|
|||||||
---
|
|
||||||
CF_API_EMAIL: CF_EMAIL
|
|
||||||
CF_DNS_API_TOKEN: "CF_API_TOKEN"
|
|
||||||
traefik_api_user: "admin"
|
|
||||||
traefik_api_password: "password"
|
|
30
scripts/backupvpsdocker
Normal file
30
scripts/backupvpsdocker
Normal file
@ -0,0 +1,30 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
#
|
||||||
|
#
|
||||||
|
# Backup vps02 docker data
|
||||||
|
|
||||||
|
|
||||||
|
#Stop all containers
|
||||||
|
docker stop $(docker ps -a -q)
|
||||||
|
|
||||||
|
date=$(date +%F)
|
||||||
|
|
||||||
|
cd /data
|
||||||
|
for dir in */; do
|
||||||
|
dir=${dir%*/}
|
||||||
|
backupfile="$dir-$date.tar.gz"
|
||||||
|
#echo "backup $dir"
|
||||||
|
tar -zcf /tmp/$backupfile $dir
|
||||||
|
|
||||||
|
if [ $dir == "vaultwarden" ]; then
|
||||||
|
#echo "rclone vaultwarden"
|
||||||
|
rclone copy /tmp/$backupfile BitwardenBackup:BitwardenBackup
|
||||||
|
else
|
||||||
|
#echo "scp $backupfile"
|
||||||
|
#scp /tmp/$backupfile mmckinnon@truenas.comprofix.xyz:/mnt/datapool/data/backup/docker/
|
||||||
|
fi
|
||||||
|
rm /tmp/$backupfile
|
||||||
|
done
|
||||||
|
|
||||||
|
#Start all containers
|
||||||
|
docker start $(docker ps -a -q)
|
@ -1,2 +0,0 @@
|
|||||||
#!/bin/bash
|
|
||||||
curl -H "Content-Type: application/json" -d '{"text": "Cloud-init provisioning has been completed on '"$(hostname)"'!"}' "{{ TEAMS }}"
|
|
@ -1,196 +1,176 @@
|
|||||||
$ANSIBLE_VAULT;1.1;AES256
|
$ANSIBLE_VAULT;1.1;AES256
|
||||||
38316162653730636234393561373131313662363839303735356561653735333535613763383566
|
31393237373262646664663739633130643562326538336561353265633064383466363532366332
|
||||||
3464336262373335636434316262626235316133356332630a643235656334646565636237353033
|
3966346334336430633238376438353961393936393037340a666263623538653061646366653831
|
||||||
39653461323938613737303931663866383031313266336562623136393936303166393830623832
|
65363535646434393035626435353630626133643634373961393063343361646561643233633733
|
||||||
3463633133306465360a663666663564663531636335653461366138393130646463643331393961
|
3263323166336638380a626231353030393766376534333438643930313432383266323763633130
|
||||||
39346564653539366162393732326661333961336166636231653037333462386338383631323862
|
33633333616561316465666133626261363361333433343733653266633337663863383137376533
|
||||||
65356262376662373166636133373061326639616330313462326232656336623337636631313433
|
62363038363631626463303563643638623231306363386261646639316332613134383334383737
|
||||||
36326433373934393333383863626339666136353731616565333161363862353864656639343936
|
63356561303735656638306566323432626531393332643634626531336230666338363433363435
|
||||||
64343935623362613338396432643433343732396632306236656163623434343565373431303337
|
32313539326265643637656435613965626232333631343264343038393564663831343063646533
|
||||||
31383734643235386331323630363265616365643339393330336333316339646336663330346239
|
61333835306632666136313637306165316434376234316632626632653133326633363734663033
|
||||||
38396537336665396137613834656338323163303336316264393463313733356330623334663730
|
35396235646335653065313664383861323033306636636336376264326534353635396530313462
|
||||||
39616439306462396263386665636133376464663037373661313234363633633863646362623463
|
30386237636438663363653032623030666438336438346434656637336662633930316536613832
|
||||||
32633137386339396262346135343230383161346134353435343865336464366130346134643133
|
64323966656337666239616636333533366636383833356561643734613664303236333939663262
|
||||||
39663462663561363863386266636133366235363062393333616636393332343035386466393338
|
63643736626163363362343161613532343564323661366261313331303466343639343437386439
|
||||||
64383133313835653061313232623762353438343462393665613062363533636230303534353735
|
32616133316236363339333338336566366236333337623232366139353461353335383466316639
|
||||||
31346432313363366532333364396166376662353233316436313735363438646632636638373763
|
64626661613530626639323233383065353033316238346635393633336431656666336436356638
|
||||||
35363333343635666536343263653631643132366266323736316363393662626362656465303363
|
32336637356336666630323036326562353737316231386636666136616465353764313236643761
|
||||||
34326633333632303931653236346337663366383165383962346238356163333938323635303334
|
65373836313037363065346339333031626230306366353632653936326463366665363664643161
|
||||||
30656536336336336366366330656364373434383038653239313934393234363764633238646132
|
31623962383363663964326439396362643932633130313332633363666537363564333830613730
|
||||||
30373238303135343734613136633836633834636366623636623664656638633833346634343436
|
31633766613639356161386132313863633830363963393663663564343732633366386235393464
|
||||||
63336466363065323635386230623634346365316336326538303139343239306139643331633661
|
66643831643735353066626566356363643131376265346665623666366663343939636638383631
|
||||||
34316131653139343731346335393665353734643135626137363662636632643266636663626432
|
66616562323164646235616137646632373631343834353832333632366636646332393537643439
|
||||||
65323463306164383235646332306438393031356364396534316362353362333964386337633665
|
64326138343462343064303234646362633862383336306237643636623734363165616362313035
|
||||||
36306632346362303538316530653363376463313732316461393364636532376431663564366238
|
37346437353566646133316631363735346561326565623965373833376438646439376630363634
|
||||||
34643464623766343732373137393162666137643130353034616130383362343635623637643465
|
35333133643135333761646261646566626562623962636161616163316433613261386466613937
|
||||||
30316162393933353136666339333233343864393965353435366366626436376464623338636534
|
35613531356265636339366139663865643863383035303365373034633239386261306539343539
|
||||||
62303861356334323734386336303063613632326631326461663362623666623937353133646530
|
31633039363134363731616136343031363264323734623462383233613437656265666165616330
|
||||||
38306466653638373165356232353762643133393031316537313736393032643832623865333764
|
39383661653561366365383462363538386439646436313761666163646334623737326563653034
|
||||||
31383765643661636232363437303536373334633862336130306536313232636133646631643434
|
61636538643263366264343265353436346433643837623838666638343130663466656365663839
|
||||||
31343661393966333739346237316363336135363637626364386432653438336536356432633665
|
33376332626537623865316136363938396161643466356131643736646138383462373961616531
|
||||||
65306335333163663366393731303765346464623835343032336538633339303439613961343165
|
38376665386133373939396261336531333738646135326165363864663463356638633337363232
|
||||||
66316366336565623863346535316635326234363466353666316235366666363466363038623464
|
62303736316263613431646263306436393932353062393531383965353137393163663664396461
|
||||||
62633237633665316538653563313534386131616466356464383564333663313263373830323966
|
33636631623234383835343436313764663538306164386465356265396130343364343665376665
|
||||||
39343864363635313064393965376631353964616639333466383933343332636434393335323530
|
38316533333338613439356465366663616231396234663633623264373366313432396134653663
|
||||||
39383030313637626464396532326137316636653066343566336432623063313933363166343335
|
35353038626337346434326465343230653861323432653438623337653333393266613566326231
|
||||||
39326166323437316131623661346232353030346461663336393564366135333164643835333733
|
35653465333062383863376365353832633731323066646366386262396431656330663666333038
|
||||||
34373830346532343339656532323731373430363239663963626266336663646331343134386435
|
37663035613136393063373765373034376631613363643035666533323230303065333065656565
|
||||||
36393231313930636436396431363037383062626634386631663432656538306164346162326233
|
38613633353862376436393838326664303330306538313363623862316131393064316530383432
|
||||||
61323538613933303139393139303838313133646564613734396534643565663764313031653539
|
36653664613834336165653364643436643333316333306438643638643634363430633466373564
|
||||||
39323032386537383933383263316130343834363064346566633431326435353065663232336133
|
30633032356430383239623466393339616639623661333339313337613734363237643539303862
|
||||||
34613637323032383063343036373838613161666437336163323934653339613137613736636633
|
38323963383361623333336437333066366332643030623162653162303065313761666564366131
|
||||||
34643431613566303532666136646633373466333631306535363937313837363762653437613364
|
32393431383731393233333138363138396139633831306137613534326535656265353736636364
|
||||||
31396336326132633334356530373363363833356631386466306539633932616637363264623332
|
33643834353633343962386361303564393032303432626138626535623132333732623937366230
|
||||||
37383135323633343230636263376232346335623939666238363038646362663462363332633561
|
30666530636130643737363039376463643161373437303235616564363132393836306430396366
|
||||||
38303931373263393039316663313361623163646564333633386464353031623733333435636166
|
30363064316666626532323832343132313264653338653130643439656662633566363237303837
|
||||||
36323062316530653861623039663231306631663738363762646136313230303036646139326466
|
64663661646462303761636130666561333636393962333232666134386439303166396637666265
|
||||||
63636431373436663430643534303238303036376636303338363439383534633265326161383439
|
65313330373862363534373666393536333666643032306466626263646530353534316134363662
|
||||||
32356561326338393933336435373964336261363963653466636436346137306431353932363063
|
63383965393731313138643035633064366130326562663763383963303339383233336331626361
|
||||||
63376666376434633937626431366339373730393134636437386335623264336535313462656233
|
31366431336663356463306639613366396534626235326437383666643165333832333338386533
|
||||||
38353738313537313834326233633237353666653162643531366334333834653730656661316661
|
35643763643938346437353365393333336263623533623936366337333730653632373037636434
|
||||||
62623466613531616164343862633130643434666632336333636539636336613135643433333639
|
38323730336539303664386339356463616531376230383762666361663030653639343135326165
|
||||||
62346164373465353135316530643463613661383462346634303236373664323237383661346262
|
33323234353766303839323736646463313733636133656561373038656431356338626632643534
|
||||||
34313532653435393034353936643033623062366138653162316239323935316336353463333637
|
66616333646233656365346261633034383536393635613161373338343431383931353930343166
|
||||||
66646335666135396232343666616534643832306333393538303965613935656638633238646236
|
61316332663065366365306632353963393766333036663137303462613262396561613664633434
|
||||||
38306330663963373833323265653636333535616530653439643063336136643261336137333165
|
32376265306636323439333335316261626262636161646437316463333833343565663335383436
|
||||||
36666137303935333436323761373962353066306535313132643465326230343138663533373637
|
34366531383361383532343630613965386465316463396535396132356635346635643465613065
|
||||||
36633265333162366461393237343738373332313765356231323338636464613232343434643564
|
32333838303263323839633061373135303136343336323565326334343331333163393766643133
|
||||||
39336562353561633862363261396466343763636334663335656432646436306630643133373933
|
32393439636632356330643662376365333238316230633430653133323965393330643065363866
|
||||||
38326537623034306637663530303935646538636463643733333461343939306638383934313331
|
30643839373936316639373331363739356531333065303937646131663162343430346133633931
|
||||||
62663562323961613934633032313038613030383137633563313861626165613635396133363131
|
36386464376238643461373133646638373439313431643831313064653666613537393264306665
|
||||||
34643965623333373439636637313663366638616235396234666339633336663230646438613731
|
32653662303465303639323639636238633231306665396239376530326437383764386563633562
|
||||||
65306436396264306138346432373439633130363536663465626630666232393161343636656562
|
66616238616336633265656463653036363932323964623135643936663961386164303365363661
|
||||||
65386461663664643136623136363761636636623235386634656138386463663838303331363965
|
62303866643463613365333363613463623336306336306566383639363030343761316330353833
|
||||||
66653030656264356337666332323464333963316139356639303361393165363137366466306133
|
32303066643464616639313666386330663433633831366338326665613538336539373439656532
|
||||||
32306164323633363662663130303034643964646539626438376462303836336663623161646333
|
32356463363662666266663263333562363861626462666461343834383335333731336137303464
|
||||||
30663630303830383433653464343931386635323436653166653561653362613762643237396436
|
38376633643439666538636439326266646239343664666266356665653565656339353261623462
|
||||||
30316435343931363562373438653461366534636230333665373232353262353538313565663262
|
30336261653432376537356162613361636139366265343439353330653836336337646433316361
|
||||||
65383466626630393935313339633935343933363664373633346661653261353735316237633431
|
63363638653435373635633834353161326230626138666439643531333031663335663638653361
|
||||||
64653333666233626630613432376463326130303737623937366261626137626364373335306338
|
61633335396166336465623263343863373961643735623631383762613763656261383966323838
|
||||||
35653634633262353461316262613936653539323535633066393332333663353835316361326432
|
30623264366138343839363636663733613836313166646137656165323662356139363564663837
|
||||||
36623562323233653738306439646234363335663231363362633339376137383634616338313631
|
39656333346435633536383130383730313732653363666266303230363939653331653936356565
|
||||||
64613463333333373761623436656331333064343166633534663962363036626333306462663066
|
31366663653332303630346438646431633161636230326330363862336466383161353732636431
|
||||||
65333665356530316133356266356163636461363230636265393232306134323533373634666433
|
30666339383766626433633435643564323939366435363435636232343935373063316637316434
|
||||||
65333831656237626636633938666164323331343263653866663338646236336466323533356135
|
39383461376466373165613639343362393732316532336535633465616434326464306162303066
|
||||||
39666261323035633736356538346635643339363231323963376364366531303831393961383732
|
34666637356563393930326665616330643262633639663635626635313330336334633361393566
|
||||||
64306332663934356534356365626239396437386433323261373935336639383732346662643164
|
37646263323731353764366563393866373435343361653539376533363332393736326261326338
|
||||||
35383932363638393661346661383532656338663339323461313136666532633437366362663536
|
64303439356633343164633137373433363237663034383365653630393364383038313062316665
|
||||||
39656334313465303864313264666239643166393261306234313064323933323765623232646161
|
38653038316339303035396234626438383863656332316535633231393232633332323331626661
|
||||||
38373462636438653564323133613838636365333861353365393731653663363236343564666366
|
66666435653433623031393332613834613566643338646430393361636131333466356466663465
|
||||||
61633965306638373137656333306264636465323638376161633732666164613530346666313335
|
61376461363238366566373635623464366139356430336162636232343061643634643230343332
|
||||||
32306562303065636431663963336135663632353539313438376339623364353534363561366136
|
62363461393266666563326237326133616431393461353538366233386266303432663531373662
|
||||||
35613166353337643531656265643731653237616236613632656465643431343733336633633562
|
63303866333865656663623565653664643934623566396565326264663237393566643135316130
|
||||||
66643365343230626564396162323237646238636534613830393261643530336562356235373534
|
65386666343262373832663637346531663066363565396437373330373665376635653661616637
|
||||||
36633036323531623138386638636464646361626564376264616539343532336234653963303132
|
39383233623262393361313264316230626565326466306563613930616465623531373636343439
|
||||||
64386137643761636265346335653037333637343262396461383433363762303463393961343739
|
30643030616637313639306234643035326639643533613564303731373731646464323737356166
|
||||||
32636535396537383738306632656233313536393865366366656539313236323133313433323635
|
39393839653431343431373034653536633531643934353432653636393937346230303162646537
|
||||||
34656566303765313736383338393338653837626339356666306563333839366533626666353436
|
61623463343833613636316165633430613134663537333665303632613637326563373266383063
|
||||||
37613363316264663462393230653865313061363438653835313539613566616164393334316463
|
33366439303538613134633130343439373666363566333663346536623464653334323533343939
|
||||||
39346435613638646566626534323561366261353433353533623730663135396536353637353764
|
35316437653537396135326330653834613863356562323765346432343234636263376238356633
|
||||||
64373463633530356235366264373661383535663431343862356365613531303737303632663631
|
36393334303635626535636134333863363333656632373430343264373832636138663338643565
|
||||||
64393930666633303461356663356439303563316262353365323637343234613931333139313735
|
31323434346337653934666537303563306562666532376630643637626532613730643837303634
|
||||||
65613562623633643231313261626432356232306330363335303034663262346534616335616131
|
39393565613034336339386366636661313330396232303832316666353965336563373466613563
|
||||||
32333232376564353836616161623637363937616537346137366331656131323738326566626232
|
61633565653137386633343631653232373162346633366362373632623534616562343637653062
|
||||||
37373632366162663233636631616330303537356432336665623066663331646636653434623832
|
35396265323930323938656663633030623766366239306435633438663136333865643263303261
|
||||||
66653234323436383033303761346264316238313537613539303964386662646236343732666638
|
37313564383935653565633066313862633364323462373638613331386438383830656635316661
|
||||||
31633463623266653537363733343734383330643863323763666532666135333838656361633139
|
35386236356331376565616633356631626661366339393163343739373735633062323930326430
|
||||||
65356364353364356135393632333539633731363235613439613831613330333834626230326566
|
39643137383761623132323931303461366232323132323064386538373133613531393665353832
|
||||||
62363638326231653237396637633036636530313163373432326637303439666438396530303631
|
66303338626639353539323063666235353532333437373433376337363035623639316431616264
|
||||||
37313137303261616637353130323264313039323062363239613336393863306466363536633761
|
64343665306139666661623635396130373464646663393438366163613634336465396535373935
|
||||||
66366132343164306162646661623464366531623935633831623132656634643461386236306662
|
33376530633266386664316532623863366131623766643364663061333964373331363366383631
|
||||||
37623664626436623539616661366236363636653830653066333333396362396162633265643566
|
33313361646134363964366330356437386662323536306164663661346630376238333966346135
|
||||||
65323634383236353238396530616236356633343834616534333930373163633861646263333963
|
33653134643564623263626432356562653833363935613863343834306436323137356239376437
|
||||||
62316365303330316537653737313963333265336237633236633636613464613832346233653064
|
35626134646661633736666330663861396536326137376337346136366433323338373332623566
|
||||||
66623331636137653136303665356164643266316563666662663035666534626365623336663437
|
65373966326232656337653139333762643961313162356461623536366230363034613066336133
|
||||||
37343835306162653830373232666265346361333364336566323636623861666433313539333636
|
31613565383064306431333664396237373537646236636634373932326632346266373065356339
|
||||||
35616561633633373637333335306662343430336139643632326166636238383233333935633265
|
31353466626530623431653366636663353263336332663164636366643134346239653239626434
|
||||||
66353063613664323230613362323938326262373336383837313664333765356537303431663437
|
34373535316133366265333337663334646630383035653637663864663264306131343039663739
|
||||||
39313535643330333434373561356363343130376262376339316232393731336230353631616332
|
32343037383537356331306539313130303961656164373533663839646530356562303964313135
|
||||||
34653135386565336637376136336266323738376265613866386366313964623833336461303638
|
36626164333963313566633033393266363161353065343530303064646465616661313238663839
|
||||||
33626136333161643062323439623363336333343238333038303466626532346339376539323738
|
39346134343735323561396631333838626434376663393661373436363962373564633634346339
|
||||||
62666163373765373366646130356361323138323861663135663136306566646631393139616463
|
64356230623936356632313665633163343233366339626631396162343866636361373437336164
|
||||||
36633863633636653338393335653635383535373734663531613135343530313931666234323865
|
36353666623930666565363932386232643062333836636638633035353061383932613332386636
|
||||||
37623938633034346532653033633063396331383233633831386334303231366435313738313535
|
61396135623430323438633537346132363063326337653032353737356261616338363634663134
|
||||||
34346566316562643139336430343062626534396437376235356465616161643162373865396432
|
32306638643835333331613432353766313530643034396632353762316436623336363662386137
|
||||||
61363133333736396334633332656138373564323561393866386335666361346633353939316239
|
34353061666238613065323739656332313330323165373231383638306436383166393961633337
|
||||||
34363166656635633831636235353731636632356131333137303833666563306566656133343762
|
36643235376532306137653237386563653337356331326435346431316564353462623038383838
|
||||||
37393062633930653934356632323764343831353838386637653231323562323863653036316534
|
63636361383634313530666463653962303938356238393134326332623164663239316433313161
|
||||||
37306532383031666436303861656461313638396263653434333730633135383936303966656336
|
62383866383466343936373137306331666261303636316136346264303563653966356136383065
|
||||||
30643831316563616364363931343964333631363365393634636463333336663439313933653236
|
61636337353336326662643634323732646233613136643034336232333064306162346333666166
|
||||||
33383864613934373639316432383035313934363963653535633662303961376365613832613431
|
36633766313733653435386432353937393137306665633766306236633162326534303061323963
|
||||||
61393339333331333332326563663963663666646236316534353532643139376530333261326561
|
64386566626136336261363864663662373635346239366230616437633031633830633336313634
|
||||||
31313237326236336565333662336437346437666566303664396161383439303839366634643433
|
61613636663738623338656165646561353638626265623739373630393336616366613636396330
|
||||||
30376637623263343863333132316166653864373339633431393038623363363261336137653865
|
30643666326135343037303830613732643561313237393766353863666164656432666261626466
|
||||||
65626135326265653130373065306162656233346561316666303638303532376236313162356334
|
36663934653432386662383134636631643466323132356266383065316265303164353330623633
|
||||||
35636664616261643766353035376635343962303266623339366136663539623937643633613861
|
66623536383563323431613038613037306130343738393965616635613930636638306138393839
|
||||||
65636161353664313939643361343334623562383933613566333337656138653132313563343162
|
65653030656264323837383238303231346434646363363134633730663562313366623038393133
|
||||||
65393838373034613664373962653963306530376131356461343634643630333764653862323832
|
31303736376263656462643961666537303163666637613465626534623730323764353536306339
|
||||||
34366439383963363534396264393733323065633633383063393731663638316564343466323832
|
63316132613634316133386636373836636237383830616236326663323365323834376365383066
|
||||||
61353362373032326261326638383938613437656664613961376434643333353230656563363861
|
39356661366334393233303164666666656463373166393739636332616137393439656432663433
|
||||||
61353962306331333163386664656436326235653638386231396131626639386337653539366436
|
36356136653231363763336364303339613038653438386233383364623630656236333661643362
|
||||||
65646638306139356538303932643037353236643962313965306339303963303030346537343737
|
66333464306462353262373636323935653931663334643662303066383737323464376332326566
|
||||||
37303731643433636361646361633734363032663266353839353765376235323831633630393938
|
37336336623765356536326239316561343666316562376635623734633832626632323563346235
|
||||||
63323839366136393362306130366536613439333733356366333637303561623062326639393631
|
61393961343766663964326436663037613134643130666239303832313161326136326265643434
|
||||||
36613936366639663133616331333736663162383632383166333564313761343966666135326461
|
38326631623836663464663734656538653636333061383633386261386236633832303830663233
|
||||||
32366334323161393037613137623461363431393262663239393365623933636633323131663431
|
33623862663230666265316339633464626534363465643336646462326431393863656536613234
|
||||||
33363537343839663263343534366136393739336637336531363162356264396632366137656463
|
39626135623637343865303965303035356635336439353463323937623465303934393631363238
|
||||||
35373632643264373736336334393865373563373066333365376335653965303661396461306162
|
39333534306539303831393039623433336331636135356537353233333062666664623238326233
|
||||||
34613866643036346433353062346531623964373965633663336138396264323934353564313437
|
64386534666562306561376432343032313966343532646533386137623664333336346131626361
|
||||||
39613332653064653332373262623135636663653465656237356139343034383137323034346564
|
37363834643635343831646630346263653438623262333666316131636666366261303665636634
|
||||||
65656463393936616530633162333063626339316538396364316564393064613232656237386132
|
30343634346137323830333637613434343639623338383432303063316639636462626366643535
|
||||||
32396463343037373064393536353138323864316465346536373835613565613438623636653465
|
61643739386663643132313137633139373536313132356465373738613462363264663739356632
|
||||||
39336434316136386163656236653062393839396462656634613030666166366132356530366163
|
34663131353034626361633863613933336465633131386530336663666361393335633437666333
|
||||||
63396564376363343437333337656163623964373733313030326664666464376563323765313035
|
30303130623961376637326664393561363462303564633463333734336635653335336538303431
|
||||||
31363339626565636665613431373139366337303836666134336532313534303465616434373935
|
37373331353039613436616130316633393261346331396337343565323565356238303431653237
|
||||||
66323437366639653330323539363161313666356136326266623432346336613539626563303534
|
64366165383831376632366364616536326236626166633465616534613036633463663439303039
|
||||||
61373864336561636131653636386632663930353862313964373862643437356130356139353732
|
66313138346338353765633964346137333639613862613638626136306233343536643737343662
|
||||||
65313734643663356430333161316265363137303134633961376133643430613733343639343164
|
64323165333262623434643261646531396436333965383064313131303136663865316631316565
|
||||||
35616535646666336638616331663766393564663766326331656462393134336235326166313166
|
66626466616661383564653435356261646337366435353335383234623034653633623364373062
|
||||||
62303330613630363835623233653261376139643236613565396466633264326433383238303439
|
64313966323339663563373566363132656334636631623630623437326265393365656639386136
|
||||||
65376164376261393538306565356533633530353538343735616663376437346265656263343930
|
35383539623565346263393966323232633030366439646639613763313932313038616362643562
|
||||||
61616530316439306461663461346365363639376333363732333861346230613536366563366232
|
33663331336637383238313766336562613330363264666633376263383337333865363665326331
|
||||||
62333234623930383761343937306635393837326635343664623865636232386332313535313463
|
35363866636431313235373535396230393831383738353232346265316432653666383236303161
|
||||||
61343734643330373064643462626636623233653462343262646262333935656138643264376133
|
30643038616538343534323061353736653537346534643963313630636365333835356430643434
|
||||||
63363962646138313436373963386236613035633464313663343364396536363833396166306238
|
33633031623137326530663835356462316161656364326633383761323337353934306536643333
|
||||||
63646434653261653235303063653462376533343232363634373861646632323061336661393466
|
66346361363962366336613138633561636665653337373230613032383264306532373937383637
|
||||||
30363266326364626465656463326435333032373836626134653362386264623533383266663263
|
66306331306639613065353332336234616136616461663631346532363835353065666463333864
|
||||||
36316233633062303337386234643738323061643231656639633330646433313135353335656330
|
63366231323165623863633361386162373432303338366162356338306361326361393530646465
|
||||||
31353535633833376336313339363835303835633039636165663433383837383464656563343163
|
34356364323365376462346661313530306434343837373064323431663130343838396363333538
|
||||||
61363431353533336130633266616337326462386363656134613834333865346362643764633038
|
62373462396264363565616466633663373465626635613464626265386464396530303262306236
|
||||||
34383238643339373234366239303235303566356561343730343365383339646663393039666561
|
64373736656361376266383432376432333632663736376134393466636539383264373462643961
|
||||||
32646234303033616263333466633765636633633666353862333833376164306566663037323338
|
34343433633865656164636434363139316466376361306433663838613036653366613730396537
|
||||||
66623064646163343633333732666461313736363965303566313061313163363462386230363038
|
30323631366664623834633761643662626438303132633063646536666162383162643737323538
|
||||||
37353365323933656234663761356530633261636665613233383137356563363732353435373536
|
38623432366264626439383830646438336133656432613733656466333065616338303466386538
|
||||||
66316537363730316461623066383934666164333739656161383531313865396161313338656236
|
37333135346633383736373932383263356638393966356537326632323631393462356366653938
|
||||||
65633031356532633465383933333534396635373131613330643062383230633439613337313863
|
65363666353032626336666137653963653137643230313838653037393739356363326535373762
|
||||||
33316465636438363264666630666361663538356538316332323334616361633061633332346237
|
35316461633763663263626133383162396164393436363665313633663531393164663061313236
|
||||||
35343235336235383131656438623064623432663831353035346133303862336564616562396232
|
32306535383731326139343566356665376238356532313063303962393639366164373530396535
|
||||||
36656265623737376363313930376539663136396561626566633466326637383232666262303936
|
33316336363562316266353534393466653739373266313533323133313464626236336137636264
|
||||||
35653661623664343431393461353437363361383030393764366637636464346464353932623262
|
34393730373662316137633564663864626137303438333262366466396539356137383835346361
|
||||||
65663063636234323961643039636566376437303562306139663264366538653166356463633263
|
30616533626338333532383434633463653062326437353831376166383365393330646432636266
|
||||||
35336138383131366234323765623337653033663730353635313635396334333061383663626332
|
62656238663761316532313366346661376237666436346335656439396564363464323063353664
|
||||||
30313234373366663636343037316438393837333631393531653036346232393566643034363136
|
39303261346631356536643961666638353334303932303938383830616263633738653837643861
|
||||||
32383539663335613236663364363962663435366537333565326637306636376461363038656534
|
65336437326638353365323232666332333162663935306665636463623538346166653764626139
|
||||||
61616234366336396232323166326132343039383361393833346537313938616137326265653763
|
63653736363736623139366164623437623734343766666239316338663136623232383832623632
|
||||||
66366132326439343234653664323965386333396338646562383536653739376639376563383638
|
66306536363836663939386261383266303664616363346662643835356239666338386665613066
|
||||||
31333231653630313732366334623330653065373232663432626438386666363731333731316262
|
323839643933313039656433313432396532
|
||||||
30653966666665313765616237356431343763363437616162343035633531633336386138626261
|
|
||||||
35636335393534343964623334616663663935623964326362313362663530303865303037633532
|
|
||||||
63623666643437356635346439656531653335346137303331343931643532326532626133303166
|
|
||||||
30633632373262616333613366393938393366366666396536303932393865353238386562623339
|
|
||||||
35313935313136383734636339393063653066613032383636326236386562306139663061663232
|
|
||||||
30343365666438653639346636646534656461393636393730373237316636313335383536663166
|
|
||||||
30646336643339653565353364626532656630356130623561363264333137353861386235393735
|
|
||||||
39363830386464366666666363356365626239396365336138326539613030353964303839623631
|
|
||||||
30356130343939663234616135323936643838613834326534343137303461616666646434393238
|
|
||||||
36393163643166303366383663613332663638643361323934393236393764643634373232366563
|
|
||||||
30373335336563666461626531613730386561643236333064666165373838313562363836393932
|
|
||||||
35346530393835303961636661373264303030636166313061313437333832393937623063313462
|
|
||||||
38663735343234363561306539383563353033616435353831323835366166653361316665383334
|
|
||||||
33336138373836353464333038346664343730636364363238616234383739373365373835343438
|
|
||||||
34623438323031343436653762346166653865333437613232383062636137333534633461353737
|
|
||||||
32323863353831313763633433616633393864303739303832376438336365313462353738386165
|
|
||||||
35633836616230376362313933393336626130393937346236663538343732653836333938386430
|
|
||||||
37353162613738396331633837303331346138346635643063366164313536623134383939396633
|
|
||||||
61366238666136326335376565396638333461303630653839326261633362623530366438363062
|
|
||||||
663833633630353966643938363039393539
|
|
||||||
|
@ -1,14 +0,0 @@
|
|||||||
- name: Create the comprofix.com container
|
|
||||||
docker_container:
|
|
||||||
name: comprofix.com
|
|
||||||
image: git.comprofix.com/mmckinnon/comprofix.com:latest
|
|
||||||
restart_policy: unless-stopped
|
|
||||||
recreate: true
|
|
||||||
networks:
|
|
||||||
- name: proxy
|
|
||||||
labels:
|
|
||||||
traefik.enable: "true"
|
|
||||||
traefik.http.routers.comprofix.rule: "Host(`comprofix.com`)"
|
|
||||||
traefik.http.routers.comprofix.entrypoints: "https"
|
|
||||||
traefik.http.routers.comprofix.tls: "true"
|
|
||||||
traefik.http.services.comprofix.loadbalancer.server.port: "80"
|
|
@ -1,12 +0,0 @@
|
|||||||
---
|
|
||||||
- name: Create the dozzle container
|
|
||||||
docker_container:
|
|
||||||
name: dozzle_agent
|
|
||||||
image: amir20/dozzle:v8.12.21
|
|
||||||
restart_policy: unless-stopped
|
|
||||||
command: agent
|
|
||||||
recreate: true
|
|
||||||
ports:
|
|
||||||
- 7007:7007
|
|
||||||
volumes:
|
|
||||||
- /var/run/docker.sock:/var/run/docker.sock
|
|
@ -4,13 +4,13 @@
|
|||||||
path: "{{ item }}"
|
path: "{{ item }}"
|
||||||
state: directory
|
state: directory
|
||||||
with_items:
|
with_items:
|
||||||
- "{{ data_folder }}/dozzle"
|
- "/mnt/nfs/docker/dozzle"
|
||||||
- "{{ data_folder }}/dozzle/config"
|
- "/mnt/nfs/docker/dozzle/config"
|
||||||
|
|
||||||
- name: Create the dozzle container
|
- name: Create the dozzle container
|
||||||
docker_container:
|
docker_container:
|
||||||
name: dozzle
|
name: dozzle
|
||||||
image: amir20/dozzle:v8.12.21
|
image: amir20/dozzle:v8.4.3
|
||||||
restart_policy: unless-stopped
|
restart_policy: unless-stopped
|
||||||
recreate: true
|
recreate: true
|
||||||
networks:
|
networks:
|
||||||
@ -19,7 +19,7 @@
|
|||||||
- /var/run/docker.sock:/var/run/docker.sock
|
- /var/run/docker.sock:/var/run/docker.sock
|
||||||
env:
|
env:
|
||||||
DOZZLE_LEVEL: "trace"
|
DOZZLE_LEVEL: "trace"
|
||||||
DOZZLE_REMOTE_AGENT: "omada-lxc.comprofix.xyz:7007"
|
DOZZLE_REMOTE_HOST: "tcp://omada.comprofix.xyz:2375,tcp://vps02.comprofix.com:2375"
|
||||||
labels:
|
labels:
|
||||||
traefik.enable: "true"
|
traefik.enable: "true"
|
||||||
traefik.http.routers.dozzle.rule: "Host(`dozzle.comprofix.xyz`)"
|
traefik.http.routers.dozzle.rule: "Host(`dozzle.comprofix.xyz`)"
|
||||||
|
@ -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.11
|
|
||||||
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: "homelab-runner"
|
|
||||||
GITEA_RUNNER_LABELS: "homelab:docker://alpine:latest,alpine-latest:docker://alpine:latest,ubuntu-latest:docker://node:22-bookworm"
|
|
@ -26,7 +26,7 @@
|
|||||||
- name: Create the Gitea container
|
- name: Create the Gitea container
|
||||||
docker_container:
|
docker_container:
|
||||||
name: gitea
|
name: gitea
|
||||||
image: gitea/gitea:1.23
|
image: gitea/gitea:1.22
|
||||||
restart_policy: unless-stopped
|
restart_policy: unless-stopped
|
||||||
recreate: true
|
recreate: true
|
||||||
# dns_servers:
|
# dns_servers:
|
||||||
@ -78,7 +78,7 @@
|
|||||||
- name: Create the gitea-runner container
|
- name: Create the gitea-runner container
|
||||||
docker_container:
|
docker_container:
|
||||||
name: gitea-runner
|
name: gitea-runner
|
||||||
image: gitea/act_runner:0.2.11
|
image: gitea/act_runner:0.2.10
|
||||||
restart_policy: unless-stopped
|
restart_policy: unless-stopped
|
||||||
recreate: true
|
recreate: true
|
||||||
# dns_servers:
|
# dns_servers:
|
||||||
@ -92,9 +92,9 @@
|
|||||||
env:
|
env:
|
||||||
CONFIG_FILE: "/config.yaml"
|
CONFIG_FILE: "/config.yaml"
|
||||||
GITEA_INSTANCE_URL: "https://git.comprofix.com"
|
GITEA_INSTANCE_URL: "https://git.comprofix.com"
|
||||||
GITEA_RUNNER_REGISTRATION_TOKEN: "{{ GITEA_RUNNER_TOKEN }}"
|
GITEA_RUNNER_REGISTRATION_TOKEN: "A01dvleL55F0o5OMJpa4UsE0gJ38ANKrAw5vKei3" #"{{ GITEA_RUNNER_TOKEN }}"
|
||||||
GITEA_RUNNER_NAME: "gitea-runner"
|
GITEA_RUNNER_NAME: "gitea-runner"
|
||||||
GITEA_RUNNER_LABELS: "alpine-latest:docker://alpine:latest,ubuntu-latest:docker://node:22-bookworm"
|
GITEA_RUNNER_LABELS: "alpine-latest:docker://alpine:latest,ubuntu-latest:docker://node:16-bullseye,ubuntu-22.04:docker://node:16-bullseye,ubuntu-20.04:docker://node:16-bullseye,ubuntu-18.04:docker://node:16-buster"
|
||||||
|
|
||||||
- name: Create directories
|
- name: Create directories
|
||||||
file:
|
file:
|
||||||
@ -106,7 +106,7 @@
|
|||||||
- name: Create the opengist container
|
- name: Create the opengist container
|
||||||
docker_container:
|
docker_container:
|
||||||
name: opengist
|
name: opengist
|
||||||
image: ghcr.io/thomiceli/opengist:1.10
|
image: ghcr.io/thomiceli/opengist:1.7
|
||||||
restart_policy: unless-stopped
|
restart_policy: unless-stopped
|
||||||
recreate: true
|
recreate: true
|
||||||
networks:
|
networks:
|
||||||
|
@ -1,26 +0,0 @@
|
|||||||
---
|
|
||||||
- name: Create directories
|
|
||||||
file:
|
|
||||||
path: "{{ item }}"
|
|
||||||
state: directory
|
|
||||||
with_items:
|
|
||||||
- "{{ data_folder }}/gotify"
|
|
||||||
- "{{ data_folder }}/gotify/data"
|
|
||||||
|
|
||||||
- name: Create the gotify container
|
|
||||||
docker_container:
|
|
||||||
name: gotify
|
|
||||||
image: gotify/server:2.6.3
|
|
||||||
restart_policy: unless-stopped
|
|
||||||
recreate: true
|
|
||||||
networks:
|
|
||||||
- name: proxy
|
|
||||||
volumes:
|
|
||||||
- /data/gotify/data:/app/data
|
|
||||||
labels:
|
|
||||||
traefik.enable: "true"
|
|
||||||
traefik.http.routers.gotify.rule: "Host(`gotify.comprofix.com`)"
|
|
||||||
traefik.http.routers.gotify.entrypoints: "https"
|
|
||||||
traefik.http.routers.gotify.tls: "true"
|
|
||||||
traefik.http.routers.gotify.service: "gotify"
|
|
||||||
traefik.http.services.gotify.loadbalancer.server.port: "80"
|
|
@ -16,7 +16,7 @@
|
|||||||
- name: Create the homepage container
|
- name: Create the homepage container
|
||||||
docker_container:
|
docker_container:
|
||||||
name: homepage
|
name: homepage
|
||||||
image: ghcr.io/gethomepage/homepage:v1.3.2
|
image: ghcr.io/gethomepage/homepage:v0.9.6
|
||||||
restart_policy: unless-stopped
|
restart_policy: unless-stopped
|
||||||
recreate: true
|
recreate: true
|
||||||
networks:
|
networks:
|
||||||
@ -25,7 +25,6 @@
|
|||||||
- 10.10.10.1
|
- 10.10.10.1
|
||||||
env:
|
env:
|
||||||
LOG_LEVEL: debug
|
LOG_LEVEL: debug
|
||||||
HOMEPAGE_ALLOWED_HOSTS: homepage.comprofix.xyz
|
|
||||||
volumes:
|
volumes:
|
||||||
- "{{ data_folder }}/homepage/config:/app/config"
|
- "{{ data_folder }}/homepage/config:/app/config"
|
||||||
- "{{ data_folder }}/dashboard-icons:/app/public/icons"
|
- "{{ data_folder }}/dashboard-icons:/app/public/icons"
|
||||||
@ -38,3 +37,4 @@
|
|||||||
traefik.http.routers.homepage.service: "homepage"
|
traefik.http.routers.homepage.service: "homepage"
|
||||||
traefik.http.services.homepage.loadbalancer.server.port: "3000"
|
traefik.http.services.homepage.loadbalancer.server.port: "3000"
|
||||||
register: container_homepage
|
register: container_homepage
|
||||||
|
|
||||||
|
@ -2,14 +2,14 @@
|
|||||||
- name: Create the Dell_R730xd Fan Contoller container
|
- name: Create the Dell_R730xd Fan Contoller container
|
||||||
docker_container:
|
docker_container:
|
||||||
name: Dell_R730xd
|
name: Dell_R730xd
|
||||||
image: ghcr.io/tigerblue77/dell_idrac_fan_controller:latest@sha256:eda09016a4acbee8883996f3b8cd4832a723200999bd037934675e75e2f00908
|
image: tigerblue77/dell_idrac_fan_controller:latest@sha256:5184af88c6c03204611d40d4b1c6bc36202762592d16a97236bb4254951d23b0
|
||||||
restart_policy: unless-stopped
|
restart_policy: unless-stopped
|
||||||
recreate: true
|
recreate: true
|
||||||
env:
|
env:
|
||||||
IDRAC_HOST: "10.10.10.138"
|
IDRAC_HOST: "10.10.10.138"
|
||||||
IDRAC_USERNAME: "root"
|
IDRAC_USERNAME: "root"
|
||||||
IDRAC_PASSWORD: "calvin"
|
IDRAC_PASSWORD: "calvin"
|
||||||
FAN_SPEED: "50"
|
FAN_SPEED: "35"
|
||||||
CPU_TEMPERATURE_THRESHOLD: "80"
|
CPU_TEMPERATURE_THRESHOLD: "80"
|
||||||
CHECK_INTERVAL: "60"
|
CHECK_INTERVAL: "60"
|
||||||
DISABLE_THIRD_PARTY_PCIE_CARD_DELL_DEFAULT_COOLING_RESPONSE: "true"
|
DISABLE_THIRD_PARTY_PCIE_CARD_DELL_DEFAULT_COOLING_RESPONSE: "true"
|
@ -4,13 +4,13 @@
|
|||||||
path: "{{ item }}"
|
path: "{{ item }}"
|
||||||
state: directory
|
state: directory
|
||||||
with_items:
|
with_items:
|
||||||
- "{{ data_folder }}/invoiceninja/"
|
- "/mnt/nfs/docker/invoiceninja/"
|
||||||
- "{{ data_folder }}/invoiceninja/config"
|
- "/mnt/nfs/docker/invoiceninja/config"
|
||||||
- "{{ data_folder }}/invoiceninja/db"
|
- "/mnt/nfs/docker/invoiceninja/db"
|
||||||
|
|
||||||
- name: "create stack.env"
|
- name: "create stack.env"
|
||||||
copy:
|
copy:
|
||||||
dest: "{{ data_folder }}/invoiceninja/stack.env"
|
dest: "/mnt/nfs/docker/invoiceninja/stack.env"
|
||||||
content: |
|
content: |
|
||||||
APP_NAME="Invoice Ninja"
|
APP_NAME="Invoice Ninja"
|
||||||
APP_ENV=production
|
APP_ENV=production
|
||||||
@ -60,29 +60,29 @@
|
|||||||
docker_container:
|
docker_container:
|
||||||
name: invoiceninja-app
|
name: invoiceninja-app
|
||||||
image: invoiceninja/invoiceninja:5
|
image: invoiceninja/invoiceninja:5
|
||||||
env_file: "{{ data_folder }}/invoiceninja/stack.env"
|
env_file: /mnt/nfs/docker/invoiceninja/stack.env
|
||||||
restart_policy: unless-stopped
|
restart_policy: unless-stopped
|
||||||
recreate: true
|
recreate: true
|
||||||
networks:
|
networks:
|
||||||
- name: proxy
|
- name: proxy
|
||||||
volumes:
|
volumes:
|
||||||
- "{{ data_folder }}/invoiceninja/config/hosts:/etc/hosts"
|
- /mnt/nfs/docker/invoiceninja/config/hosts:/etc/hosts
|
||||||
- "{{ data_folder }}/invoiceninja/docker/app/public:/var/www/app/public"
|
- /mnt/nfs/docker/invoiceninja/docker/app/public:/var/www/app/public
|
||||||
- "{{ data_folder }}/invoiceninja/docker/app/storage:/var/www/app/storage"
|
- /mnt/nfs/docker/invoiceninja/docker/app/storage:/var/www/app/storage
|
||||||
|
|
||||||
- name: Create the invoiceninja-nginx container
|
- name: Create the invoiceninja-nginx container
|
||||||
docker_container:
|
docker_container:
|
||||||
name: invoiceninja-nginx
|
name: invoiceninja-nginx
|
||||||
image: nginx:1.28.0
|
image: nginx:1.27.1
|
||||||
env_file: "{{ data_folder }}/invoiceninja/stack.env"
|
env_file: /mnt/nfs/docker/invoiceninja/stack.env
|
||||||
restart_policy: unless-stopped
|
restart_policy: unless-stopped
|
||||||
recreate: true
|
recreate: true
|
||||||
networks:
|
networks:
|
||||||
- name: proxy
|
- name: proxy
|
||||||
volumes:
|
volumes:
|
||||||
- "{{ data_folder }}/invoiceninja/config/nginx/in-vhost.conf:/etc/nginx/conf.d/in-vhost.conf"
|
- /mnt/nfs/docker/invoiceninja/config/nginx/in-vhost.conf:/etc/nginx/conf.d/in-vhost.conf
|
||||||
- "{{ data_folder }}/invoiceninja/docker/app/public:/var/www/app/public"
|
- /mnt/nfs/docker/invoiceninja/docker/app/public:/var/www/app/public
|
||||||
- "{{ data_folder }}/invoiceninja/docker/app/storage:/var/www/app/storage"
|
- /mnt/nfs/docker/invoiceninja/docker/app/storage:/var/www/app/storage
|
||||||
labels:
|
labels:
|
||||||
traefik.enable: "true"
|
traefik.enable: "true"
|
||||||
traefik.http.routers.invoiceninja.rule: "Host(`invoice.comprofix.com`)"
|
traefik.http.routers.invoiceninja.rule: "Host(`invoice.comprofix.com`)"
|
||||||
|
@ -1,88 +0,0 @@
|
|||||||
---
|
|
||||||
- name: Ensure open-iscsi is installed
|
|
||||||
package:
|
|
||||||
name: open-iscsi
|
|
||||||
state: present
|
|
||||||
|
|
||||||
- name: Ensure parted is installed
|
|
||||||
package:
|
|
||||||
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
|
|
||||||
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
|
|
||||||
|
|
||||||
- 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: 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: 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: List all block devices
|
|
||||||
command: lsblk -o NAME,SIZE,TYPE,MODEL
|
|
||||||
register: lsblk_output
|
|
||||||
|
|
||||||
- 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
|
|
||||||
|
|
||||||
- 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
|
|
||||||
parted:
|
|
||||||
device: "{{ iscsi_device }}"
|
|
||||||
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
|
|
||||||
|
|
||||||
- name: Create filesystem on new partition
|
|
||||||
filesystem:
|
|
||||||
fstype: ext4
|
|
||||||
dev: "{{ iscsi_device }}1" # Format the partition
|
|
||||||
|
|
||||||
- name: Create mount point
|
|
||||||
file:
|
|
||||||
path: /data
|
|
||||||
state: directory
|
|
||||||
|
|
||||||
- name: Mount iSCSI target
|
|
||||||
mount:
|
|
||||||
path: /data
|
|
||||||
src: "{{ iscsi_device }}1" # Mount the new partition
|
|
||||||
fstype: ext4
|
|
||||||
opts: defaults,_netdev
|
|
||||||
state: mounted
|
|
||||||
|
|
||||||
# - name: Ensure iSCSI target is mounted at boot
|
|
||||||
# lineinfile:
|
|
||||||
# path: /etc/fstab
|
|
||||||
# line: "{{ iscsi_device }}1 /data ext4 _netdev 0 0"
|
|
||||||
# state: present
|
|
@ -4,13 +4,13 @@
|
|||||||
path: "{{ item }}"
|
path: "{{ item }}"
|
||||||
state: directory
|
state: directory
|
||||||
with_items:
|
with_items:
|
||||||
- "{{ data_folder }}/jellyseerr"
|
- "/mnt/nfs/docker/jellyseerr"
|
||||||
- "{{ data_folder }}/jellyseerr/config"
|
- "/mnt/nfs/docker/jellyseerr/config"
|
||||||
|
|
||||||
- name: Create the jellyseerr container
|
- name: Create the jellyseerr container
|
||||||
docker_container:
|
docker_container:
|
||||||
name: jellyseerr
|
name: jellyseerr
|
||||||
image: fallenbagel/jellyseerr:2.5.2
|
image: fallenbagel/jellyseerr:1.9.2
|
||||||
restart_policy: unless-stopped
|
restart_policy: unless-stopped
|
||||||
recreate: true
|
recreate: true
|
||||||
networks:
|
networks:
|
||||||
@ -20,7 +20,7 @@
|
|||||||
PGID: "1000"
|
PGID: "1000"
|
||||||
TZ: "Australia/Brisbane"
|
TZ: "Australia/Brisbane"
|
||||||
volumes:
|
volumes:
|
||||||
- "{{ data_folder }}/jellyseerr/config:/app/config"
|
- /mnt/nfs/docker/jellyseerr/config:/app/config
|
||||||
labels:
|
labels:
|
||||||
traefik.enable: "true"
|
traefik.enable: "true"
|
||||||
traefik.http.routers.jellyseerr.rule: "Host(`jellyseerr.comprofix.xyz`)"
|
traefik.http.routers.jellyseerr.rule: "Host(`jellyseerr.comprofix.xyz`)"
|
||||||
|
@ -8,13 +8,13 @@
|
|||||||
path: "{{ item }}"
|
path: "{{ item }}"
|
||||||
state: directory
|
state: directory
|
||||||
with_items:
|
with_items:
|
||||||
- "{{ data_folder }}/lidarr"
|
- "/mnt/nfs/docker/lidarr"
|
||||||
- "{{ data_folder }}/lidarr/config"
|
- "/mnt/nfs/docker/lidarr/config"
|
||||||
|
|
||||||
- name: Create the lidarr container
|
- name: Create the lidarr container
|
||||||
docker_container:
|
docker_container:
|
||||||
name: lidarr
|
name: lidarr
|
||||||
image: ghcr.io/linuxserver/lidarr:latest@sha256:e01a6968d2c58f04278a67da9690e62b0cba07f5dbacb03b0cfbf195940f94a7
|
image: ghcr.io/linuxserver/lidarr:latest@sha256:a77af413426b8509fad2d02f5b89104a5766ee6ebb13497d73993e74f6cfa0a8
|
||||||
restart_policy: unless-stopped
|
restart_policy: unless-stopped
|
||||||
recreate: true
|
recreate: true
|
||||||
networks:
|
networks:
|
||||||
@ -26,7 +26,7 @@
|
|||||||
AUTO_UPDATE: "true" #optional
|
AUTO_UPDATE: "true" #optional
|
||||||
DOCKER_MODS: "ghcr.io/themepark-dev/theme.park:lidarr"
|
DOCKER_MODS: "ghcr.io/themepark-dev/theme.park:lidarr"
|
||||||
volumes:
|
volumes:
|
||||||
- "{{ data_folder }}/lidarr/config:/config"
|
- /mnt/nfs/docker/lidarr/config:/config
|
||||||
- /mnt/nfs/data:/data
|
- /mnt/nfs/data:/data
|
||||||
labels:
|
labels:
|
||||||
traefik.enable: "true"
|
traefik.enable: "true"
|
||||||
|
@ -8,13 +8,13 @@
|
|||||||
path: "{{ item }}"
|
path: "{{ item }}"
|
||||||
state: directory
|
state: directory
|
||||||
with_items:
|
with_items:
|
||||||
- "{{ data_folder }}/mariadb"
|
- "/mnt/nfs/docker/mariadb"
|
||||||
- "{{ data_folder }}/mariadb/config"
|
- "/mnt/nfs/docker/mariadb/config"
|
||||||
|
|
||||||
- name: Create the mariadb container
|
- name: Create the mariadb container
|
||||||
docker_container:
|
docker_container:
|
||||||
name: "mariadb"
|
name: "mariadb"
|
||||||
image: ghcr.io/linuxserver/mariadb:11.4.5
|
image: ghcr.io/linuxserver/mariadb:10.11.8
|
||||||
restart_policy: unless-stopped
|
restart_policy: unless-stopped
|
||||||
recreate: true
|
recreate: true
|
||||||
ports:
|
ports:
|
||||||
@ -25,5 +25,5 @@
|
|||||||
MYSQL_ROOT_PASSWORD: "{{MYSQL_ROOT_PASSWORD}}"
|
MYSQL_ROOT_PASSWORD: "{{MYSQL_ROOT_PASSWORD}}"
|
||||||
TZ: "Australia/Brisbane"
|
TZ: "Australia/Brisbane"
|
||||||
volumes:
|
volumes:
|
||||||
- "{{ data_folder }}/mariadb/config:/config"
|
- "/mnt/nfs/docker/mariadb/config:/config"
|
||||||
|
|
@ -4,13 +4,13 @@
|
|||||||
path: "{{ item }}"
|
path: "{{ item }}"
|
||||||
state: directory
|
state: directory
|
||||||
with_items:
|
with_items:
|
||||||
- "{{ data_folder }}/mealie"
|
- "/mnt/nfs/docker/mealie"
|
||||||
- "{{ data_folder }}/mealie/config"
|
- "/mnt/nfs/docker/mealie/config"
|
||||||
|
|
||||||
- name: Create the mealie container
|
- name: Create the mealie container
|
||||||
docker_container:
|
docker_container:
|
||||||
name: mealie
|
name: mealie
|
||||||
image: ghcr.io/mealie-recipes/mealie:v2.8.0
|
image: ghcr.io/mealie-recipes/mealie:v1.12.0
|
||||||
restart_policy: unless-stopped
|
restart_policy: unless-stopped
|
||||||
networks:
|
networks:
|
||||||
- name: proxy
|
- name: proxy
|
||||||
@ -27,7 +27,7 @@
|
|||||||
BASE_URL: "mealie.comprofix.xyz"
|
BASE_URL: "mealie.comprofix.xyz"
|
||||||
SMTP_HOST: "{{MAIL_HOST}}"
|
SMTP_HOST: "{{MAIL_HOST}}"
|
||||||
volumes:
|
volumes:
|
||||||
- "{{ data_folder }}/mealie/data/:/app/data"
|
- /mnt/nfs/docker/mealie/data/:/app/data
|
||||||
labels:
|
labels:
|
||||||
traefik.enable: "true"
|
traefik.enable: "true"
|
||||||
traefik.http.routers.mealie.rule: "Host(`mealie.comprofix.xyz`)"
|
traefik.http.routers.mealie.rule: "Host(`mealie.comprofix.xyz`)"
|
||||||
|
@ -1,29 +0,0 @@
|
|||||||
---
|
|
||||||
- name: Create directories
|
|
||||||
file:
|
|
||||||
path: "{{ item }}"
|
|
||||||
state: directory
|
|
||||||
with_items:
|
|
||||||
- "{{ data_folder }}/mediawiki"
|
|
||||||
|
|
||||||
- name: Create the wiki container
|
|
||||||
docker_container:
|
|
||||||
name: mediawiki
|
|
||||||
image: mediawiki:1.43.1
|
|
||||||
restart_policy: unless-stopped
|
|
||||||
recreate: true
|
|
||||||
networks:
|
|
||||||
- name: proxy
|
|
||||||
env:
|
|
||||||
PUID: "1000"
|
|
||||||
PGID: "1000"
|
|
||||||
TZ: "Australia/Brisbane"
|
|
||||||
volumes:
|
|
||||||
- "{{ data_folder }}/mediawiki/images:/var/www/html/images"
|
|
||||||
- "{{ data_folder }}/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"
|
|
@ -1,24 +0,0 @@
|
|||||||
---
|
|
||||||
- name: Create directories
|
|
||||||
file:
|
|
||||||
path: "{{ item }}"
|
|
||||||
state: directory
|
|
||||||
with_items:
|
|
||||||
- "{{ data_folder }}/omada"
|
|
||||||
- "{{ data_folder }}/omada/data"
|
|
||||||
- "{{ data_folder }}/omada/logs"
|
|
||||||
|
|
||||||
- name: Create the omada container
|
|
||||||
docker_container:
|
|
||||||
name: omada
|
|
||||||
image: mbentley/omada-controller:5.15
|
|
||||||
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"
|
|
||||||
env:
|
|
||||||
PUID: "1000"
|
|
||||||
PGID: "1000"
|
|
||||||
TZ: "Australia/Brisbane"
|
|
@ -4,8 +4,8 @@
|
|||||||
path: "{{ item }}"
|
path: "{{ item }}"
|
||||||
state: directory
|
state: directory
|
||||||
with_items:
|
with_items:
|
||||||
- "{{ data_folder }}/osticket"
|
- "/mnt/nfs/docker/osticket"
|
||||||
- "{{ data_folder }}/osticket/config"
|
- "/mnt/nfs/docker/osticket/config"
|
||||||
|
|
||||||
- name: Create the osticket container
|
- name: Create the osticket container
|
||||||
docker_container:
|
docker_container:
|
||||||
|
@ -4,13 +4,13 @@
|
|||||||
path: "{{ item }}"
|
path: "{{ item }}"
|
||||||
state: directory
|
state: directory
|
||||||
with_items:
|
with_items:
|
||||||
- "{{ data_folder }}/prowlarr"
|
- "/mnt/nfs/docker/prowlarr"
|
||||||
- "{{ data_folder }}/prowlarr/config"
|
- "/mnt/nfs/docker/prowlarr/config"
|
||||||
|
|
||||||
- name: Create the prowlarr container
|
- name: Create the prowlarr container
|
||||||
docker_container:
|
docker_container:
|
||||||
name: prowlarr
|
name: prowlarr
|
||||||
image: linuxserver/prowlarr:1.37.0
|
image: linuxserver/prowlarr:1.23.1
|
||||||
restart_policy: unless-stopped
|
restart_policy: unless-stopped
|
||||||
recreate: true
|
recreate: true
|
||||||
networks:
|
networks:
|
||||||
@ -22,7 +22,7 @@
|
|||||||
AUTO_UPDATE: "true" #optional
|
AUTO_UPDATE: "true" #optional
|
||||||
DOCKER_MODS: "ghcr.io/themepark-dev/theme.park:prowlarr"
|
DOCKER_MODS: "ghcr.io/themepark-dev/theme.park:prowlarr"
|
||||||
volumes:
|
volumes:
|
||||||
- "{{ data_folder }}/prowlarr/config:/config"
|
- /mnt/nfs/docker/prowlarr/config:/config
|
||||||
labels:
|
labels:
|
||||||
traefik.enable: "true"
|
traefik.enable: "true"
|
||||||
traefik.http.routers.prowlarr.rule: "Host(`prowlarr.comprofix.xyz`)"
|
traefik.http.routers.prowlarr.rule: "Host(`prowlarr.comprofix.xyz`)"
|
||||||
|
@ -4,8 +4,8 @@
|
|||||||
path: "{{ item }}"
|
path: "{{ item }}"
|
||||||
state: directory
|
state: directory
|
||||||
with_items:
|
with_items:
|
||||||
- "{{ data_folder }}/pykms"
|
- "/mnt/nfs/docker/pykms"
|
||||||
- "{{ data_folder }}/pykms/db"
|
- "/mnt/nfs/docker/pykms/config"
|
||||||
|
|
||||||
- name: Create the pykms container
|
- name: Create the pykms container
|
||||||
docker_container:
|
docker_container:
|
||||||
@ -13,6 +13,8 @@
|
|||||||
image: ghcr.io/py-kms-organization/py-kms:latest
|
image: ghcr.io/py-kms-organization/py-kms:latest
|
||||||
restart_policy: unless-stopped
|
restart_policy: unless-stopped
|
||||||
recreate: true
|
recreate: true
|
||||||
|
networks:
|
||||||
|
- name: proxy_network
|
||||||
ports:
|
ports:
|
||||||
- "1688:1688"
|
- "1688:1688"
|
||||||
env:
|
env:
|
||||||
@ -21,6 +23,6 @@
|
|||||||
HWID: "RANDOM"
|
HWID: "RANDOM"
|
||||||
LOGLEVEL: "INFO"
|
LOGLEVEL: "INFO"
|
||||||
volumes:
|
volumes:
|
||||||
- "{{ data_folder }}/pykms/db:/home/py-kms/db"
|
- /mnt/nfs/docker/pykms/db:/home/py-kms/db
|
||||||
- /etc/localtime:/etc/localtime:ro
|
- /etc/localtime:/etc/localtime:ro
|
||||||
|
|
||||||
|
@ -4,13 +4,13 @@
|
|||||||
path: "{{ item }}"
|
path: "{{ item }}"
|
||||||
state: directory
|
state: directory
|
||||||
with_items:
|
with_items:
|
||||||
- "{{ data_folder }}/radarr"
|
- "/mnt/nfs/docker/radarr"
|
||||||
- "{{ data_folder }}/radarr/config"
|
- "/mnt/nfs/docker/radarr/config"
|
||||||
|
|
||||||
- name: Create the radarr container
|
- name: Create the radarr container
|
||||||
docker_container:
|
docker_container:
|
||||||
name: radarr
|
name: radarr
|
||||||
image: linuxserver/radarr:5.25.0
|
image: linuxserver/radarr:5.9.1
|
||||||
restart_policy: unless-stopped
|
restart_policy: unless-stopped
|
||||||
recreate: true
|
recreate: true
|
||||||
networks:
|
networks:
|
||||||
@ -21,7 +21,7 @@
|
|||||||
TZ: "Australia/Brisbane"
|
TZ: "Australia/Brisbane"
|
||||||
DOCKER_MODS: "ghcr.io/themepark-dev/theme.park:radarr"
|
DOCKER_MODS: "ghcr.io/themepark-dev/theme.park:radarr"
|
||||||
volumes:
|
volumes:
|
||||||
- "{{ data_folder }}/radarr/config:/config"
|
- /mnt/nfs/docker/radarr/config:/config
|
||||||
- /mnt/nfs/data:/data
|
- /mnt/nfs/data:/data
|
||||||
labels:
|
labels:
|
||||||
traefik.enable: "true"
|
traefik.enable: "true"
|
||||||
|
@ -4,13 +4,13 @@
|
|||||||
path: "{{ item }}"
|
path: "{{ item }}"
|
||||||
state: directory
|
state: directory
|
||||||
with_items:
|
with_items:
|
||||||
- "{{ data_folder }}/readarr"
|
- "/mnt/nfs/docker/readarr"
|
||||||
- "{{ data_folder }}/readarr/config"
|
- "/mnt/nfs/docker/readarr/config"
|
||||||
|
|
||||||
- name: Create the readarr container
|
- name: Create the readarr container
|
||||||
docker_container:
|
docker_container:
|
||||||
name: readarr
|
name: readarr
|
||||||
image: ghcr.io/linuxserver/readarr:develop@sha256:d71c575745ab4579ae0dbb4f91244cf9a74d7085d28a927218146466f8e6418c
|
image: ghcr.io/linuxserver/readarr:develop@sha256:dbca70a2dedff17b12698f55c02a49e3ec37e8ce884c5352b54264f9a3979aae
|
||||||
restart_policy: unless-stopped
|
restart_policy: unless-stopped
|
||||||
recreate: true
|
recreate: true
|
||||||
networks:
|
networks:
|
||||||
@ -21,7 +21,7 @@
|
|||||||
TZ: "Australia/Brisbane"
|
TZ: "Australia/Brisbane"
|
||||||
DOCKER_MODS: "ghcr.io/themepark-dev/theme.park:readarr"
|
DOCKER_MODS: "ghcr.io/themepark-dev/theme.park:readarr"
|
||||||
volumes:
|
volumes:
|
||||||
- "{{ data_folder }}/readarr/config/:/config"
|
- /mnt/nfs/docker/readarr/config/:/config
|
||||||
- /mnt/nfs/data/:/data
|
- /mnt/nfs/data/:/data
|
||||||
labels:
|
labels:
|
||||||
traefik.enable: "true"
|
traefik.enable: "true"
|
||||||
|
@ -4,13 +4,13 @@
|
|||||||
path: "{{ item }}"
|
path: "{{ item }}"
|
||||||
state: directory
|
state: directory
|
||||||
with_items:
|
with_items:
|
||||||
- "{{ data_folder }}/sabnzbd"
|
- "/mnt/nfs/docker/sabnzbd"
|
||||||
- "{{ data_folder }}/sabnzbd/config"
|
- "/mnt/nfs/docker/sabnzbd/config"
|
||||||
|
|
||||||
- name: Create the sabnzbd container
|
- name: Create the sabnzbd container
|
||||||
docker_container:
|
docker_container:
|
||||||
name: sabnzbd
|
name: sabnzbd
|
||||||
image: linuxserver/sabnzbd:4.5.1
|
image: linuxserver/sabnzbd:4.3.3
|
||||||
restart_policy: unless-stopped
|
restart_policy: unless-stopped
|
||||||
recreate: true
|
recreate: true
|
||||||
networks:
|
networks:
|
||||||
@ -22,7 +22,7 @@
|
|||||||
HOSTNAME: "sabnzbd.comprofix.xyz"
|
HOSTNAME: "sabnzbd.comprofix.xyz"
|
||||||
DOCKER_MODS: "ghcr.io/themepark-dev/theme.park:sabnzbd"
|
DOCKER_MODS: "ghcr.io/themepark-dev/theme.park:sabnzbd"
|
||||||
volumes:
|
volumes:
|
||||||
- "{{ data_folder }}/sabnzbd/config:/config"
|
- /mnt/nfs/docker/sabnzbd/config:/config
|
||||||
- /mnt/nfs/data:/data
|
- /mnt/nfs/data:/data
|
||||||
labels:
|
labels:
|
||||||
traefik.enable: "true"
|
traefik.enable: "true"
|
||||||
|
@ -4,13 +4,13 @@
|
|||||||
path: "{{ item }}"
|
path: "{{ item }}"
|
||||||
state: directory
|
state: directory
|
||||||
with_items:
|
with_items:
|
||||||
- "{{ data_folder }}/sonarr"
|
- "/mnt/nfs/docker/sonarr"
|
||||||
- "{{ data_folder }}/sonarr/config"
|
- "/mnt/nfs/docker/sonarr/config"
|
||||||
|
|
||||||
- name: Create the sonarr container
|
- name: Create the sonarr container
|
||||||
docker_container:
|
docker_container:
|
||||||
name: sonarr
|
name: sonarr
|
||||||
image: linuxserver/sonarr:4.0.14
|
image: linuxserver/sonarr:4.0.9
|
||||||
restart_policy: unless-stopped
|
restart_policy: unless-stopped
|
||||||
recreate: true
|
recreate: true
|
||||||
networks:
|
networks:
|
||||||
@ -21,7 +21,7 @@
|
|||||||
TZ: "Australia/Brisbane"
|
TZ: "Australia/Brisbane"
|
||||||
DOCKER_MODS: "ghcr.io/themepark-dev/theme.park:sonarr"
|
DOCKER_MODS: "ghcr.io/themepark-dev/theme.park:sonarr"
|
||||||
volumes:
|
volumes:
|
||||||
- "{{ data_folder }}/sonarr/config/:/config"
|
- /mnt/nfs/docker/sonarr/config/:/config
|
||||||
- /mnt/nfs/data:/data
|
- /mnt/nfs/data:/data
|
||||||
labels:
|
labels:
|
||||||
traefik.enable: "true"
|
traefik.enable: "true"
|
||||||
|
@ -4,14 +4,13 @@
|
|||||||
path: "{{ item }}"
|
path: "{{ item }}"
|
||||||
state: directory
|
state: directory
|
||||||
with_items:
|
with_items:
|
||||||
- "{{ data_folder }}/speedtest"
|
- "/mnt/nfs/docker/speedtest"
|
||||||
- "{{ data_folder }}/speedtest/config"
|
- "/mnt/nfs/docker/speedtest/config"
|
||||||
- "{{ data_folder }}/speedtest/web"
|
|
||||||
|
|
||||||
- name: Create the speedtest container
|
- name: Create the speedtest container
|
||||||
docker_container:
|
docker_container:
|
||||||
name: speedtest
|
name: speedtest
|
||||||
image: lscr.io/linuxserver/speedtest-tracker:1.6.0
|
image: lscr.io/linuxserver/speedtest-tracker:0.21.2
|
||||||
restart_policy: unless-stopped
|
restart_policy: unless-stopped
|
||||||
recreate: true
|
recreate: true
|
||||||
networks:
|
networks:
|
||||||
@ -29,9 +28,10 @@
|
|||||||
TZ: "Australia/Brisbane"
|
TZ: "Australia/Brisbane"
|
||||||
SPEEDTEST_SCHEDULE: "0 * * * *"
|
SPEEDTEST_SCHEDULE: "0 * * * *"
|
||||||
DISPLAY_TIMEZONE: "Australia/Brisbane"
|
DISPLAY_TIMEZONE: "Australia/Brisbane"
|
||||||
|
|
||||||
volumes:
|
volumes:
|
||||||
- "{{ data_folder }}/speedtest/config:/config"
|
- /mnt/nfs/docker/speedtest/config:/config
|
||||||
- "{{ data_folder }}/speedtest/web:/etc/ssl/web"
|
- /mnt/nfs/docker/speedtest/web:/etc/ssl/web
|
||||||
labels:
|
labels:
|
||||||
traefik.enable: "true"
|
traefik.enable: "true"
|
||||||
traefik.http.routers.speedtest.rule: "Host(`speedtest.comprofix.xyz`)"
|
traefik.http.routers.speedtest.rule: "Host(`speedtest.comprofix.xyz`)"
|
||||||
|
@ -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"
|
|
@ -1,28 +0,0 @@
|
|||||||
---
|
|
||||||
- name: Create directories
|
|
||||||
file:
|
|
||||||
path: "{{ item }}"
|
|
||||||
state: directory
|
|
||||||
with_items:
|
|
||||||
- "{{ data_folder }}/uptime-kuma"
|
|
||||||
- "{{ data_folder }}/uptime-kuma/data"
|
|
||||||
|
|
||||||
- name: Create the uptimekuma container
|
|
||||||
docker_container:
|
|
||||||
name: uptime-kuma
|
|
||||||
image: louislam/uptime-kuma:1.23.16
|
|
||||||
restart_policy: unless-stopped
|
|
||||||
recreate: true
|
|
||||||
networks:
|
|
||||||
- name: proxy
|
|
||||||
volumes:
|
|
||||||
- /data/uptime-kuma/data:/app/data
|
|
||||||
- /etc/resolv.conf:/etc/resolv.conf:ro
|
|
||||||
- /var/run/docker.sock:/var/run/docker.sock
|
|
||||||
labels:
|
|
||||||
traefik.enable: "true"
|
|
||||||
traefik.http.routers.uptime.rule: "Host(`uptime.comprofix.com`)"
|
|
||||||
traefik.http.routers.uptime.entrypoints: "https"
|
|
||||||
traefik.http.routers.uptime.tls: "true"
|
|
||||||
traefik.http.services.uptime.loadbalancer.server.port: "3001"
|
|
||||||
traefik.http.services.uptime.loadbalancer.server.scheme: "http"
|
|
@ -6,14 +6,11 @@
|
|||||||
with_items:
|
with_items:
|
||||||
- "{{ data_folder }}/vaultwarden"
|
- "{{ data_folder }}/vaultwarden"
|
||||||
- "{{ data_folder }}/vaultwarden/config"
|
- "{{ data_folder }}/vaultwarden/config"
|
||||||
- "{{ data_folder }}/vaultwardenbackup"
|
|
||||||
- "{{ data_folder }}/vaultwardenbackup/config"
|
|
||||||
- "{{ data_folder }}/vaultwardenbackup/config/rclone"
|
|
||||||
|
|
||||||
- name: Create the vaultwarden container
|
- name: Create the vaultwarden container
|
||||||
docker_container:
|
docker_container:
|
||||||
name: vaultwarden
|
name: vaultwarden
|
||||||
image: vaultwarden/server:1.34.1
|
image: vaultwarden/server:1.32.0
|
||||||
restart_policy: unless-stopped
|
restart_policy: unless-stopped
|
||||||
recreate: true
|
recreate: true
|
||||||
networks:
|
networks:
|
||||||
@ -33,30 +30,33 @@
|
|||||||
traefik.http.services.vaultwarden.loadbalancer.server.port: "80"
|
traefik.http.services.vaultwarden.loadbalancer.server.port: "80"
|
||||||
register: container
|
register: container
|
||||||
|
|
||||||
|
- name: Create rclone config folder
|
||||||
|
file:
|
||||||
|
path: "/root/.config/rclone"
|
||||||
|
state: directory
|
||||||
|
|
||||||
- name: Copy rclone config
|
- name: Copy rclone config
|
||||||
copy:
|
copy:
|
||||||
src: scripts/rclone.conf
|
src: scripts/rclone.conf
|
||||||
dest: "{{ data_folder }}/vaultwardenbackup/config/rclone/rclone.conf"
|
dest: /root/.config/rclone/rclone.conf
|
||||||
decrypt: yes
|
decrypt: yes
|
||||||
mode: "0600"
|
mode: "0600"
|
||||||
|
|
||||||
- name: Create the vaultwarden container
|
- name: copy backup script
|
||||||
docker_container:
|
copy:
|
||||||
name: vaultwardenbackup
|
src: scripts/backupvpsdocker
|
||||||
image: ttionya/vaultwarden-backup:1.24.3
|
dest: /usr/local/sbin/backupvpsdocker
|
||||||
restart_policy: unless-stopped
|
mode: 0755
|
||||||
recreate: true
|
|
||||||
env:
|
- name: Setup cron job for backup
|
||||||
PUID: "1000"
|
cron:
|
||||||
PGID: "1000"
|
name: backup backupvpsdocker
|
||||||
TZ: "Australia/Brisbane"
|
minute: 0
|
||||||
CRON: "0 4 * * *"
|
hour: 4
|
||||||
BACKUP_KEEP_DAYS: "14"
|
job: "/usr/local/sbin/backupvpsdocker >/dev/null 2>&1"
|
||||||
ZIP_PASSWORD: "{{ VAULTWARDEN_BACKUP_ZIP_PASSWORD }}"
|
|
||||||
volumes:
|
|
||||||
- "{{ data_folder }}/vaultwarden/data:/bitwarden/data"
|
|
||||||
- "{{ data_folder }}/vaultwardenbackup/config:/config"
|
|
||||||
register: container
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
25
vault.sh
25
vault.sh
@ -10,13 +10,7 @@ if [ $# -eq 0 ]
|
|||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
#files=`find . \( -type d -name 'group_vars' -o -name 'vars' \) -exec find {} -type f \;`
|
files=`find . \( -type d -name 'group_vars' -o -name 'vars' \) -exec find {} -type f \;`
|
||||||
files=(
|
|
||||||
"./group_vars/all.yml"
|
|
||||||
"./roles/docker/vars/main.yml"
|
|
||||||
"./roles/traefik/vars/main.yml"
|
|
||||||
"./scripts/rclone.conf"
|
|
||||||
)
|
|
||||||
|
|
||||||
# password_type=--ask-vault-password
|
# password_type=--ask-vault-password
|
||||||
# if [ -f "~/.vault_password.txt" ]
|
# if [ -f "~/.vault_password.txt" ]
|
||||||
@ -31,18 +25,17 @@ files=(
|
|||||||
|
|
||||||
if [ $1 == "encrypt" ]
|
if [ $1 == "encrypt" ]
|
||||||
then
|
then
|
||||||
for file in "${files[@]}"; do
|
ansible-vault encrypt --vault-password-file=~/.vault_password.txt $files
|
||||||
echo "$file encrypted"
|
for value in $files; do
|
||||||
ansible-vault encrypt --vault-password-file=~/.vault_password "$file"
|
echo $value;
|
||||||
echo $value;
|
done
|
||||||
done
|
|
||||||
|
|
||||||
elif [ $1 == "decrypt" ]
|
elif [ $1 == "decrypt" ]
|
||||||
then
|
then
|
||||||
for file in "${files[@]}"; do
|
ansible-vault decrypt --vault-password-file=~/.vault_password.txt $files
|
||||||
echo "$file decrypted"
|
for value in $files; do
|
||||||
ansible-vault decrypt --vault-password-file=~/.vault_password "$file"
|
echo $value;
|
||||||
done
|
done
|
||||||
else
|
else
|
||||||
echo "Wrong argument supplied. Run without arguments to see allowed ones."
|
echo "Wrong argument supplied. Run without arguments to see allowed ones."
|
||||||
fi
|
fi
|
||||||
|
Loading…
x
Reference in New Issue
Block a user