diff --git a/.env b/.env index 7d236c9..e99a850 100755 --- a/.env +++ b/.env @@ -1,7 +1,7 @@ #GLOBAL SETTINGS COMPOSE_HTTP_TIMEOUT=120 COMPOSE_IGNORE_ORPHANS=1 -DOCKERCONFDIR=./appdata +DOCKER_CONFIGS=./appdata DOCKERGID=999 DOCKERHOSTNAME=DockerServer DOCKERLOGGING_MAXFILE=10 @@ -14,4 +14,5 @@ ADMIN_USERNAME=wettsten ADMIN_PASSWORD=benEatsBananas! #DIRECTORY PATHS -MEDIA_DIR=/mnt/truenasmedia +MEDIA_DIR=/mnt/truenas-media +STORAGE_DIR=/mnt/truenas-storage diff --git a/admin/.env b/admin/.env new file mode 100755 index 0000000..e99a850 --- /dev/null +++ b/admin/.env @@ -0,0 +1,18 @@ +#GLOBAL SETTINGS +COMPOSE_HTTP_TIMEOUT=120 +COMPOSE_IGNORE_ORPHANS=1 +DOCKER_CONFIGS=./appdata +DOCKERGID=999 +DOCKERHOSTNAME=DockerServer +DOCKERLOGGING_MAXFILE=10 +DOCKERLOGGING_MAXSIZE=200k +PGID=1000 +PUID=1000 +UMASK=000 +TZ=America/Chicago +ADMIN_USERNAME=wettsten +ADMIN_PASSWORD=benEatsBananas! + +#DIRECTORY PATHS +MEDIA_DIR=/mnt/truenas-media +STORAGE_DIR=/mnt/truenas-storage diff --git a/admin/docker-compose.yml b/admin/docker-compose.yml index 606d7e0..42cd61d 100755 --- a/admin/docker-compose.yml +++ b/admin/docker-compose.yml @@ -23,9 +23,9 @@ services: - 9000:9000/tcp restart: always volumes: - - ./appdata/portainer/data:/data + - ${DOCKER_CONFIGS}/portainer/data:/data - /var/run/docker.sock:/var/run/docker.sock - /etc/localtime:/etc/localtime:ro networks: - admin: \ No newline at end of file + admin: diff --git a/docker-compose.yml b/docker-compose.yml index 1fe14d2..c64c89a 100755 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -1,6 +1,35 @@ version: '3' services: + archivebox: + container_name: archivebox + image: archivebox/archivebox:dev + command: server --quick-init 0.0.0.0:8000 + environment: + - ALLOWED_HOSTS=* + - MEDIA_MAX_SIZE=750m + - PUBLIC_ADD_VIEW=True + - PUBLIC_INDEX=True + - PUBLIC_SNAPSHOTS=False + - SAVE_TITLE=True + - SAVE_FAVICON=True + - SAVE_WGET=False + - SAVE_WARC=False + - SAVE_PDF=True + - SAVE_SCREENSHOT=True + - SAVE_DOM=False + - SAVE_SINGLEFILE=True + - SAVE_READABILITY=True + - SAVE_MERCURY=False + - SAVE_GIT=False + - SAVE_MEDIA=False + - SAVE_ARCHIVE_DOT_ORG=False + ports: + - 8000:8000 + restart: always + volumes: + - ${DOCKER_CONFIGS}/archivebox/data:/data + authelia: container_name: authelia image: authelia/authelia @@ -10,7 +39,7 @@ services: - 9091:9091 restart: always volumes: - - ${DOCKERCONFDIR}/authelia/config:/config + - ${DOCKER_CONFIGS}/authelia/config:/config bazarr: container_name: bazarr @@ -23,7 +52,7 @@ services: - 6767:6767 restart: always volumes: - - ${DOCKERCONFDIR}/bazarr/config:/config + - ${DOCKER_CONFIGS}/bazarr/config:/config - ${MEDIA_DIR}:/media bitwarden: @@ -46,7 +75,7 @@ services: - 8089:80/tcp restart: always volumes: - - ${DOCKERCONFDIR}/vaultwarden/data:/data + - ${DOCKER_CONFIGS}/vaultwarden/data:/data - /etc/localtime:/etc/localtime:ro ddclient: @@ -58,7 +87,19 @@ services: - TZ=${TZ} restart: always volumes: - - ${DOCKERCONFDIR}/ddclient/config:/config + - ${DOCKER_CONFIGS}/ddclient/config:/config + + filebrowser: + container_name: filebrowser + image: filebrowser/filebrowser:latest + ports: + - 8484:80 + restart: always + volumes: + - ${DOCKER_CONFIGS}/filebrowser/config/filebrowser.db:/database/filebrowser.db + - ${DOCKER_CONFIGS}/filebrowser/config/.filebrowser.json:/.filebrowser.json + - ${DOCKER_CONFIGS}/filebrowser/files:/srv + - ${STORAGE_DIR}:/truenas-storage gluetun: container_name: gluetun @@ -83,7 +124,7 @@ services: - 8282:8282/tcp # qBittorrent restart: always volumes: - - ${DOCKERCONFDIR}/gluetun:/gluetun + - ${DOCKER_CONFIGS}/gluetun:/gluetun jackett: container_name: jackett @@ -98,7 +139,7 @@ services: - 9117:9117/tcp restart: always volumes: - - ${DOCKERCONFDIR}/jackett/config:/config + - ${DOCKER_CONFIGS}/jackett/config:/config - ${MEDIA_DIR}/downloads/torrents:/torrents jdownloader: @@ -120,7 +161,7 @@ services: - gluetun restart: always volumes: - - ${DOCKERCONFDIR}/jdownloader/config:/config + - ${DOCKER_CONFIGS}/jdownloader/config:/config - ${MEDIA_DIR}/downloads/jdownloader:/output - /etc/localtime:/etc/localtime:ro @@ -140,9 +181,21 @@ services: - 1900:1900/udp restart: always volumes: - - ${DOCKERCONFDIR}/jellyfin/config:/config + - ${DOCKER_CONFIGS}/jellyfin/config:/config - ${MEDIA_DIR}:/media + jellyseerr: + container_name: jellyseerr + image: fallenbagel/jellyseerr:latest + environment: + - LOG_LEVEL=info + - TZ=${TZ} + ports: + - 5056:5055 + restart: always + volumes: + - ${DOCKER_CONFIGS}/jellyseerr/config:/app/config + lidarr: container_name: lidarr image: lscr.io/linuxserver/lidarr:latest @@ -154,7 +207,7 @@ services: - 8686:8686 restart: always volumes: - - ${DOCKERCONFDIR}/lidarr/config:/config + - ${DOCKER_CONFIGS}/lidarr/config:/config - ${MEDIA_DIR}/Music:/music - ${MEDIA_DIR}/downloads:/downloads @@ -170,7 +223,7 @@ services: restart: always volumes: - ${MEDIA_DIR}/downloads/youtubedl:/downloads - - ${DOCKERCONFDIR}/metube:/config + - ${DOCKER_CONFIGS}/metube:/config monitorr: container_name: monitorr @@ -184,8 +237,8 @@ services: restart: always volumes: - ${MEDIA_DIR}:/HD:ro - - ${DOCKERCONFDIR}/monitorr/app:/app - - ${DOCKERCONFDIR}/monitorr/config:/config + - ${DOCKER_CONFIGS}/monitorr/app:/app + - ${DOCKER_CONFIGS}/monitorr/config:/config - /etc/localtime:/etc/localtime:ro mstream: @@ -199,7 +252,7 @@ services: - 3001:3000 restart: always volumes: - - ${DOCKERCONFDIR}/mstream:/config + - ${DOCKER_CONFIGS}/mstream:/config - ${MEDIA_DIR}/Music:/music nginxproxymanager: @@ -214,9 +267,9 @@ services: - 81:81/tcp restart: always volumes: - - ${DOCKERCONFDIR}/nginxproxymanager/data:/data - - ${DOCKERCONFDIR}/nginxproxymanager/letsencrypt:/etc/letsencrypt - - ${DOCKERCONFDIR}/nginxproxymanager/snippets:/snippets:ro + - ${DOCKER_CONFIGS}/nginxproxymanager/data:/data + - ${DOCKER_CONFIGS}/nginxproxymanager/letsencrypt:/etc/letsencrypt + - ${DOCKER_CONFIGS}/nginxproxymanager/snippets:/snippets:ro - /etc/localtime:/etc/localtime:ro nzbhydra: @@ -230,7 +283,7 @@ services: - 5076:5076 restart: always volumes: - - ${DOCKERCONFDIR}/nzbhydra/config:/config + - ${DOCKER_CONFIGS}/nzbhydra/config:/config - ${MEDIA_DIR}/downloads:/downloads olivetin: @@ -241,7 +294,7 @@ services: - 1337:1337 restart: always volumes: - - ${DOCKERCONFDIR}/olivetin/config:/config + - ${DOCKER_CONFIGS}/olivetin/config:/config - /var/run/docker.sock:/var/run/docker.sock organizr: @@ -255,7 +308,7 @@ services: - 8085:80/tcp restart: always volumes: - - ${DOCKERCONFDIR}/organizr/config:/config + - ${DOCKER_CONFIGS}/organizr/config:/config - /etc/localtime:/etc/localtime:ro prowlarr: @@ -269,7 +322,7 @@ services: - 9696:9696 restart: always volumes: - - ${DOCKERCONFDIR}/prowlarr/config:/config + - ${DOCKER_CONFIGS}/prowlarr/config:/config qbittorrent: container_name: qbittorrent @@ -284,7 +337,7 @@ services: - gluetun restart: always volumes: - - ${DOCKERCONFDIR}/qbittorrent/config:/config + - ${DOCKER_CONFIGS}/qbittorrent/config:/config - ${MEDIA_DIR}/downloads:/downloads - ${MEDIA_DIR}/downloads/torrents:/torrents @@ -299,9 +352,16 @@ services: - 7878:7878 restart: always volumes: - - ${DOCKERCONFDIR}/radarr:/config + - ${DOCKER_CONFIGS}/radarr:/config - ${MEDIA_DIR}:/data + s-pdf: + container_name: spdf + image: frooodle/s-pdf + ports: + - 8086:8080 + restart: always + sabnzbd: container_name: sabnzbd image: lscr.io/linuxserver/sabnzbd:latest @@ -314,7 +374,7 @@ services: - gluetun restart: always volumes: - - ${DOCKERCONFDIR}/sabnzbd:/config + - ${DOCKER_CONFIGS}/sabnzbd:/config - ${MEDIA_DIR}/downloads:/downloads - ${MEDIA_DIR}/downloads/nzbs:/nzbs @@ -329,5 +389,34 @@ services: - 8989:8989 restart: always volumes: - - ${DOCKERCONFDIR}/sonarr/config:/config + - ${DOCKER_CONFIGS}/sonarr/config:/config - ${MEDIA_DIR}:/data + + uptime-kuma: + container_name: uptime-kuma + image: louislam/uptime-kuma:1 + ports: + - 3001:3001 + restart: always + volumes: + - ${DOCKER_CONFIGS}/uptimekuma/data:/app/data + + vaultwarden-backup: + container_name: vaultwarden-backup + image: bruceforce/vaultwarden-backup + environment: + - BACKUP_DIR=/data/backups + - CRON_TIME=15 * * * * + - TIMESTAMP=true + - UID=${PUID} + - GID=${PGID} + depends_on: + - bitwarden + init: true + restart: always + volumes: + - ${DOCKER_CONFIGS}/bitwarden:/data + - /home/wettsten/backups/vaultwardenbackups:/data/backups + +networks: + default: diff --git a/filebrowser/.filebrowser.json b/filebrowser/.filebrowser.json new file mode 100755 index 0000000..ab30738 --- /dev/null +++ b/filebrowser/.filebrowser.json @@ -0,0 +1,8 @@ +{ + "port": 80, + "baseURL": "", + "address": "", + "log": "stdout", + "database": "/database/filebrowser.db", + "root": "/truenas-storage" + }