您现在的位置是:首页 > 站长动态站长动态

OpenWRT 安装 Docker 服务管理工具的方法

查看 cc博主 的更多文章cc博主2023-01-20【站长动态】89人已围观

在 OpenWRT 上安装 Docker 容器离不开 Luci-app-dockerman,它是用于管理 Docker 容器、镜像、网络、存储卷的服务管理插件,但由于 OpenWRT 官方将 Docker-ce 拆分为 Dockerd 和 Docker 两个包,安装时候要特别注意所需的依赖。

OpenWRT 安装 Docker 服务管理工具的方法 第1张

所需依赖

ttyd 用作于 Docker 控制台

luci-lib-docker 为核心依赖

dockerd 用作于 Docker 客户端

luci-lib-jsonc 为核心依赖

docker 用作于 Docker 控制台

安装方法

1、设备空间不足的情况下,建议插个外置硬盘或者扩容个硬盘并挂载到 /opt 分区,作为储存 Docker 数据分区使用,挂载完成重启,不会挂载的,可以查看挂载外置移动硬盘教程,如下图:

2、更换 OPKG 配置内的发行版软件源,注意架构,演示为 aarch64_cortex-a53 架构,自行替换即可,比方将 aarch64_cortex-a53 替换为 x86_64 架构,只需要打开链接查找修改即可,如下图:

# 以下为 aarch64_cortex-a53 架构使用
src/gz openwrt_base https://archive.openwrt.org/releases/packages-22.03/aarch64_cortex-a53/base
src/gz openwrt_luci https://archive.openwrt.org/releases/packages-22.03/aarch64_cortex-a53/luci
src/gz openwrt_packages https://archive.openwrt.org/releases/packages-22.03/aarch64_cortex-a53/packages
src/gz openwrt_routing https://archive.openwrt.org/releases/packages-22.03/aarch64_cortex-a53/routing
src/gz openwrt_telephony https://archive.openwrt.org/releases/packages-22.03/aarch64_cortex-a53/telephony

OpenWRT 安装 Docker 服务管理工具的方法 第2张

3、安装 Dockerman 所需依赖,分别为 TTYD、Luci-lib-docker、Dockerd、Luci-lib-jsonc 和 Docker,除 TTYD 外单独安装,其他所需依赖的安装建议使用强制安装,自动补齐 Dockerd 的核心依赖,如下图:

# 更新组件
opkg update

# 安装TTYD
opkg install ttyd

# 强制依赖,--force-depends 为强制命令
opkg install luci-lib-docker dockerd luci-lib-jsonc docker --force-depends

# 查看版本,有输出就说明成功了
docker --version

OpenWRT 安装 Docker 服务管理工具的方法 第3张

4、通过本站提供的 Github 地址下载最新的 Luci-app-dockerman 插件,通过 SFTP 上传到 root 目录下,执行命令进行安装,安装完成就可以在 LuCI 内看到 Docker 服务管理工具了,如下图:

# 下载插件,演示时为 0.5.25
https://github.com/lisaac/luci-app-dockerman

# 安装插件,可用 Tab 补齐
opkg install luci-app-dockerman_*_all.ipk

OpenWRT 安装 Docker 服务管理工具的方法 第4张

5、安装完成重启设备就会发现不自启动,执行以下启动并设置自启即可,有人喜欢用 S100docker,个人使用了 S99docker,如下图:

# 启动命令
/etc/init.d/dockerd start

# 自启命令
ln -s /etc/init.d/dockerd /etc/rc.d/S99docker //本站使用
ln -s /etc/init.d/dockerd /etc/rc.d/S100docker //他人使用

OpenWRT 安装 Docker 服务管理工具的方法 第5张

已知问题

禁止 WAN 访问容器映射的端口是基于 Docker 自带的 DOCKER-USER 链,由于 19.03.3 的 这个BUG,可能会不成功,建议更新 Docker-ce 版本。

镜像页面涉及的导入/载入镜像操作,当用于上传.tar文件时,在某些老版本的 LuCI 中,包括LEAN版,会导致不成功,表现为一直 loading/importing,无法上传,是由于 LuCI 库的问题。

由于 luci-lib-jsonc 在转化成 json 字符串时,会将 INT64 的数字转化成 DOUBLE,这个 BUG 导致在使用 <编辑容器/新建容器> 中,提交 CPU 数量/内存限制时,数值介于 INT_MAX 至 INT64 之间的数字转成 DOUBLE,Docker engine 无法接收,会导致出错。

本文内容摘抄自互联网,无其它用途,如您觉得侵犯了您的权益, 请联系我,本站将立刻删除!

Tags:

文章评论