Add music app
This commit is contained in:
parent
87e13973ec
commit
6fc30522d0
20
files/apps/music/docker-compose.yml
Normal file
20
files/apps/music/docker-compose.yml
Normal file
@ -0,0 +1,20 @@
|
|||||||
|
services:
|
||||||
|
navidrome:
|
||||||
|
image: deluan/navidrome:0.54.2
|
||||||
|
ports:
|
||||||
|
- "127.0.0.1:${WEB_SERVER_PORT}:4533"
|
||||||
|
restart: unless-stopped
|
||||||
|
environment:
|
||||||
|
ND_BASEURL: "https://music.vakhrushev.me"
|
||||||
|
ND_LOGLEVEL: "info"
|
||||||
|
ND_SCANSCHEDULE: "0"
|
||||||
|
ND_SESSIONTIMEOUT: "24h"
|
||||||
|
volumes:
|
||||||
|
- "./data:/data"
|
||||||
|
- "yandex-storage:/music:ro"
|
||||||
|
|
||||||
|
volumes:
|
||||||
|
yandex-storage:
|
||||||
|
driver: "rclone"
|
||||||
|
driver_opts:
|
||||||
|
remote: "yandex-s3-music-encrypted:"
|
43
playbook-app-music.yml
Normal file
43
playbook-app-music.yml
Normal file
@ -0,0 +1,43 @@
|
|||||||
|
---
|
||||||
|
- name: 'Configure music application'
|
||||||
|
hosts: all
|
||||||
|
|
||||||
|
vars_files:
|
||||||
|
- vars/ports.yml
|
||||||
|
- vars/vars.yml
|
||||||
|
|
||||||
|
vars:
|
||||||
|
base_dir: '/home/major/applications/music/'
|
||||||
|
|
||||||
|
tasks:
|
||||||
|
|
||||||
|
- name: 'Create application directories'
|
||||||
|
ansible.builtin.file:
|
||||||
|
path: '{{ item }}'
|
||||||
|
state: 'directory'
|
||||||
|
mode: '0755'
|
||||||
|
loop:
|
||||||
|
- '{{ base_dir }}'
|
||||||
|
- '{{ (base_dir, "data") | path_join }}'
|
||||||
|
|
||||||
|
- name: 'Copy application files'
|
||||||
|
ansible.builtin.copy:
|
||||||
|
src: '{{ item }}'
|
||||||
|
dest: '{{ base_dir }}'
|
||||||
|
mode: '0644'
|
||||||
|
loop:
|
||||||
|
- './files/apps/music/docker-compose.yml'
|
||||||
|
|
||||||
|
- name: 'Set up environment variables for application'
|
||||||
|
ansible.builtin.template:
|
||||||
|
src: 'env.j2'
|
||||||
|
dest: '{{ (base_dir, ".env") | path_join }}'
|
||||||
|
mode: '0644'
|
||||||
|
vars:
|
||||||
|
env_dict:
|
||||||
|
WEB_SERVER_PORT: '{{ navidrome_port }}'
|
||||||
|
|
||||||
|
- name: 'Run application with docker compose'
|
||||||
|
community.docker.docker_compose_v2:
|
||||||
|
project_src: '{{ base_dir }}'
|
||||||
|
state: 'present'
|
@ -12,7 +12,7 @@
|
|||||||
community.docker.docker_plugin:
|
community.docker.docker_plugin:
|
||||||
plugin_name: 'rclone/docker-volume-rclone:amd64'
|
plugin_name: 'rclone/docker-volume-rclone:amd64'
|
||||||
alias: 'rclone'
|
alias: 'rclone'
|
||||||
state: 'present'
|
state: 'enable'
|
||||||
plugin_options:
|
plugin_options:
|
||||||
args: '-v'
|
args: '-v'
|
||||||
|
|
||||||
|
@ -57,3 +57,11 @@ outline.vakhrushev.me {
|
|||||||
to 127.0.0.1:{{ outline_port }}
|
to 127.0.0.1:{{ outline_port }}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
music.vakhrushev.me {
|
||||||
|
tls anwinged@ya.ru
|
||||||
|
|
||||||
|
reverse_proxy {
|
||||||
|
to 127.0.0.1:{{ navidrome_port }}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
3
templates/env.j2
Normal file
3
templates/env.j2
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
{% for name in env_dict.keys() | sort %}
|
||||||
|
{{ name }}={{ env_dict[name] }}
|
||||||
|
{% endfor %}
|
@ -10,3 +10,4 @@ nomie_db_port: "{{ base_port + 7 }}"
|
|||||||
gitea_port: "{{ base_port + 8 }}"
|
gitea_port: "{{ base_port + 8 }}"
|
||||||
keycloak_port: "{{ base_port + 9 }}"
|
keycloak_port: "{{ base_port + 9 }}"
|
||||||
outline_port: "{{ base_port + 10 }}"
|
outline_port: "{{ base_port + 10 }}"
|
||||||
|
navidrome_port: "{{ base_port + 11 }}"
|
||||||
|
Loading…
Reference in New Issue
Block a user