Compare commits
37 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
ea8c22f1ae | ||
|
|
c58eed2657 | ||
|
|
181a1967f9 | ||
|
|
31ec4b2d2e | ||
|
|
32cabdd1f4 | ||
|
|
12f3fcbaaf | ||
|
|
15ce90e098 | ||
|
|
bb20922852 | ||
|
|
3d09f9d1e9 | ||
|
|
2512d2ef31 | ||
|
|
a6290fe82d | ||
|
|
a4f0664663 | ||
|
|
5b3440457f | ||
|
|
73821733cf | ||
|
|
32aaf0fe6b | ||
|
|
17a04fc559 | ||
|
|
18ec2c5320 | ||
|
|
d3fa11cf90 | ||
|
|
caca059da0 | ||
|
|
625b2a656a | ||
|
|
71d8edab0a | ||
|
|
c160ba5193 | ||
|
|
3aaa6deb34 | ||
|
|
3acc92043c | ||
|
|
375172e34e | ||
|
|
fcad61a6c4 | ||
|
|
02b37f5680 | ||
|
|
8df232dd91 | ||
|
|
108193a007 | ||
|
|
3e69a85426 | ||
|
|
b72b413755 | ||
|
|
b602592ea4 | ||
|
|
32f6767cd4 | ||
|
|
e887ad1898 | ||
|
|
cc89a3f437 | ||
|
|
3866f6a0f2 | ||
|
|
38c2667d2d |
34
snackpot.yml
34
snackpot.yml
@@ -6,11 +6,9 @@
|
|||||||
postgres_password: "{{lookup('passwordstore', 'servers/snackpot/postgres_db.password')}}"
|
postgres_password: "{{lookup('passwordstore', 'servers/snackpot/postgres_db.password')}}"
|
||||||
postgres_db_user: postgres
|
postgres_db_user: postgres
|
||||||
nextcloud_hostname: nc.noodlefactory.co.uk
|
nextcloud_hostname: nc.noodlefactory.co.uk
|
||||||
nextcloud_base_dir: /var/www/html
|
|
||||||
nextcloud_data_dir: /var/www/data
|
|
||||||
nextcloud_ext_dir: /var/www/ext
|
|
||||||
nextcloud_db_user: nextcloud
|
nextcloud_db_user: nextcloud
|
||||||
nextcloud_db: nextcloud
|
nextcloud_db: nextcloud
|
||||||
|
jellyfin_hostname: jf.noodlefactory.co.uk
|
||||||
letsencrypt_email: webmaster@noodlefactory.co.uk
|
letsencrypt_email: webmaster@noodlefactory.co.uk
|
||||||
docker_compose_base_dir: /opt/docker-compose
|
docker_compose_base_dir: /opt/docker-compose
|
||||||
firewall_ports:
|
firewall_ports:
|
||||||
@@ -61,21 +59,21 @@
|
|||||||
vars:
|
vars:
|
||||||
ufw_allow: "{{ firewall_ports }}"
|
ufw_allow: "{{ firewall_ports }}"
|
||||||
|
|
||||||
# - include_role:
|
- include_role:
|
||||||
# name: mrlesmithjr.netplan
|
name: mrlesmithjr.netplan
|
||||||
# apply: { become: true, tags: [netplan, network] }
|
apply: { become: true, tags: [netplan, network] }
|
||||||
# tags: netplan, network
|
tags: netplan, network
|
||||||
# vars:
|
vars:
|
||||||
# netplan_enabled: true
|
netplan_enabled: true
|
||||||
# netplan_configuration:
|
netplan_configuration:
|
||||||
# network:
|
network:
|
||||||
# version: 2
|
version: 2
|
||||||
# ethernets:
|
ethernets:
|
||||||
# enp3s0:
|
enp3s0:
|
||||||
# addresses: [192.168.0.55/24]
|
addresses: [192.168.0.55/24]
|
||||||
# gateway4: 192.168.0.1
|
gateway4: 192.168.0.1
|
||||||
# nameservers:
|
nameservers:
|
||||||
# addresses: [192.168.0.1]
|
addresses: [192.168.0.1]
|
||||||
|
|
||||||
- include_role:
|
- include_role:
|
||||||
name: docker_compose
|
name: docker_compose
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
|
|
||||||
dc_dir={{ docker_compose_base_dir }}
|
dc_dir={{ docker_compose_base_dir }}
|
||||||
nextcloud_base_dir={{ nextcloud_base_dir }}
|
nextcloud_base_dir=/var/www/html
|
||||||
nextcloud_data_dir={{ nextcloud_data_dir }}
|
nextcloud_data_dir=/var/www/data
|
||||||
postgres_db_user={{ postgres_db_user }}
|
postgres_db_user={{ postgres_db_user }}
|
||||||
nextcloud_db_user={{ nextcloud_db_user }}
|
nextcloud_db_user={{ nextcloud_db_user }}
|
||||||
nextcloud_db={{ nextcloud_db }}
|
nextcloud_db={{ nextcloud_db }}
|
||||||
|
|||||||
@@ -19,7 +19,19 @@ volumes:
|
|||||||
mopidy_data:
|
mopidy_data:
|
||||||
|
|
||||||
networks:
|
networks:
|
||||||
|
# This is for proxied containers
|
||||||
proxy-tier:
|
proxy-tier:
|
||||||
|
# This is for containers which need to be host mode
|
||||||
|
lan:
|
||||||
|
name: lan
|
||||||
|
driver: macvlan
|
||||||
|
driver_opts:
|
||||||
|
parent: enp3s0 # our ethernet interface
|
||||||
|
ipam:
|
||||||
|
config:
|
||||||
|
- gateway: 192.168.0.1
|
||||||
|
subnet: 192.168.0.0/24
|
||||||
|
ip_range: 192.168.0.240/29 # addresses 240-248 (6 usable)
|
||||||
|
|
||||||
services:
|
services:
|
||||||
|
|
||||||
@@ -42,7 +54,7 @@ services:
|
|||||||
- redis:/data
|
- redis:/data
|
||||||
|
|
||||||
nextcloud:
|
nextcloud:
|
||||||
image: nextcloud:22-fpm-alpine
|
image: nextcloud:24-fpm-alpine
|
||||||
restart: always
|
restart: always
|
||||||
volumes:
|
volumes:
|
||||||
- nextcloud_src:/var/www/html
|
- nextcloud_src:/var/www/html
|
||||||
@@ -62,11 +74,13 @@ services:
|
|||||||
# test: ["CMD-SHELL", "wget -q --spider --proxy=off localhost:3000/health || exit 1"]
|
# test: ["CMD-SHELL", "wget -q --spider --proxy=off localhost:3000/health || exit 1"]
|
||||||
|
|
||||||
nextcloud_cron:
|
nextcloud_cron:
|
||||||
image: nextcloud:22-fpm-alpine
|
image: nextcloud:24-fpm-alpine
|
||||||
restart: always
|
restart: always
|
||||||
volumes:
|
volumes:
|
||||||
- nextcloud_src:/var/www/html
|
- nextcloud_src:/var/www/html
|
||||||
- nextcloud_data:/var/www/data
|
- nextcloud_data:/var/www/data
|
||||||
|
- minidlna_data:/var/www/ext/media
|
||||||
|
- /srv:/srv
|
||||||
entrypoint: /cron.sh
|
entrypoint: /cron.sh
|
||||||
depends_on:
|
depends_on:
|
||||||
- postgres
|
- postgres
|
||||||
@@ -124,9 +138,13 @@ services:
|
|||||||
- jellyfin_config:/config
|
- jellyfin_config:/config
|
||||||
- jellyfin_cache:/cache
|
- jellyfin_cache:/cache
|
||||||
- minidlna_data:/media
|
- minidlna_data:/media
|
||||||
network_mode: host
|
networks:
|
||||||
environment:
|
proxy-tier:
|
||||||
- JELLYFIN_PublishedServerUrl=http://snackpot.local
|
default:
|
||||||
|
lan: # Static ip for the container on the macvlan net
|
||||||
|
ipv4_address: 192.168.0.241
|
||||||
|
env_file:
|
||||||
|
- jellyfin.env
|
||||||
|
|
||||||
minidlna:
|
minidlna:
|
||||||
image: vladgh/minidlna:latest
|
image: vladgh/minidlna:latest
|
||||||
@@ -134,14 +152,17 @@ services:
|
|||||||
volumes:
|
volumes:
|
||||||
- minidlna_state:/minidlna
|
- minidlna_state:/minidlna
|
||||||
- minidlna_data:/media:ro
|
- minidlna_data:/media:ro
|
||||||
network_mode: host
|
networks:
|
||||||
|
default:
|
||||||
|
lan: # Static ip for the container on the macvlan net
|
||||||
|
ipv4_address: 192.168.0.242
|
||||||
environment:
|
environment:
|
||||||
- UPID=2000
|
- UPID=2000
|
||||||
- UGID=2000
|
- UGID=2000
|
||||||
- MINIDLNA_INOTIFY=yes
|
- MINIDLNA_INOTIFY=yes
|
||||||
- MINIDLNA_MEDIA_DIR_1=A,/media/audio
|
- MINIDLNA_MEDIA_DIR_1=A,/media/audio
|
||||||
- MINIDLNA_MEDIA_DIR_2=V,/media/video
|
- MINIDLNA_MEDIA_DIR_2=V,/media/video
|
||||||
- MINIDLNA_FRIENDLY_NAME=Snackpot
|
- MINIDLNA_FRIENDLY_NAME=MiniDLNA@Snackpot
|
||||||
|
|
||||||
mopidy:
|
mopidy:
|
||||||
build: ./mopidy
|
build: ./mopidy
|
||||||
@@ -156,6 +177,8 @@ services:
|
|||||||
- mopidy_data:/data
|
- mopidy_data:/data
|
||||||
# Add local music folder
|
# Add local music folder
|
||||||
- minidlna_data:/music:ro
|
- minidlna_data:/music:ro
|
||||||
|
networks:
|
||||||
|
default:
|
||||||
devices:
|
devices:
|
||||||
- /dev/snd
|
- /dev/snd
|
||||||
restart: always
|
restart: always
|
||||||
@@ -164,8 +187,10 @@ services:
|
|||||||
build: ./upmpdcli
|
build: ./upmpdcli
|
||||||
depends_on:
|
depends_on:
|
||||||
- mopidy
|
- mopidy
|
||||||
# Host mode needed for advertisement
|
networks:
|
||||||
network_mode: host
|
default:
|
||||||
|
lan: # Static ip for the container on the macvlan net
|
||||||
|
ipv4_address: 192.168.0.243
|
||||||
restart: always
|
restart: always
|
||||||
|
|
||||||
# Next three services adapted from
|
# Next three services adapted from
|
||||||
|
|||||||
4
templates/docker-compose/jellyfin.env.j2
Normal file
4
templates/docker-compose/jellyfin.env.j2
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
VIRTUAL_HOST={{ jellyfin_hostname }}
|
||||||
|
JELLYFIN_PublishedServerUrl=https://{{ jellyfin_hostname }}/
|
||||||
|
LETSENCRYPT_HOST={{ jellyfin_hostname }}
|
||||||
|
LETSENCRYPT_EMAIL={{ letsencrypt_email }}
|
||||||
Submodule templates/docker-compose/mopidy updated: 3aa890f6a9...b389297213
@@ -1,8 +1,9 @@
|
|||||||
FROM alpine:3.13
|
FROM alpine:3.15
|
||||||
|
|
||||||
RUN apk update \
|
RUN apk update \
|
||||||
&& apk upgrade \
|
&& apk upgrade \
|
||||||
&& apk add --no-cache \
|
&& apk add --no-cache \
|
||||||
|
--repository http://dl-cdn.alpinelinux.org/alpine/edge/community \
|
||||||
--repository http://dl-cdn.alpinelinux.org/alpine/edge/testing \
|
--repository http://dl-cdn.alpinelinux.org/alpine/edge/testing \
|
||||||
python3 \
|
python3 \
|
||||||
openssl \
|
openssl \
|
||||||
|
|||||||
@@ -8,9 +8,10 @@
|
|||||||
#upnpiface =
|
#upnpiface =
|
||||||
#upnpip =
|
#upnpip =
|
||||||
# upnpport =
|
# upnpport =
|
||||||
|
upnpip = 192.168.0.243
|
||||||
|
|
||||||
# media renderer parameters
|
# media renderer parameters
|
||||||
friendlyname = Snackpot
|
friendlyname = UpMpdCli@Snackpot
|
||||||
#upnpav = 1
|
#upnpav = 1
|
||||||
#openhome = 1
|
#openhome = 1
|
||||||
#lumincompat = 0
|
#lumincompat = 0
|
||||||
@@ -25,4 +26,4 @@ checkcontentformat = 0
|
|||||||
#mpdport = 6600
|
#mpdport = 6600
|
||||||
#mpdpassword =
|
#mpdpassword =
|
||||||
#ownqueue = 1
|
#ownqueue = 1
|
||||||
|
mpdhost = mopidy
|
||||||
|
|||||||
Reference in New Issue
Block a user