This repository has been archived on 2021-02-08. You can view files and clone it, but cannot push or open issues or pull requests.
shipyard/docker-compose.yml

385 lines
8.1 KiB
YAML

version: "3"
services:
letsencrypt:
image: linuxserver/letsencrypt
container_name: letsencrypt
restart: unless-stopped
cap_add:
- NET_ADMIN
env_file:
- ./letsencrypt/letsencrypt.env
volumes:
- ./letsencrypt:/config
# Recipe media should not be served by GUnicorn, don't want to setup Nginx
- ./recipes/mediafiles:/opt/recipes/media
- ./recipes/staticfiles:/opt/recipes/static
ports:
- 80:80
- 443:443
authelia:
image: authelia/authelia
container_name: authelia
restart: unless-stopped
env_file:
- ./authelia/authelia.env
volumes:
- ./authelia:/config
expose:
- 9091
freshrss:
image: linuxserver/freshrss
container_name: freshrss
restart: unless-stopped
env_file:
- ./freshrss/freshrss.env
volumes:
- ./freshrss:/config
expose:
- 80
rss-bridge:
image: rssbridge/rss-bridge
container_name: rss-bridge
restart: unless-stopped
env_file:
- ./rss-bridge/rss-bridge.env
volumes:
- ./rss-bridge/whitelist.txt:/app/whitelist.txt
expose:
- 80
calibre:
image: linuxserver/calibre
container_name: calibre
restart: unless-stopped
env_file:
- ./calibre/calibre.env
- ./calibre/calibre.env.secret
volumes:
- ~/library:/config
- ~/books_to_add:/books_to_add
expose:
- 8080
- 8081
depends_on:
- "calibre-web" # Because of access to database
calibre-web:
image: linuxserver/calibre-web
container_name: calibre-web
restart: unless-stopped
env_file:
- ./calibre-web/calibre-web.env
volumes:
- ./calibre-web:/config
- ~/library:/books
expose:
- 8083
wallabag:
image: wallabag/wallabag
container_name: wallabag
restart: unless-stopped
env_file:
- ./wallabag/wallabag.env
volumes:
- ./wallabag/images:/var/www/wallabag/web/assets/images
- ./wallabag/data:/var/www/wallabag/data
expose:
- 80
gitea:
image: gitea/gitea:latest
container_name: gitea
restart: unless-stopped
env_file:
- gitea/gitea.env
volumes:
- ./gitea:/data
- /etc/timezone:/etc/timezone:ro
- /etc/localtime:/etc/localtime:ro
expose:
- 3000
ports:
- "22:22"
drone-server:
image: drone/drone:1
container_name: drone-server
restart: unless-stopped
env_file:
- ./drone/drone.env
- ./drone/drone.env.secret
volumes:
- ./drone:/data
expose:
- 8080
depends_on:
- gitea
drone-agent:
image: drone/agent:1
container_name: drone-agent
restart: unless-stopped
env_file:
- ./drone/drone-agent.env
- ./drone/drone-agent.env.secret
volumes:
- /var/run/docker.sock:/var/run/docker.sock
ports:
- 3030:3000
depends_on:
- drone-server
pyload:
image: linuxserver/pyload
container_name: pyload
restart: unless-stopped
env_file:
- ./pyload/pyload.env
volumes:
- ./pyload:/config
- ~/downloads:/downloads
expose:
- 8000
- 7227 #optional
transmission:
image: linuxserver/transmission
container_name: transmission
restart: unless-stopped
env_file:
- ./transmission/transmission.env
- ./transmission/transmission.env.secret
volumes:
- ./transmission:/config
- ~/downloads:/downloads
- ~/downloads/blackhole:/watch
expose:
- 9091
ports:
- 51413:51413
- 51413:51413/udp
sabnzbd:
image: linuxserver/sabnzbd
container_name: sabnzbd
restart: unless-stopped
env_file:
- ./sabnzbd/sabnzbd.env
volumes:
- ./sabnzbd:/config
- ~/downloads:/downloads
expose:
- 8080
- 9090
nzbhydra2:
image: linuxserver/nzbhydra2
container_name: nzbhydra2
restart: unless-stopped
env_file:
- ./nzbhydra2/nzbhydra.env
volumes:
- ./nzbhydra2:/config
- ~/downloads:/downloads
expose:
- 5076
jackett:
image: linuxserver/jackett
container_name: jackett
restart: unless-stopped
env_file:
- ./jackett/jackett.env
volumes:
- ./jackett:/config
- ~/downloads/blackhole:/downloads
expose:
- 9117
sonarr:
image: linuxserver/sonarr
container_name: sonarr
restart: unless-stopped
env_file:
- ./sonarr/sonarr.env
volumes:
- ./sonarr:/config
- ~/videos/shows:/tv
- ~/downloads:/downloads
expose:
- 8989
radarr:
image: linuxserver/radarr
container_name: radarr
restart: unless-stopped
env_file:
- ./radarr/radarr.env
volumes:
- ./radarr:/config
- ~/videos/movies:/movies
- ~/downloads:/downloads
expose:
- 7878
bazarr:
image: linuxserver/bazarr
container_name: bazarr
restart: unless-stopped
env_file:
- ./bazarr/bazarr.env
volumes:
- ./bazarr:/config
- ~/videos/movies:/movies
- ~/videos/shows:/tv
expose:
- 6767
quassel-core:
image: linuxserver/quassel-core
container_name: quassel-core
restart: unless-stopped
env_file:
- ./quassel/quassel.env
volumes:
- ./quassel:/config
ports:
- 4242:4242
- 113:10113 #optional
emby:
image: linuxserver/emby
container_name: emby
restart: unless-stopped
env_file:
- ./emby/emby.env
volumes:
- ./emby:/config
- ~/videos/shows:/data/tvshows
- ~/videos/movies:/data/movies
- /tmp/transcode:/transcode #optional
expose:
- 8096
komga:
image: gotson/komga
container_name: komga
restart: unless-stopped
env_file:
- ./komga/komga.env
volumes:
- ./komga:/config
- ~/comics:/books/comics
- ~/manga:/books/manga
- /etc/timezone:/etc/timezone:ro
expose:
- 8080
user: 1000:1000
photoprism:
image: photoprism/photoprism:latest
container_name: photoprism
restart: unless-stopped
healthcheck:
test: "photoprism status"
interval: 60s
timeout: 15s
retries: 5
env_file:
- ./photoprism/photoprism.env
volumes:
- ~/pictures/originals:/photoprism/originals
- ~/pictures/import:/photoprism/import
- ./photoprism/config:/photoprism/config
- ./photoprism/cache:/photoprism/cache
- ./photoprism/database:/photoprism/database
expose:
- 2342
- 2343
user: 1000:1000
syncthing:
image: linuxserver/syncthing
restart: unless-stopped
container_name: syncthing
restart: unless-stopped
env_file:
- ./syncthing/syncthing.env
volumes:
- ./syncthing:/config
- ~/:/data1
expose:
- 8384
ports:
- 22000:22000
- 21027:21027/udp
fava:
image: yegle/fava
restart: unless-stopped
container_name: fava
env_file:
- ./fava/fava.env
volumes:
- ~/fava:/bean
expose:
- 5000
user: 1000:1000
synapse:
image: matrixdotorg/synapse
restart: unless-stopped
container_name: synapse
env_file:
- ./matrix/matrix.env
volumes:
- ./matrix:/data
expose:
- 8008
recipes:
image: vabene1111/recipes
restart: unless-stopped
container_name: recipes
env_file:
- ./recipes/recipes.env
- ./recipes/recipes.env.secret
volumes:
- ./recipes/staticfiles:/opt/recipes/staticfiles
- ./recipes/mediafiles:/opt/recipes/mediafiles
depends_on:
- recipes_db
recipes_db:
image: postgres:11-alpine
restart: unless-stopped
container_name: recipes_db
volumes:
- ./recipes/postgresql:/var/lib/postgresql/data
env_file:
- ./recipes/recipes.env
- ./recipes/recipes.env.secret
jupyter:
image: jupyter/datascience-notebook:lab-2.1.5
restart: unless-stopped
container_name: jupyter
volumes:
- ./jupyter/notebooks:/home/jovyan/
- ./jupyter/hooks/:/usr/local/bin/start-notebook.d/
environment:
- JUPYTER_ENABLE_LAB=yes
- NB_UID=1000
- NB_GID=1000
- CHOWN_HOME=yes
- GRANT_SUDO=yes
- RESTARTABLE=yes
expose:
- 8888
user: root