Skip to content
This repository has been archived by the owner on May 3, 2023. It is now read-only.

已知问题 #12

Open
SuLingGG opened this issue Dec 19, 2020 · 7 comments
Open

已知问题 #12

SuLingGG opened this issue Dec 19, 2020 · 7 comments

Comments

@SuLingGG
Copy link
Owner

SuLingGG commented Dec 19, 2020

在使用本项目提供的 Docker 镜像的过程中,可能会遇到以下问题:

1.docker run 容器后无法启动成功,使用 docker logs 命令查看容器日志,返回 exec format error:

这个问题大概率出现在 rpi3 和 rpi4 镜像 / 设备上。

出现这个问题的原因在于,当前设备使用的是 32 位架构的内核,但是却尝试运行了 64 位架构的 Docker 镜像。

Tip:
CPU 架构和内核架构没有必然关系:
32 位的 CPU 只能运行 32 位的内核,64 位的 CPU 同时支持 32 和 64 位内核,
如果让 64 位 CPU 运行 32 位内核,那么搭载 32 位内核的系统将只支持运行 32 位的程序和 32 位的 Docker 镜像;
如果让 64 位 CPU 运行 64 位内核,那么搭载 64 位内核的系统将同时支持运行 32/64 位的程序和 32/64 位的 Docker 镜像。

当前镜像的目标架构可以在 宿主机中 用命令 uname -a 查看:

armhf 架构 (关键字 armv7l):

Linux xxx 5.4.79 #0 SMP Fri Dec 11 02:36:13 2020 armv7l GNU/Linux

aarch64 架构 (关键字 aarch64):

Linux xxx 5.4.79 #0 SMP Sat Nov 28 13:32:46 2020 aarch64 GNU/Linux

rpi3 和 rpi4 仅适用于宿主机为 64 位架构的内核,如果你当前使用的宿主机镜像使用了 32 位架构的内核,自然不会运行成功。

因为目前官方主推的 Raspberry Pi OS 仍坚持使用 armhf 作为目标架构进行构建 (虽然有推出 aarch64 架构的 Raspberry Pi OS,但本质是 64 位 Debian + Raspberry Pi OS 皮肤),所以当你在使用 armhf 版本的 Raspberry Pi OS 又尝试运行 rpi3 / rpi4 标签的镜像时,肯定会遇到这个错误。

解决方法:

使用 latest 或 rpi2 标签拉取适用于 32 位内核的 Docker 镜像。

2.在使用 docker restartdocker rm -f 命令重启或强制删除容器时,宿主机会随着容器重启:

此问题可能会在各个镜像出现,目前暂时没有好的解决办法。

3. x86 平台的镜像 (x86_64 / x86_generic) 其他功能一切正常,但在使用 ShadowsocksR Plus + 或者 Passwall 时无法科学上网:

这种情况一般发生在以 CentOS 或群晖为宿主机环境的设备上。由于 CentOS 或群晖内核版本过低,可能不支持 OpenWrt 中的某些特性,建议使用宿主机环境为 5.x 内核的设备来运行 Docker 版 OpenWrt。

@pansila
Copy link

pansila commented Jan 3, 2021

问个弱鸡问题,初始密码多少?我猜对一次好久不用又忘了

@SuLingGG
Copy link
Owner Author

SuLingGG commented Jan 3, 2021

问个弱鸡问题,初始密码多少?我猜对一次好久不用又忘了

用户名: root / 密码: password

@WoChen5770
Copy link

关于 3. x86 平台的镜像 (x86_64 / x86_generic) 其他功能一切正常,但在使用 ShadowsocksR Plus + 或者 Passwall 时无法科学上网:
大佬,能不能让openwrt的镜像自带内核,这样是否可行?

@WoChen5770
Copy link

目前在用ikuai的docker环境,按你的说法,要升级ikuai的内核,目前估计升级不了

@SuLingGG
Copy link
Owner Author

关于 3. x86 平台的镜像 (x86_64 /x86_generic) 其他功能一切正常,但在使用 ShadowsocksR Plus + 或者 Passwall 时无法科学上网:
大佬,能不能让 openwrt 的镜像自带内核,这样是否可行?

不可行:
https://www.zhihu.com/question/55143510

@WoChen5770
Copy link

关于 3. x86 平台的镜像 (x86_64 /x86_generic) 其他功能一切正常,但在使用 ShadowsocksR Plus + 或者 Passwall 时无法科学上网:
大佬,能不能让 openwrt 的镜像自带内核,这样是否可行?

不可行:
https://www.zhihu.com/question/55143510

好的,感谢回复

@hyy34
Copy link

hyy34 commented Mar 10, 2023

Passwall 关闭DNS选项和里的ChinaDNS-NG 试试。

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

4 participants