Add linkwarden service
This commit is contained in:
		
							parent
							
								
									d42865d3f3
								
							
						
					
					
						commit
						eb6052e4ec
					
				
					 5 changed files with 58 additions and 1 deletions
				
			
		| 
						 | 
				
			
			@ -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
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -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:
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
							
								
								
									
										12
									
								
								roles/linkwarden/tasks/main.yml
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										12
									
								
								roles/linkwarden/tasks/main.yml
									
										
									
									
									
										Normal 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
 | 
			
		||||
							
								
								
									
										39
									
								
								roles/linkwarden/vars/main.yml
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										39
									
								
								roles/linkwarden/vars/main.yml
									
										
									
									
									
										Normal 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
 | 
			
		||||
| 
						 | 
				
			
			@ -1,3 +1,7 @@
 | 
			
		|||
{% for key, value in env.items() %}
 | 
			
		||||
{% if value is boolean %}
 | 
			
		||||
{{ key }}={{ value|lower }}
 | 
			
		||||
{% else %}
 | 
			
		||||
{{ key }}={{ value }}
 | 
			
		||||
{% endif %}
 | 
			
		||||
{% endfor %}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Reference in a new issue