技术解析

分享一下我的 docker aria2 镜像
0
2021-06-22 12:46:42
idczone

虽然 aria2 镜像已经满天飞, 但我没找到符合个人品味的. 于是我花了一点时间写了一个, 在此与诸位分享.

特色

1. 极简

精简的层级, 极致的镜像体积.

基本上整个镜像就是 alpine + aria2, 没有其他依赖, 镜像体积只有 5.7MB.

2. 强大

  • 可以指定执行 uid/gid, 兼容宿主系统文件权限
  • 自动创建配置 aria2.conf
  • 自动修复 /config 目录权限
  • 兼容 docker kill 的 graceful exit 机制
  • 兼容 docker logs 的日志机制

使用

  1. 使用 id 命令确定 uid/gid

      $ id opengg
        uid=1001(opengg) gid=1002(users) groups=1002(users)
    
  2. 初始化配置和下载目录

    mkdir /storage/aria2/config  # config 路径示例
    chown -R 1001:1002 /storage/aria2/config
    find /storage/aria2/config -type d -exec chmod 755 {} +
    find /storage/aria2/config -type f -exec chmod 644 {} +
    mkdir /storage/aria2/downloads  # downloads 路径示例
    chown -R 1001:1002 /storage/aria2/downloads
    find /storage/aria2/downloads -type d -exec chmod 755 {} +
    find /storage/aria2/downloads -type f -exec chmod 644 {} +
    
  3. 运行以下命令初始化容器

    docker run \
      -d \
      --name aria2 \
      -u=1001:1002 \
      -v /storage/aria2/config:/config \
      -v /storage/aria2/downloads:/downloads \
      -p 6800:6800 \
      opengg/aria2
    

镜像源码

在此附上源码, 欢迎指正

https://hub.docker.com/r/opengg/aria2/

https://github.com/OpenGG/docker-aria2


这个好,正准备做呢
数据地带为您的网站提供全球顶级IDC资源
在线咨询
专属客服