CoreOS 在 PC 上快速安装上手

意义

能够以最快的速度安装部署Linux操作系统。安装快速简单,几乎不花时间就可以开始运行Docker。运行速度非常快。使用内存硬盘。

我的情况

win8 笔记本偶尔玩游戏,但是装Linux双系统可能需要我一天的时间来完成。我的所有业务都只需要在Docker中跑就可以了。而且我笔记本电脑内存够大16g (感谢HUST 姜老师)。

准备

  1. CoreOS image 下载地址
  2. EasyBCD 下载地址

开工

  1. 安装EasyBCD添加ISO引导项文件直接使用CoreOS的livecd image
    详细步骤带截图:http://jingyan.baidu.com/article/466506586ed309f549e5f81c.html
  2. 启动CoreOS完成CoreOS安装

更新

只需要给启动用的ISO文件更新即可。

缺点

  1. 不能持久化(带来的优点,玩坏了,直接重启即可)
  2. 整个操作系统都在硬盘中生成的文件直接占用硬盘空间(带来的优点,硬盘速度提升非常高)
  3. 每次开机手动挂载硬盘空间,手动运行整个系统的初始化脚本。

结合优缺点这里建议这套配置给有确定业务的工作来做还可以,如果业务比较多,可能需要优化的点比较多。

配置

  1. 在硬盘上开一个100g大小的空间,并格式化,参考命令:mkfs.ext4 /dev/sda2 ,然后挂载。如果您不明白如何分区格式化并且挂载,请看考这里。这篇文章可以说是我见过关于初级磁盘管理最好的一篇文章了。
  2. 挂载之后复制文件夹/var/lib/docker/ 到挂载的位置,再软连接回去。(然后docker images就可以持久化放到硬盘里面了重启不会丢失)。参考操作如下:
     
      
    1. cp -rf /var/lib/docker /mnt/
    2. rm -rf /var/lib/docker
    3. ln -s /mnt/docker /var/lib/docker

我的初始化文件参考

 
  1. mkdir /root/.ssh
  2. echo "ssh-rsa xxx..(省略)....xx Li-jianying@lijianyings-MacBook-Pro.local" > /root/.ssh/authorized_keys
  3. rm -rf /var/lib/docker
  4. ln -s /mnt/docker /var/lib/docker
  5. #echo 'DOCKER_OPTS="--registry-mirror=http://XXXXX.m.daocloud.io"' >> /run/flannel_docker_opts.env
  6. #systemctl daemon-reload
  7. systemctl restart docker
  8. # using disk

先导入rsakey,然后软连接到docker位置。

添加daocloud 加速(官方虽然没写CoreOS怎么加速,但是有大神给出了方法),因为我不加速比加速快,所以这里就先注释掉。作为备选方案。

systemd遇到的坑

如果docker中返回错误-1容器就会挂掉。但是systemd中还存在scope。

当启动问题容器会提示

 
  1. Error response from daemon: Cannot start container test: [8] System error: Unit docker-e10eb86807cd9971fc03a8eee732771193d506ed2ba678fdf4292916a9fb072c.scope already exists.

那么

 
  1. systemctl stop docker-e10eb86807cd9971fc03a8eee732771193d506ed2ba678fdf4292916a9fb072c.scope

就可以搞定。

CoreOS.iso 遇到的坑2

不断确认KnowHosts。

参考解决 https://github.com/lijianying10/FixLinux/blob/master/note/取消sshPublicKeyKnowHost认证.md

总结

用这种方法在PC中部署Linux实在是太方便了。熟悉Docker一套的这种想法可能20分钟就可以根据自己的情况搞定。
我找到了这个思路之后经过各种权衡。

  1. 为了快速解决引导问题 用EasyBCD 直接引导内存ISO启动 换 折腾UEFI Grub的问题
  2. 为了减少配置环境带来的时间成本从普通安装到硬盘里面的发型版本 换 CoreOS
  3. 为了避免错误操作Or版本升级给系统带来的不稳定因素 换 Docker
  4. 在未来也许 换 RKT,RunC(希望大婶们快点填坑,RunC说这个月Release不知道会不会跳票)
  5. 注意本方案是不惜一切代价用最简洁的环境配置来换开发时间。完美主义喜欢折腾的小伙伴可能要绕行了。
  6. 原文发布时间为:2015-07-17




  7. 本文来自云栖社区合作伙伴“Linux中国
优秀的个人博客,低调大师

微信关注我们

原文链接:https://yq.aliyun.com/articles/87925

转载内容版权归作者及来源网站所有!

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。

相关文章

发表评论

资源下载

更多资源
Apache Tomcat7、8、9(Java Web服务器)

Apache Tomcat7、8、9(Java Web服务器)

Tomcat是Apache 软件基金会(Apache Software Foundation)的Jakarta 项目中的一个核心项目,由Apache、Sun 和其他一些公司及个人共同开发而成。因为Tomcat 技术先进、性能稳定,而且免费,因而深受Java 爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的Web 应用服务器。

Eclipse(集成开发环境)

Eclipse(集成开发环境)

Eclipse 是一个开放源代码的、基于Java的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。幸运的是,Eclipse 附带了一个标准的插件集,包括Java开发工具(Java Development Kit,JDK)。

Java Development Kit(Java开发工具)

Java Development Kit(Java开发工具)

JDK是 Java 语言的软件开发工具包,主要用于移动设备、嵌入式设备上的java应用程序。JDK是整个java开发的核心,它包含了JAVA的运行环境(JVM+Java系统类库)和JAVA工具。

Sublime Text 一个代码编辑器

Sublime Text 一个代码编辑器

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。