lihy0 2018-07-12
意义
能够以最快的速度安装部署Linux操作系统。安装快速简单,几乎不花时间就可以开始运行Docker。运行速度非常快。使用内存硬盘。
我的情况
win8 笔记本偶尔玩游戏,但是装Linux双系统可能需要我一天的时间来完成。我的所有业务都只需要在Docker中跑就可以了。而且我笔记本电脑内存够大16g (感谢HUST 姜老师)。
准备
开工
更新
只需要给启动用的ISO文件更新即可。
缺点
结合优缺点这里建议这套配置给有确定业务的工作来做还可以,如果业务比较多,可能需要优化的点比较多。
配置
我的初始化文件参考
mkdir /root/.ssh
echo "ssh-rsa xxx..(省略)....xx [email protected]" > /root/.ssh/authorized_keys
rm -rf /var/lib/docker
ln -s /mnt/docker /var/lib/docker
#echo 'DOCKER_OPTS="--registry-mirror=http://XXXXX.m.daocloud.io"' >> /run/flannel_docker_opts.env
#systemctl daemon-reload
systemctl restart docker
# using disk
先导入rsakey,然后软连接到docker位置。
添加daocloud 加速(官方虽然没写CoreOS怎么加速,但是有大神给出了方法),因为我不加速比加速快,所以这里就先注释掉。作为备选方案。
systemd遇到的坑
如果docker中返回错误-1容器就会挂掉。但是systemd中还存在scope。
当启动问题容器会提示
Error response from daemon: Cannot start container test: [8] System error: Unit docker-e10eb86807cd9971fc03a8eee732771193d506ed2ba678fdf4292916a9fb072c.scope already exists.
那么
systemctl stop docker-e10eb86807cd9971fc03a8eee732771193d506ed2ba678fdf4292916a9fb072c.scope
就可以搞定。
CoreOS.iso 遇到的坑2
不断确认KnowHosts。
参考解决 https://github.com/lijianying10/FixLinux/blob/master/note/取消sshPublicKeyKnowHost认证.md
总结
用这种方法在PC中部署Linux实在是太方便了。熟悉Docker一套的这种想法可能20分钟就可以根据自己的情况搞定。
我找到了这个思路之后经过各种权衡。