0%

本文以在群晖下,使用 docker compose 部署为例:

  1. docker 文件夹下,新建文件夹 watchtower

  2. 创建文件 docker-compose.yml,内容如下,根据需要修改参数:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    services:
    watchtower:
    image: containrrr/watchtower
    container_name: watchtower
    environment:
    - TZ=Asia/Shanghai
    - WATCHTOWER_CLEANUP=true # 更新后移除旧的镜像
    - WATCHTOWER_SCHEDULE=0 0 7 * * * # 设置 cron 定时任务
    volumes:
    - /var/run/docker.sock:/var/run/docker.sock
    restart: unless-stopped

    更多配置项及其环境变量,请参考官方文档

    将文件保存到刚才创建的 docker/watchtower 文件夹里

  3. SSH 连接群晖,挂载到 docker/watchtower,执行命令

    1
    sudo docker-compose up -d

    容器启动后,将按照设定自动检查更新。如检测到某容器的镜像有更新,将下载最新镜像,并自动重启该容器。


Q:我不想某容器被 watchtower 自动更新重启,应该怎么做?

A:在容器运行时添加 Label com.centurylinklabs.watchtower.enable=false 即可。请参见官方文档介绍

阅读全文 »

折腾 NAS 的一大需求就是当下载机用。
考虑到以后有入坑 PT 的打算,决定使用 Docker 配置多个下载器实例,分管 BT 和 PT。

准备工作

  • 群晖开启 SSH,安装 Docker 套件。

  • 新建共享文件夹 Downloads,为下载器提供下载路径。

    为区分 BT 与 PT 任务,个人还额外作了以下的结构安排:

    • Downloads/BT
    • Downloads/PT
  • docker 文件夹里新建以下文件夹

    • downloaders/
    • downloaders/qbittorrentee/config (qbittorrentee 的配置文件)
    • downloaders/qbittorrent/config(qbittorrent 的配置文件)
    • webui/(用于存放 web ui 主题)
  • SSH 连接群晖,输入命令 id 获取当前用户的 UID 与 GID ,保存备用。

部署 Docker 容器

阅读全文 »

准备工作

  • 你的域名,并在你的 DNS 解析服务商中生成 API 密钥,保存备用。
  • 群晖开启 SSH,并安装 Docker 套件。
  • 群晖新建一个用户 acme,密码保存备用,加入 administrators 用户组,套件和共享文件夹权限可以全部禁掉。

配置 Docker

  1. 用 File Station 在共享文件夹 docker 里新建文件夹 acme.sh。

  2. 在本机上创建 docker-compose.yml,内容如下,根据自己情况修改。

    保存后将上传到刚才新建的 docker/acme.sh 文件夹里。

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    services:
    acme.sh:
    image: neilpang/acme.sh:latest
    container_name: acme.sh
    environment:
    - DP_Id=******
    - DP_Key=************************ #准备工作中生成的DNS解析商的API密钥,此处以使用DNSPod为例
    - SYNO_Scheme=http
    - SYNO_Hostname=localhost
    - SYNO_Port=5000
    - SYNO_Username=acme
    - SYNO_Password=**************** #填写群晖里新建的用户acme的密码
    - SYNO_Certificate=example.com #你的域名
    - SYNO_Create=1
    volumes:
    - ./data:/acme.sh
    network_mode: host
    command: daemon
    restart: unless-stopped

    本配置以使用 DNSPod.cn 为例,关于其他域名的配置名,请参考 dnsapi

    请注意:变量值无需加引号或双引号

  3. 打开 Docker 套件,在注册表中搜索 "acme.sh",双击 neilpang/acme.sh,标签选 latest,点确定下载映像。

  4. SSH 连接群晖,挂载到刚刚新建的 docker/acme.sh 文件夹里,启动 docker 容器。

    1
    2
    cd /volume1/docker/acme.sh
    sudo docker-compose up -d

    如果无误,应该能在群晖 docker 套件中看到刚启动的容器 acme.sh

申请并配置证书

阅读全文 »

真的好久没打理博客了。虽然偶尔也会在摸鱼的日子里想着 “稍微试着往那个吃灰的博客上写点东西吧”,但很快又把写博客这事给忘记了。终于在最近,我又提起了写博客的兴致,趁着刚好有空,着手把博客更新修整了一番。

阅读全文 »

准备工作

  • 一台刷好 OpenWrt 的路由器
  • 编译好的对应路由器架构的 mentohust 可执行文件
  • WinSCP
  • SSH 工具(如 PuTTY、XShell、MobaXterm)
阅读全文 »