Add linkwarden service

This commit is contained in:
Tobias Reisinger 2024-03-08 00:35:42 +01:00
parent d42865d3f3
commit eb6052e4ec
Signed by: serguzim
GPG key ID: 13AD60C237A28DFE
5 changed files with 58 additions and 1 deletions

View file

@ -41,6 +41,8 @@
tags: [influxdb, sensors, monitoring]
- role: jellyfin
tags: [jellyfin, media]
- role: linkwarden
tags: [linkwarden, booksmarks]
- role: minio
tags: [minio, storage]
- role: ntfy

View file

@ -77,7 +77,7 @@ immich_compose:
default:
database:
image: tensorchord/pgvecto-rs:pg16-v0.1.11
image: tensorchord/pgvecto-rs:pg16-v0.2.0
env_file:
- service.env
volumes:

View file

@ -0,0 +1,12 @@
---
- name: Set common facts
ansible.builtin.import_tasks: tasks/set-default-facts.yml
- name: Deploy {{ svc.name }}
vars:
svc: "{{ linkwarden_svc }}"
env: "{{ linkwarden_env }}"
compose: "{{ linkwarden_compose }}"
block:
- name: Import tasks to deploy common service
ansible.builtin.import_tasks: tasks/deploy-common-service.yml

View file

@ -0,0 +1,39 @@
---
linkwarden_secret: "{{ vault_linkwarden.secret }}"
linkwarden_db_host_port: "{{ postgres.host }}:{{ postgres.port }}"
linkwarden_db_user: "{{ vault_linkwarden.db.user }}"
linkwarden_db_pass: "{{ vault_linkwarden.db.pass }}"
linkwarden_db_database: linkwarden
linkwarden_minio_accesskey: "{{ vault_linkwarden.minio.accesskey }}"
linkwarden_minio_secretkey: "{{ vault_linkwarden.minio.secretkey }}"
linkwarden_svc:
domain: bookmarks.serguzim.me
name: linkwarden
port: 3000
linkwarden_env:
NEXTAUTH_SECRET: "{{ linkwarden_secret }}"
NEXTAUTH_URL: https://bookmarks.serguzim.me/api/v1/auth
DATABASE_URL: postgres://{{ linkwarden_db_user }}:{{ linkwarden_db_pass }}@{{ linkwarden_db_host_port }}/{{ linkwarden_db_database }}
SPACES_KEY: "{{ linkwarden_minio_accesskey }}"
SPACES_SECRET: "{{ linkwarden_minio_secretkey }}"
SPACES_ENDPOINT: https://s3.serguzim.me
SPACES_BUCKET_NAME: linkwarden
SPACES_REGION: de-contabo-1
SPACES_FORCE_PATH_STYLE: true
NEXT_PUBLIC_DISABLE_REGISTRATION: true
NEXT_PUBLIC_CREDENTIALS_ENABLED: true
NEXT_PUBLIC_AUTHENTIK_ENABLED: false
AUTHENTIK_CUSTOM_NAME: auth.serguzim.me
AUTHENTIK_ISSUER: https://auth.serguzim.me/application/o/bookmarks-serguzim-me
AUTHENTIK_CLIENT_ID: "{{ vault_linkwarden.oidc_client.id }}"
AUTHENTIK_CLIENT_SECRET: "{{ vault_linkwarden.oidc_client.secret }}"
linkwarden_compose:
watchtower: true
image: ghcr.io/linkwarden/linkwarden:latest

View file

@ -1,3 +1,7 @@
{% for key, value in env.items() %}
{% if value is boolean %}
{{ key }}={{ value|lower }}
{% else %}
{{ key }}={{ value }}
{% endif %}
{% endfor %}