经过了漫长时间的移植和查询资料,得以解决一下嵌入式docker出现的问题,很多网上的资料全都是复制粘贴复制粘贴,找不到合适的解决方法让人很是苦恼,希望自己总结出的一些解决问题的经验给广大朋友减少一些负担吧!
1.standard文件找不到:
解决方法:
1
2
|
tar zcvf xtables /usr/lib64/xtables
cp xtables. tar /work/initramfs/
|
需要到同内核同系统的另一台服务器打包在解压
2.需要iptables支持才能启动docker,移植iptables在启动docker错误:
解决方法:
1
2
|
docker --iptables= false
nohup docker --iptables= false > /1 .txt 2>&1 &(后台启动)
|
3.缺少nat防火墙的网络连接模块:
解决方法:
1
|
modprobe iptable_nat
|
4.进入docker镜像出现问题,缺少veth模块,直接加载
解决方法:
1
|
modprobe veth
|
5.进入docker镜像文件系统不符合,pivot root invalid argumen
解决方法:
1
2
3
4
5
6
|
cat > /etc/systemd/system/docker .service.d /10-ramdisk .conf <<eof
> [service]
> environment=docker_ramdisk= true
> eof
export docker_ramdisk= true
在 kill 掉用刚才方法启动的docker,重启就ok了
|
补充两点有的做完以上步骤,移植的docker就可以使用了,但是偶尔会出现以下的一种问题。
出现缺少的dns的文件内容,把任何一台的resolv.conf 文件传过去就ok了。
附一张移植后加载的模块驱动:
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持服务器之家。
原文链接:https://blog.51cto.com/13401435/2438239