109 lines
3.0 KiB
YAML
109 lines
3.0 KiB
YAML
---
|
|
- name: create required cloud volumes
|
|
become: true
|
|
ansible.builtin.file:
|
|
path: "{{ item }}"
|
|
state: directory
|
|
owner: "{{ podman_subuid.stdout }}"
|
|
group: "{{ podman_user }}"
|
|
mode: 0755
|
|
notify: restorecon podman
|
|
loop:
|
|
- "{{ cloud_path }}/mysql"
|
|
- "{{ cloud_path }}/storage"
|
|
tags: cloud
|
|
|
|
- name: flush handlers
|
|
ansible.builtin.meta: flush_handlers
|
|
tags: cloud
|
|
|
|
- name: mount cloud cifs
|
|
become: true
|
|
ansible.posix.mount:
|
|
src: "{{ cloud_cifs_src }}"
|
|
path: "{{ cloud_path }}/storage"
|
|
fstype: cifs
|
|
opts: "username=cloud,password={{ cloud_cifs_pass }},uid={{ podman_subuid.stdout }},gid={{ podman_subuid.stdout }}"
|
|
state: mounted
|
|
tags: cloud
|
|
|
|
- name: create cloud-db container
|
|
become: true
|
|
become_user: "{{ podman_user }}"
|
|
containers.podman.podman_container:
|
|
name: cloud-db
|
|
image: docker.io/mariadb:10.8
|
|
recreate: false
|
|
restart: false
|
|
restart_policy: on-failure
|
|
log_driver: journald
|
|
network:
|
|
- shared
|
|
env:
|
|
MARIADB_AUTO_UPGRADE: "1"
|
|
MYSQL_RANDOM_ROOT_PASSWORD: "yes"
|
|
MYSQL_DATABASE: cloud
|
|
MYSQL_USER: cloud
|
|
MYSQL_PASSWORD: "{{ cloud_db_pass }}"
|
|
volumes:
|
|
- "{{ cloud_path }}/mysql:/var/lib/mysql"
|
|
tags: cloud
|
|
|
|
- name: create systemd startup job for cloud-db
|
|
include_tasks: systemd-generate.yml
|
|
vars:
|
|
container_name: cloud-db
|
|
tags: cloud
|
|
|
|
- name: create cloud container
|
|
become: true
|
|
become_user: "{{ podman_user }}"
|
|
containers.podman.podman_container:
|
|
name: cloud
|
|
image: docker.io/photoprism/photoprism:220901-bookworm
|
|
recreate: false
|
|
restart: false
|
|
restart_policy: on-failure
|
|
log_driver: journald
|
|
network:
|
|
- shared
|
|
env:
|
|
PHOTOPRISM_ADMIN_PASSWORD: "{{ cloud_user_pass }}"
|
|
PHOTOPRISM_AUTH_MODE: "password"
|
|
PHOTOPRISM_SITE_URL: "http://localhost:2342/"
|
|
PHOTOPRISM_ORIGINALS_LIMIT: 5000
|
|
PHOTOPRISM_HTTP_COMPRESSION: "gzip"
|
|
PHOTOPRISM_LOG_LEVEL: "info"
|
|
PHOTOPRISM_READONLY: "false"
|
|
PHOTOPRISM_EXPERIMENTAL: "false"
|
|
PHOTOPRISM_DISABLE_CHOWN: "false"
|
|
PHOTOPRISM_DISABLE_WEBDAV: "false"
|
|
PHOTOPRISM_DISABLE_SETTINGS: "false"
|
|
PHOTOPRISM_DISABLE_TENSORFLOW: "false"
|
|
PHOTOPRISM_DISABLE_FACES: "false"
|
|
PHOTOPRISM_DISABLE_CLASSIFICATION: "false"
|
|
PHOTOPRISM_DISABLE_RAW: "false"
|
|
PHOTOPRISM_RAW_PRESETS: "false"
|
|
PHOTOPRISM_JPEG_QUALITY: 85
|
|
PHOTOPRISM_DETECT_NSFW: "false"
|
|
PHOTOPRISM_UPLOAD_NSFW: "true"
|
|
PHOTOPRISM_DATABASE_DRIVER: "mysql"
|
|
PHOTOPRISM_DATABASE_SERVER: "cloud-db:3306"
|
|
PHOTOPRISM_DATABASE_NAME: "cloud"
|
|
PHOTOPRISM_DATABASE_USER: "cloud"
|
|
PHOTOPRISM_DATABASE_PASSWORD: "{{ cloud_db_pass }}"
|
|
PHOTOPRISM_SITE_CAPTION: "AI-Powered Photos App"
|
|
PHOTOPRISM_SITE_DESCRIPTION: ""
|
|
PHOTOPRISM_SITE_AUTHOR: "Bastian D."
|
|
volumes:
|
|
- "{{ cloud_path }}/storage:/photoprism/"
|
|
ports:
|
|
- "8088:2342"
|
|
tags: cloud
|
|
|
|
- name: create systemd startup job for cloud
|
|
include_tasks: systemd-generate.yml
|
|
vars:
|
|
container_name: cloud
|
|
tags: cloud
|