feat: add shlink database container

This commit is contained in:
David Kilias 2023-11-30 22:19:51 +00:00
parent e48ddba82f
commit 14c8f98e2b
3 changed files with 74 additions and 33 deletions

View file

@ -98,14 +98,42 @@
env: env:
TZ: "{{ timezone }}" TZ: "{{ timezone }}"
- name: Setup docker network
docker_network:
name: shlinknet
state: present
internal: true
tags:
- shlink
- name: Ensure shlink data dir exists - name: Ensure shlink data dir exists
ansible.builtin.file: ansible.builtin.file:
path: "{{ data_dir }}/shlink" path: "{{ data_dir }}/shlink/data/database"
state: directory state: directory
mode: 0755 mode: 0755
tags: tags:
- shlink - shlink
- name: Ensure shlink database container is running
docker_container:
name: shlinkdb
image: postgres:16.1-alpine
pull: true
state: started
restart_policy: unless-stopped
detach: yes
env:
TZ: "{{ timezone }}"
POSTGRES_USER: "shlink"
POSTGRES_PASSWORD: "{{ shlink_postgres_password }}"
POSTGRES_DB: "shlink"
volumes:
- "{{ data_dir }}/shlink/data/database:/var/lib/postgresql/data"
networks:
- name: shlinknet
tags:
- shlink
- name: Ensure container for shlink is running - name: Ensure container for shlink is running
docker_container: docker_container:
name: shlink name: shlink
@ -121,8 +149,18 @@
DEFAULT_DOMAIN: "{{ shlink_domain_name }}" DEFAULT_DOMAIN: "{{ shlink_domain_name }}"
GEOLITE_LICENSE_KEY: "{{ shlink_geolite_license_key }}" GEOLITE_LICENSE_KEY: "{{ shlink_geolite_license_key }}"
INITIAL_API_KEY: "{{ shlink_initial_api_key }}" INITIAL_API_KEY: "{{ shlink_initial_api_key }}"
DB_DRIVER: "postgres"
DB_HOST: shlinkdb
DB_NAME: "shlink"
DB_USER: "shlink"
DB_PASSWORD: "{{ shlink_postgres_password }}"
volumes: volumes:
- "{{ data_dir }}/shlink/database.sqlite:/etc/shlink/datadatabase.sqlite:rw" - "{{ data_dir }}/shlink/database.sqlite:/etc/shlink/datadatabase.sqlite:rw"
networks_cli_compatible: false
comparisons:
networks: allow_more_present
networks:
- name: shlinknet
tags: tags:
- shlink - shlink

View file

@ -19,6 +19,7 @@ shlink_domain_name: sl.n39.eu
shlink_image: shlinkio/shlink:3.7.0 shlink_image: shlinkio/shlink:3.7.0
shlink_geolite_license_key: "{{ vault_shlink_geolite_license_key }}" shlink_geolite_license_key: "{{ vault_shlink_geolite_license_key }}"
shlink_initial_api_key: "{{ vault_shlink_initial_api_key }}" shlink_initial_api_key: "{{ vault_shlink_initial_api_key }}"
shlink_postgres_password: "{{ vault_shlink_postgres_password }}"
hedgedoc_host_port: 8084 hedgedoc_host_port: 8084
hedgedoc_domain_name: pad.n39.eu hedgedoc_domain_name: pad.n39.eu

View file

