首頁 > 軟體

CoreOS 在 PC 上快速安裝上手

2020-06-16 17:57:31

意義

能夠以最快的速度安裝部署Linux作業系統。安裝快速簡單,幾乎不花時間就可以開始執行Docker。執行速度非常快。使用記憶體硬碟。

我的情況

win8 筆電偶爾玩遊戲,但是裝Linux雙系統可能需要我一天的時間來完成。我的所有業務都只需要在Docker中跑就可以了。而且我筆記型電腦記憶體夠大16g (感謝HUST 姜老師)。

準備

  1. CoreOS image 下載地址
  2. EasyBCD 2.2 免費下載【中文多國語言版】 http://www.linuxidc.com/Linux/2012-10/72140.htm

開工

  1. 安裝EasyBCD新增ISO引導項檔案直接使用CoreOS的livecd image
    詳細步驟帶截圖:http://www.linuxidc.com/Linux/2011-04/35198.htm
  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. 注意本方案是不惜一切代價用最簡潔的環境設定來換開發時間。完美主義喜歡折騰的小夥伴可能要繞行了。

在CoreOS下部署WordPress範例教學 http://www.linuxidc.com/Linux/2014-07/104806.htm 

伺服器作業系統CoreOS初體驗 http://www.linuxidc.com/Linux/2014-07/104807.htm 

CoreOS 實戰:剖析 etcd  http://www.linuxidc.com/Linux/2014-11/109725.htm

CoreOS 實戰:CoreOS 及管理工具介紹  http://www.linuxidc.com/Linux/2014-11/109728.htm

[教學]在 CoreOS 上構建你的第一個應用  http://www.linuxidc.com/Linux/2014-12/110799.htm


IT145.com E-mail:sddin#qq.com