外观
安装脚本
约 78 字小于 1 分钟
Docker
2024-03-16
AudioBooksShelf
version: "3.7"
services:
audiobookshelf:
image: ghcr.io/advplyr/audiobookshelf
container_name: audiobookshelf
ports:
- 13378:80
environment:
- TZ=Asia/Shanghai
volumes:
- /opt/clouddrive/Cloud/CloudDrive/Aliyun/Other/有声音乐/有声书:/audiobooks
- ./podcasts:/podcasts
- ./metadata:/metadata
- ./config:/config
restart: alwaysClouddrive
version: "2.1"
services:
cloudnas:
image: cloudnas/clouddrive2
container_name: clouddrive2
environment:
- TZ=Asia/Shanghai
- CLOUDDRIVE_HOME=/Config
volumes:
- ./Cloud:/CloudNAS:shared
- ./Config:/Config
- ./media:/media:shared
devices:
- /dev/fuse:/dev/fuse
restart: always
pid: "host"
privileged: true
network_mode: "host"Cloudreve
version: "3.8"
services:
cloudreve:
container_name: cloudreve
image: cloudreve/cloudreve:latest
restart: always
ports:
- "5212:5212"
volumes:
- temp_data:/data
- ./cloudreve/uploads:/cloudreve/uploads
- ./cloudreve/conf.ini:/cloudreve/conf.ini
- ./cloudreve/cloudreve.db:/cloudreve/cloudreve.db
- ./cloudreve/avatar:/cloudreve/avatar
networks:
- mysql_default
depends_on:
- aria2
aria2:
container_name: aria2
image: p3terx/aria2-pro
restart: unless-stopped
environment:
- RPC_SECRET=2234!@#zlyc
- RPC_PORT=6800
volumes:
- ./aria2/config:/config
- temp_data:/data
networks:
- mysql_default
volumes:
temp_data:
driver: local
driver_opts:
type: none
device: $PWD/data
o: bind
networks:
mysql_default:
external: trueGitea
version: "3.8"
services:
gitea:
image: gitea/gitea:latest
container_name: gitea
environment:
- USER_UID=1000
- USER_GID=1000
- GITEA__database__DB_TYPE=mysql
- GITEA__database__HOST=mysql8:3306
- GITEA__database__NAME=gitea
- GITEA__database__USER=root
- GITEA__database__PASSWD=yuchen@db123
restart: always
volumes:
- ./gitea:/data
- /etc/timezone:/etc/timezone:ro
- /etc/localtime:/etc/localtime:ro
ports:
- "8080:3000"
- "2221:22"
networks:
- mysql_default
networks:
mysql_default:
external: trueHomePage
version: "3.3"
services:
homepage:
image: ghcr.io/gethomepage/homepage:latest
container_name: homepage
ports:
- 3333:3000
volumes:
- ./config:/app/config
- ./images:/app/public/images
- /var/run/docker.sock:/var/run/docker.sock:ro
restart: alwaysImmich
version: "3.8"
services:
immich-server:
container_name: immich_server
image: ghcr.io/immich-app/immich-server:${IMMICH_VERSION:-release}
command: ["start.sh", "immich"]
volumes:
- ${UPLOAD_LOCATION}:/usr/src/app/upload
- /etc/localtime:/etc/localtime:ro
env_file:
- .env
depends_on:
- redis
- database
- typesense
restart: always
immich-microservices:
container_name: immich_microservices
image: ghcr.io/immich-app/immich-server:${IMMICH_VERSION:-release}
# extends:
# file: hwaccel.yml
# service: hwaccel
command: ["start.sh", "microservices"]
volumes:
- ${UPLOAD_LOCATION}:/usr/src/app/upload
- /etc/localtime:/etc/localtime:ro
env_file:
- .env
depends_on:
- redis
- database
- typesense
restart: always
immich-machine-learning:
container_name: immich_machine_learning
image: ghcr.io/immich-app/immich-machine-learning:${IMMICH_VERSION:-release}
volumes:
- model-cache:/cache
env_file:
- .env
restart: always
immich-web:
container_name: immich_web
image: ghcr.io/immich-app/immich-web:${IMMICH_VERSION:-release}
env_file:
- .env
restart: always
typesense:
container_name: immich_typesense
image: typesense/typesense:0.24.1@sha256:9bcff2b829f12074426ca044b56160ca9d777a0c488303469143dd9f8259d4dd
environment:
- TYPESENSE_API_KEY=${TYPESENSE_API_KEY}
- TYPESENSE_DATA_DIR=/data
# remove this to get debug messages
- GLOG_minloglevel=1
volumes:
- tsdata:/data
restart: always
redis:
container_name: immich_redis
image: redis:6.2-alpine@sha256:70a7a5b641117670beae0d80658430853896b5ef269ccf00d1827427e3263fa3
restart: always
database:
container_name: immich_postgres
image: postgres:14-alpine@sha256:28407a9961e76f2d285dc6991e8e48893503cc3836a4755bbc2d40bcc272a441
env_file:
- .env
environment:
POSTGRES_PASSWORD: ${DB_PASSWORD}
POSTGRES_USER: ${DB_USERNAME}
POSTGRES_DB: ${DB_DATABASE_NAME}
volumes:
- pgdata:/var/lib/postgresql/data
restart: always
immich-proxy:
container_name: immich_proxy
image: ghcr.io/immich-app/immich-proxy:${IMMICH_VERSION:-release}
environment:
# Make sure these values get passed through from the env file
- IMMICH_SERVER_URL
- IMMICH_WEB_URL
ports:
- 2283:8080
depends_on:
- immich-server
- immich-web
restart: always
volumes:
pgdata:
model-cache:
tsdata:Jellyfin
version: "3"
services:
jellyfin:
image: jellyfin/jellyfin
container_name: jellyfin
user: root
environment:
- TZ=Asia/Shanghai
volumes:
- ./jellyfin/config:/config
- /opt/clouddrive/Cloud/CloudDrive:/Cloud
- ./media/video:/video
ports:
- 8096:8096
- 8920:8920
devices:
- /dev/dri:/dev/dri
- /dev/nvidia-caps:/dev/nvidia-caps
- /dev/nvidia0:/dev/nvidia0
- /dev/nvidiactl:/dev/nvidiactl
- /dev/nvidia-modeset:/dev/nvidia-modeset
- /dev/nvidia-uvm:/dev/nvidia-uvm
- /dev/nvidia-uvm-tools:/dev/nvidia-uvm-tools
runtime: nvidia
deploy:
resources:
reservations:
devices:
- driver: nvidia
count: 1
capabilities: [gpu]
nastool:
image: yohe/nastool:2.9.1
container_name: nastool
environment:
- PUID=0
- PGID=0
- TZ=Asia/Shanghai
- ALPINE_MIRROR=mirrors.ustc.edu.cn
- LANG=C.UTF-8
- NASTOOL_AUTO_UPDATE=false
- NASTOOL_CN_UPDATE=true
- NASTOOL_CONFIG=/config/config.yaml
- NASTOOL_VERSION=master
- PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
- PYPI_MIRROR=https://pypi.tuna.tsinghua.edu.cn/simple
- REPO_URL=https://github.com/jxxghp/nas-tools.git
- UMASK=000
- WORKDIR=/nas-tools
volumes:
- ./nastool/config:/config
- ./media/video:/video
ports:
- 3003:3000
jackett:
image: linuxserver/jackett:latest
container_name: jackett
volumes:
- ./jackett/config:/config
- ./jackett/downloads:/downloads
environment:
- HOME=/root
- LSIO_FIRST_PARTY=true
- PATH=/lsiopy/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
- S6_CMD_WAIT_FOR_SERVICES_MAXTIME=0
- S6_STAGE2_HOOK=/docker-mods
- S6_VERBOSITY=1
- TERM=xterm
- VIRTUAL_ENV=/lsiopy
- XDG_CONFIG_HOME=/config
- XDG_DATA_HOME=/config
ports:
- 9117:9117
qBittorrent:
image: linuxserver/qbittorrent:4.4.3
container_name: qBittorrent
volumes:
- ./qBittorrent/config:/config
- ./media/video:/downloads
environment:
- PUID=0
- PGID=0
- TZ=Etc/UTC
- WEBUI_PORT=8080
ports:
- 8080:8080
- 6881:6881
- 6881:6881/udpJenkins
version: '3.1'
services:
jenkins:
restart: always
image: jenkins/jenkins
container_name: jenkins
privileged: true # 映射使用宿主机的docker
user: root # 使用root用户操作,权限最高
ports:
- 8081:8080
- 50000:50000
environment:
TZ: Asia/Shanghai
volumes:
- ./data:/var/jenkins_home
- /var/run/docker.sock:/var/run/docker.sock #映射使用宿主机的docker
- /usr/bin/docker:/usr/bin/docker #映射使用宿主机的docker
- /usr/libexec/docker/cli-plugins/docker-compose:/usr/bin/docker-compose
#映射使用宿主机的docker-compose 使用:/usr/bin/docker-compose up -dMinecraft
version: "3"
services:
mc:
image: itzg/minecraft-server
ports:
- 25565:25565
environment:
EULA: "TRUE"
tty: true
stdin_open: true
restart: unless-stopped
volumes:
- ./data:/dataNginx Proxy Manager
version: '3.8'
services:
nginxproxymanager:
image: 'jc21/nginx-proxy-manager:latest'
container_name: nginx-proxy-manager
restart: always
ports:
# These ports are in format <host-port>:<container-port>
- '9880:80' # Public HTTP Port
- '9443:443' # Public HTTPS Port
- '81:81' # Admin Web Port
environment:
# Uncomment this if you want to change the location of
# the SQLite DB file within the container
DB_SQLITE_FILE: "/data/database.sqlite"
# Uncomment this if IPv6 is not enabled on your host
DISABLE_IPV6: 'true'
volumes:
- ./data:/data
- ./letsencrypt:/etc/letsencrypt
version: '3.8'
services:
nginxproxymanager:
image: 'jc21/nginx-proxy-manager:latest'
container_name: nginx-proxy-manager
restart: always
ports:
# These ports are in format <host-port>:<container-port>
- '9880:80' # Public HTTP Port
- '6:443' # Public HTTPS Port
- '81:81' # Admin Web Port
environment:
# Uncomment this if you want to change the location of
# the SQLite DB file within the container
DB_SQLITE_FILE: "/data/database.sqlite"
# Uncomment this if IPv6 is not enabled on your host
DISABLE_IPV6: 'true'
volumes:
- ./data:/data
- ./letsencrypt:/etc/letsencrypt
networks:
- moss_docker_network
networks:
moss_docker_network:
external: truePlex
version: '3'
services:
plex:
image: plexinc/pms-docker
container_name: plex
restart: unless-stopped
ports:
- 32400:32400
environment:
- PLEX_CLAIM=claim-L73fbDVnwdZALcFBsAz-
- TZ=Asia/Shanghai
- PLEX_UID=1000
- PLEX_GID=1000
volumes:
- /opt/clouddrive/Cloud/CloudDrive:/Cloud
- ../media/video:/video
- ./config:/config
- ./data:/data
- ./transcode:/transcodeSyncthing
version: "3"
services:
syncthing:
image: syncthing/syncthing
container_name: syncthing
network_mode: host
environment:
- PUID=1000
- PGID=1000
- TZ=Asia/shanghai
volumes:
- /opt/syncthing:/var/syncthing
- ./data:/var/syncthing/data
ports:
- 8384:8384 # Web UI
- 22000:22000/tcp # TCP file transfers
- 22000:22000/udp # QUIC file transfers
- 21027:21027/udp # Receive local discovery broadcasts
restart: unless-stopped