麒麟操作系統上安裝docker並加載鏡像


最近需要在政務雲系統中部署深度學習環境,其使用麒麟操作系統並與互聯網相互隔離,無法使用常規的指令行方式進行安裝。參考docker官方文檔並經過多次嘗試,使用離線安裝的方式完成了環境的部署。這里做一下筆記分享經驗。

 

整個過程大概分為4步:

    ·操作系統版本信息查詢

    ·docker官網下載安裝文件

    ·離線安裝

    ·鏡像遷移及部署

 

一、操作系統版本查詢

    麒麟系統在3.0版之后,不再使用FreeBSD內核作為基礎,開始使用Linux內核。這也就是說,不少Linux版本的軟件可以直接在麒麟系統上進行安裝。但Linux也有多種不同的版本,這里就需要先確定所使用的麒麟操作系統版本對應哪個Linux OS。通常可以通過:uname -a   ||  lsb_release -a  ||  cat /proc/version  等指令進行查詢。

    以我在政務雲項目中所使用的銀河麒麟4.0.X為例,使用 lsb_release -a 和 uname -a 指令僅能查看到麒麟版本和對應的Linux內核版本,但在使用 cat /proc/version 指令時,可以看到輸出的內容中有 "Ubuntu1~16.04.9" 字樣,也就是說該麒麟版本與Ubuntu較為接近,可以使用.deb安裝包。

 

二、docker官網下載安裝文件

    根據docker官網文檔( https://docs.docker.com/engine/install/ubuntu/#install-from-a-package )指示,需要在下載地址( https://download.docker.com/linux/ubuntu/dists/ )選擇正確的Ubuntu發行版本,我們剛查詢到的對應版本是Ubuntu16.04.9,也就是xenial版本

 

至於說Ubuntu對應版本號與版本名稱可以在 https://blog.csdn.net/songfulu/article/details/85310273 查到。

之后,根據官方文檔指引,最終在 /ubuntu/dists/xenial/pool/stable/amd64/ 的路徑下,找到了docker各穩定版的離線安裝包。

 

 

需要特別注意的是,這里的安裝包共有3類,即 containerd.io \ docker-ce-cli \ docker-ce 這3類安裝包之間存在着依賴關系,每一類安裝包都需要至少下載一個。

 

三、離線安裝

    根據官方文檔的說明,使用 dpkg -i 指令安裝即可。 但經過實踐摸索,這三類安裝包之間存在依賴關系,順序錯誤會導致安裝失敗

    ①首先要安裝容器類服務,使用 dpkg -i containerd.io_XXXXXX.deb 指令進行安裝。

    ②其次要安裝docker客戶端,cli 即為 client 的意思。使用 dpkg -i docker-ce-cli_XXXX.deb 指令進行安裝。

 

     ③最后再安裝docker服務端程序,使用 dpkg -i docker-ce_XXXX.deb 指令進行安裝。

 

 這樣就能夠正確的建立依賴關系,完成docker的安裝。一般來講,安裝之后會自動啟動docker服務,若該服務未啟動,則使用 service docker start 或 systemctl start docker 指令將其開啟即可。

 

四、鏡像遷移及部署

    docker環境配置成功,最后拷貝進來事先通過docker save命令打包好的鏡像壓縮包(tensorflow/tensorflow:2.2.3-gpu-py3),使用docker load命令加載這個鏡像。就可以在麒麟操作系統中運行深度學習程序了。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM