docker離線安裝并導入鏡像過程
實際項目開發(fā)過程中,客戶環(huán)境大多是全內網環(huán)境,無法連接互聯(lián)網。這樣docker就不能yum在線聯(lián)網安裝,所需要的鏡像也不能在線pull下載。這時就需要進行離線安裝docker及鏡像。
1、下載docker安裝文件
離線安裝docker,需要下載docker的安裝文件。
地址:https://download.docker.com/linux/static/stable/x86_64/
我下的是最新的版本[docker-19.03.6.tgz],文件不大,只有60M左右。
2、離線docker安裝
將安裝包文件上傳到服務器目錄并解壓。
[root@iZbp13sno1lc2yxlhjc4b3Z ~]#tar -xvf docker-19.03.6.tar
將解壓出來的docker文件內容移動到 /usr/bin/ 目錄下
[root@iZbp13sno1lc2yxlhjc4b3Z ~]#cp docker/* /usr/bin/
將docker注冊為service,在/etc/systemd/system目錄下創(chuàng)建docker.service文件,并配置如下內容保存。
[root@iZbp13sno1lc2yxlhjc4b3Z ~]#vim /etc/systemd/system/docker.service [Unit] Description=Docker Application Container Engine Documentation=https://docs.docker.com After=network-online.target firewalld.service Wants=network-online.target [Service] Type=notify # the default is not to use systemd for cgroups because the delegate issues still # exists and systemd currently does not support the cgroup feature set required # for containers run by docker ExecStart=/usr/bin/dockerd ExecReload=/bin/kill -s HUP $MAINPID # Having non-zero Limit*s causes performance problems due to accounting overhead # in the kernel. We recommend using cgroups to do container-local accounting. LimitNOFILE=infinity LimitNPROC=infinity LimitCORE=infinity # Uncomment TasksMax if your systemd version supports it. # Only systemd 226 and above support this version. #TasksMax=infinity TimeoutStartSec=0 # set delegate yes so that systemd does not reset the cgroups of docker containers Delegate=yes # kill only the docker process, not all processes in the cgroup KillMode=process # restart the docker process if it exits prematurely Restart=on-failure StartLimitBurst=3 StartLimitInterval=60s [Install] WantedBy=multi-user.target
添加文件權限并啟動docker,執(zhí)行如下命令:
chmod +x /etc/systemd/system/docker.service #添加文件權限 systemctl daemon-reload #重載unit配置文件 systemctl start docker #啟動Docker systemctl enable docker.service #設置開機自啟
驗證docker安裝是否成功:
systemctl status docker #查看Docker狀態(tài) docker -v #查看Docker版本
Docker離線安裝好后,下面我們把鏡像導入到Docker。
3、離線鏡像文件導入
內網環(huán)境沒法pull鏡像,但是docker本身可以將已有的鏡像導出成tar文件,并且可以再次導入到docker,利用這一點,可以實現(xiàn)離線鏡像文件的下載。
找一臺可以聯(lián)網的docker機器,并pull下載需要的鏡像文件。
然后使用如下命令將鏡像文件導出:
docker save java:8 -o java.tar #將java 8的鏡像導出成tar文件
將tar文件上傳到內網docker服務器,使用如下命令導入鏡像文件:
docker load -i java.tar
查看導入的鏡像文件:
[root@iZbp13sno1lc2yxlhjc4b3Z ~]# docker images REPOSITORY TAG IMAGE ID CREATED SIZE java 8 d23bdf5b1b1b 3 years ago 643MB
OK,通過上述方式,實現(xiàn)了內網環(huán)境下docker的安裝和鏡像文件下載。后續(xù)我們就可以愉快的使用docker來部署管理我們的應用了。
總結
以上為個人經驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關文章
Docker快速部署國產達夢數(shù)據(jù)庫的實現(xiàn)示例
本文主要介紹了Docker快速部署國產達夢數(shù)據(jù)庫的實現(xiàn)示例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2022-07-07docker-compose統(tǒng)一管理多個容器使用詳解
這篇文章主要為大家介紹了docker-compose統(tǒng)一管理多個容器使用詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2023-02-02Linux系統(tǒng)通過Docker安裝SQL?Server數(shù)據(jù)庫
這篇文章介紹了Linux系統(tǒng)通過Docker安裝SQL?Server數(shù)據(jù)庫的方法,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2022-03-03安裝Docker Desktop報錯WSL 2 installation is incomplete的問題(解決報錯)
這篇文章主要介紹了安裝Docker Desktop報錯WSL 2 installation is incomplete的問題,解決方法很簡單只需我們自己手動更新一下,我們根據(jù)提示去微軟官網下載最新版的wsl2安裝后即可正常打開,需要的朋友可以參考下2021-06-06