@ -1,33 +1,35 @@
$ANSIBLE_VAULT;1.1;AES256 $ANSIBLE_VAULT;1.1;AES256
34373163393834623634633434373737303738383439616433633236363937633764666231373964 33383365663237393662386363396661323463396239653830396164316538323362376337326233
6330396333366432343765313738396461333133656236350a356239656636363764303464323737 3730346439376362396261333165616536616135366637660a323435346262353061323130303362
32353330336364663833386631303364323861326664633937383132373735373337393431646633 66656533633333346536653638303463386334306461313830383631323331343332376435636631
3763323461363561390a393034333364663633396462646632393362613733363239633061616139 6662323136306538370a616563376364373737396134616161356134636663613262366234306530
30383461363565346464306263613363396237373233346361333137626539613463336665343134 36396635383933393034613863386338613266333834616666393939393261613235366132663866
66623461623634386134636334386561356230373138643039653335353866356630646536376438 65356162633934633066336532396662356163386335313833386230643165633464663065383131
33643232313037356261303034383232623863323030616134386530646366636230616432316639 32366534366335623136363738653066336339623832636166343239613535623333343035633662
33346637316435353365343434613230353934613262653964643563303938326433373938636539 39663638386364306361643861666530323730626265633865343534643564363961636463356431
30643633636134666135393166313334353336343132346564313637333837323036623331326134 34333463383137363064323634656561313464303266653138383038303964363263326165643130
32643166663165343739663936356432633739303265333536336365646435313162623638353434 63613162383030323263613964303932623339626139326161393439663763386462313562636330
30613335306134623238666261666537366631633133663162346464396138383139613331346436 65323762356135333736316564623565316533646132303265623364386263383733306136326237
34363232356163373534393062303137663732366237313732323465613463323837386561666164 36353638663936666633393332623436643436333164633566386130396638633637323538633033
37346535393263343661303436353739323364323663626135373330303038383135653564623734 37326663636139646236636164353066626136396566633363333236313266656139646563386234
62383337666362653633323130613264303133653731643965666461383030656562373832333731 66633735396532613838646561643563623538363264383763303363313266363134353232643666
36333632353763363931326235613164646364306162643533353038613239386632336662346532 33333531386238356232306164346331353366636565656463323134333362353764663437663330
38626135323233386462646533633536396235396465643635383834306631613234646336656134 63363065353430353861316134656533363533666335373163303661656134646237386664636564
64616530346466666231623432323462623438643333373838396666356465386230383737663731 33643836386331363461383934666335336533353331363735346566323139646362343765383766
35356262613064366433363263373033636632363135386531616636313337663536643437623061 38306462313033353831626439626235393036393765306139313161353163636233616139396430
66353333376530663765376432323933363730646237646535663533346333633263346563343337 65373236336562343939356266333037643838363333396462336331303366333362393462313233
61313461323966393536303961623037353432326632336132306134343332663462666230353732 61343632646431616461343861626437623362343762393265323461343263396338373434623065
65613832633134386266373337396439333637343139626136636237383632366232363837383539 63316438323732326531316534613531366464623435623163663830343962343532353136366338
37353965323061336365653366343064653739346363623662373734323065323162353035363938 36646663363763633432376632353164366463336166356465333238383637623633663039343938
62326664306232356134306563646338666635333531663338396239636539356664333937663636 31613662666336316137376338393131393331653331663465373266313164303962363932656430
36303032333962653335326261366362373035626463303933393666633832393762326435386361 63623733313362323166356435346634333431306431393633346430336461663965643362643634
36353065363762363638303833616133663330393532313233306135653034656562626435633834 37666635633937323635373837333034653835363939623938306462366234343130386430303965
62383833306633346662383439313037633763353737333234373234303962666262316638326461 39323563343033343137363065396134366434383637363661323538343135323336333962646131
62373765643432663134643561623261326265306437306439353966336364373931376261333963 36356436396431646566613133336263653466633237373839626361393738383865313238363535
65353938376463313463623037303566366435323938326633353334323731333134353137356165 66623031623562386634366238383632326238636231626637633436326336633335626433653363
39346563303536356565663333393061613231653565646435373839626235633032316333646566 36626237333962653863613932376230396535303834323030353239623161653734303966633930
37303232396139653531633836663461623464316332666632363435313566326262666562626130 38653338636431383730376262386630613062366231366239616233616439386531313338343166
63613937323335336630383261363334396366623161343730623662363533323430326334353063 38656138303363643933633864616366343039626237616633643961346338623737313266633537
31343938346434613765 36623731323639643530363766323530616462366264613265303861663863306461393834393565
38656535353138306264386433323337343661326435316632323838303639353830613832613461
6461613532393237393866613765396530633561663838613461