nas-tools (不更新)

date
Sep 20, 2022
slug
nas-tools
status
Published
tags
Website
summary
docker-compose nastools
type
Post

说明

普通 linux 盒子,非各种 nas 系统 全程使用 root 用户,今后会更新为使用普通权限用户
 

安装 docker & portainer & nginx proxy manager (之后简称npm)

Portainer v2.15 后有新UI,好看很多
Portainer 先按官方示例安装就行,之后创建一个网络
docker network create nginx-proxy-manager
然后进 portainer 安装 npm
version: "3"
services:
  app:
    image: 'jc21/nginx-proxy-manager:latest'
    restart: unless-stopped
    ports:
      # These ports are in format <host-port>:<container-port>
      - '80:80' # Public HTTP Port
      - '443:443' # Public HTTPS Port
      - '81:81' # Admin Web Port
      # Add any other Stream port you want to expose
      # - '21:21' # FTP
    environment:
      DB_MYSQL_HOST: "db"
      DB_MYSQL_PORT: 3306
      DB_MYSQL_USER: "npm"
      DB_MYSQL_PASSWORD: "npm"
      DB_MYSQL_NAME: "npm"
      # Uncomment this if IPv6 is not enabled on your host
      DISABLE_IPV6: 'true'
    volumes:
      - /root/nginxproxymanager/data:/data
      - /root/nginxproxymanager/letsencrypt:/etc/letsencrypt
    depends_on:
      - db
    networks:
      - nginx-proxy-manager

  db:
    image: 'jc21/mariadb-aria:latest'
    restart: unless-stopped
    environment:
      MYSQL_ROOT_PASSWORD: 'npm'
      MYSQL_DATABASE: 'npm'
      MYSQL_USER: 'npm'
      MYSQL_PASSWORD: 'npm'
    volumes:
      - /root/nginxproxymanager/data/mysql:/var/lib/mysql
    networks:
      - nginx-proxy-manager
     
networks:
  nginx-proxy-manager:
    external: true
成功后删掉 portainer 的容器,修改网络部分参数重装
docker run -d --network nginx-proxy-manager --name portainer \
    --restart=always \
    -v /var/run/docker.sock:/var/run/docker.sock \
    -v portainer_data:/data \
    portainer/portainer-ce:2.15.0
进 npm 配置好:
https://portainer:9443
portainer 就可以正常访问了
 

安装 plex

下文均以 /box 为主要文件夹
plex 我使用 host 网络
version: "2.1"
services:
  plex:
    image: lscr.io/linuxserver/plex:latest
    container_name: plex
    network_mode: host
    environment:
      - PUID=0
      - PGID=0
      - VERSION=public          #参考文档选择版本
      - PLEX_CLAIM=claim-xxxxxx #我使用的plex-pass版本
    volumes:
      - /box/plex/config:/config
      - /box:/box
    restart: unless-stopped
由于使用的 host 网络,npm 反代时,ip 应该为 nginx-proxy-manager 网络的网关地址 进阶设置和 cloudflare 部分暂时略过

安装 qBittorrent

version: "2.1"
services:
  qbittorrent:
    image: lscr.io/linuxserver/qbittorrent:latest
    container_name: qbittorrent
    networks:
      - nginx-proxy-manager
    environment:
      - PUID=0
      - PGID=0
      - TZ=Asia/Shanghai
      - WEBUI_PORT=8080
    volumes:
      - /box/qbittorrent/appdata/config:/config
      - /box:/box
    ports:
      - 16881:16881
      - 16881:16881/udp
    restart: unless-stopped
networks:
  nginx-proxy-manager:
    external: true
我映射的 /box 目录,实际下载到 /box/downloads 下的 movie 和 tv 文件夹,具体在 qb 里设置
 

安装 jackett

version: "2.1"
services:
  jackett:
    image: lscr.io/linuxserver/jackett:latest
    container_name: jackett
    networks:
      - nginx-proxy-manager
    environment:
      - PUID=0
      - PGID=0
      - TZ=Asia/Shanghai
      - AUTO_UPDATE=true #optional
    volumes:
      - /box/jackett/config:/config
      - /box/jackett/downloads:/downloads
    restart: unless-stopped
networks:
  nginx-proxy-manager:
    external: true
 

nas-tools

version: "3.4"
services:
  nastools:
    image: jxxghp/nas-tools:latest
    container_name: nastools
    hostname: nastools
    networks:
      - nginx-proxy-manager
    volumes:
      - /box/nastools/config:/config   # 冒号左边请修改为你想保存配置的路径
      - /box:/box # 映射数据目录
    environment:
      - PUID=0
      - PGID=0
      - TZ=Asia/Shanghai
      - UMASK=022 # 掩码权限,默认000,可以考虑设置为022
    restart: always 
networks:
  nginx-proxy-manager:
    external: true
同样映射的 /box 目录
 

安装 chinesesubfinder

version: "3"
services:
  chinesesubfinder:
    image: allanpk716/chinesesubfinder:latest
    volumes:
      - /box/chinesesubfinder/config:/config  # 冒号左边请修改为你想在主机上保存配置、日志等文件的路径
      - /box:/box    # 请修改为你的媒体目录,冒号右边可以改成你方便记忆的目录,多个媒体目录需要分别映射进来
      - /box/chinesesubfinder/browser:/root/.cache/rod/browser    # 容器重启后无需再次下载 chrome,除非 go-rod 更新
    environment:
      - PUID=0         # uid
      - PGID=0          # gid
      - PERMS=true        # 是否重设/media权限
      - TZ=Asia/Shanghai  # 时区
      - UMASK=022         # 权限掩码
    restart: always
    network_mode: bridge
    hostname: chinesesubfinder
    container_name: chinesesubfinder
    networks:
      - nginx-proxy-manager
    logging:
        driver: "json-file"
        options:
          max-size: "100m" # 限制docker控制台日志大小,可自行调整
          
networks:
  nginx-proxy-manager:
    external: true
 

© dodoho 2021 - 2025