开篇一张图

Docker基本知识掌握后,又学习了“专有的系统平台”,CoreOS;

之前一直Windows,学习Docker的同时练习了好多Linux知识,全是江湖路数,打个不同就百度/google;

CoreOS安装后,开局提示语就悲催了,2020年过期?

其实,我是先知道的Fedora CoreOS,又知道的CoreOS;园子里先出的Fedora CoreOS的新闻,当时第一时间下载下来安装;

从网上找资料,全是CoreOS资料,稀里糊涂装好CoreOS;才发现跟FedoraCoreOS不是一个;尤其下载FedoraCoreOS的vmware虚拟机的包,按照CoreOS的方法一直么有搞定;还是ISO安装CoreOS成功后,明白了区别,又返回来搞定的;

其中好多关键知识请教了团队的Linux管理员;

正文开始如下:

1.准备清单:

1.1. 下载FedoraCoreOS(下文就不多写在这个词了)ISO,

这个是live光盘版,类似winpe,先启动起来;CoreOS不支持类似windows的直接光盘的安装方式;

1.2. 下载raw安装包,再加上配套的***.sig验证文件;

文件名类似“fedora-coreos-31.20200210.3.0-metal.x86_64.raw.xz” 469m左右;

“ fedora-coreos-31.20200210.3.0-metal.x86_64.raw.xz.sig” 几百字节,很小;

1.3. windows系统的话,准备hhs,mac ,python简单代码,做http 文件服务器;

不支持直接安装,仅支持通过命令,从网上安装,如果默认直接从官网下载,

如果下载下来,本地做http文件服务器,指定raw文件url进行安装;

1.4. 准备fcct,配置文件转换程序;

要把 cloud-init yaml格式配置文件,通过fcct转换成ignition格式;

从官网测试fcct命令工具,一直么有成功;

从fcct git 介绍,通过 fcct-online的docker,运行成web转换接,成功;

以上准备好,稍微啰嗦,几乎把遇到的坑都给填上了;

2. 开始安装,

2.1. 编写 配置文件,

官网示例如下:

variant: fcos

version: 1.0.0

passwd:
   users:
     - name: root
       password_hash: $6$rounds=****这里的密码其实就是字符1,mac/linux命令行生成,windows的没用到;
       ssh_authorized_keys:
         - ssh-rsa AAAAB3NzaC1yc*****xsshel工具生成公钥,mac/linux可以命令行生成;

2.2 生成 ignition的json字符串,存成json文件;用的是fcct的docker生成web界面;

以上的配置文件转换后如下:

{
   "ignition": {
     "config": {
       "replace": {
         "source": null,
         "verification": {}
       }
     },
     "security": {
       "tls": {}
     },
     "timeouts": {},
     "version": "3.0.0"
   },
   "passwd": {
     "users": [
       {
         "name": "root",
         "passwordHash": "$6$rounds=4096$JXkC6Kgm************",
         "sshAuthorizedKeys": [
           "ssh-rsa ********************"
         ]
       }
     ]
   },
   "storage": {},
   "systemd": {}

}

2.3 通过上面的live的iso,启动虚拟机,进入界面;

2.4 启动简单的http文件服务,把以上的raw.xz,**.sig,**.json  3个文件放在一个文件夹;官网没有,用上面的,windows htt工具,mac 用python命令行;

2.4 把上面的json下载到本地 官网有

curl -LO http://***:8000/ignition.json //你转换好的的json文件

2.5 安装命令 官网有

sudo coreos-installer install /dev/sda --ignition ignition.ign 你下载到本地的json文件

以上这个命令,直接从官网下载raw安装包,网速快直接运行就好;

本地以上建的http文件服务器安装如下

sudo coreos-installer install /dev/sda --ignition ignition.ign –u http://***:8000/fco.raw.xz //这里全要手敲,我把名字改短了;

很快,1分钟内安装OK;

reboot重启,进入的就是本地系统了;

3 登录系统

3.1 开机界面如下:

3.2 登录方式,CoreOS默认不支持直接登录,Fedora CoreOS 测试,可以直接登录;推荐是远程ssh+公钥登录;

用户/密码不支持远程登录,不知道修改后是不是支持;

3.3 远程登录,这里用的FinalShell,(不支持公钥空密码登录,必须对公钥设定密码)空密码试了几次都不成功;

要注意的 1 是用户名,就是以上配置文件中的用户名;2 是公钥,就是配置文件中的公钥的文件;3 是 公钥要设密码;

登录界面上是“私钥”,其他生成公钥的教程,多事公钥;公钥 vs 私钥,哎;

打完收工,登录上去了,开始浪吧;

留个小坑,官网教程有设定 固定IP的配置文件示例,是成功不了的,默认一直是自动分配IP;

我搞了小2天,还是请教了Linux管理员搞定,你们看看坑再哪里,hahahahhaha

最新文章

  1. mysql 日志表rename 备份
  2. PDO事务处理
  3. 安卓 io流 写入文件,再读取的基本使用
  4. 使用python来调试串口
  5. jdk线程常见面试题
  6. Struts2 Convention插件的使用(4)使用@Action注解返回json数据
  7. jQuery on()方法绑定动态元素的点击事件
  8. 加入强调语气,使用<strong>和<em>标签
  9. 转:Node.js邮件发送组件- Nodemailer 1.0发布
  10. WCF中的数据契约(DataContract)
  11. JavaScript设计模式_05_发布订阅模式
  12. 坑人的toLocaleDateString和简单地跳坑方式
  13. codevs 1283 等差子序列
  14. Java课程之团队开发(NABCD需求分析)
  15. LeetCode专题-Python实现之第27题:Remove Element
  16. 007 使用SpringMVC开发restful API五--异常处理
  17. node Sream
  18. git 用远程覆盖本地
  19. gitlab RPM卸载 & 安装 && 升级(9.0.13-》9.5.9-》10.0->10.3.9->10.6.6-》10.8-》11.0)
  20. LeetCode–Flip Game

热门文章

  1. 拿到新linux服务器,从配置环境到跑起项目的部署流程
  2. python学习笔记(27)-unittest单元测试-测试用例
  3. PAT甲级——1061 Dating
  4. operator和if结构
  5. [LC] 105. Construct Binary Tree from Preorder and Inorder Traversal
  6. Docker:发布镜像问题denied: requested access to the resource is denied的解决方法
  7. Spring+Mybais整合
  8. linux上hosts文件如何配置
  9. 赫夫曼解码(day17)
  10. Java实用教程系列之对象的转型