動態

詳情 返回 返回

Docker專欄-第2篇 無外網基於Centos7.9離線安裝Docker - 動態 詳情

Docker專欄-第2篇 無外網基於Centos7.9離線安裝Docker

虛擬機系統:centos 7.9 2009(準備兩個iso,一個minimal用於快速安裝系統,一個DVDEverything用於掛載成本地源)

虛擬平台:Vmware 17.5.2

主機系統:windows 11 24h2

關鍵詞: Docker,centos,離線環境,無網環境

1.下載centos 7.9

進入https://mirrors.aliyun.com/centos/7.9.2009/isos/x86_64/
image.png
下載minimal iso安裝

下載everything iso做後續本地的源

2.安裝centos7

2.1 新建虛擬機

在vmware中文件菜單點新建

image.png

定位到我們下載的minimal光盤

image.png
根據自己電腦的實際情況放到對應的位置,並取好名稱。

image.png
下一步,設置磁盤大小為60GB (如資源少,就給20GB或30GB,自己根據情況確定)

image.png
進入硬件配置,默認的配置較少
image.png
點自定義硬件,主力機器,給4GB內容,4個CPU (如資源少,就給2GB,2個CPU)
image.png
確定結束,虛擬機創建完畢。

2.2 啓動虛擬機,安裝系統

啓動界面選擇Install CentOS 7
image.png
進入安裝語言選擇界面
image.png
下滑選擇中文,結果如下
image.png
點擊繼續,進入安裝配置界面
image.png
將有!號的選項設置一下(安裝位置點開後,左上角點完成自動分區即可)
image.png
點擊網絡與主機名
image.png
補充信息:vmware中編輯菜單-》虛擬網絡編輯器打開,可以看到vmware虛擬機默認的網關和可用網段
image.png
右上角打開網絡,並根據vmware的網關信息,設置信息IP
image.png
點配置

image.png
切換至ipv4設置
image.png
將自動(dhcp)改為手動,再填入上面獲取的信息即可。後續我們也可以直接在主機中更改網絡信息.網絡配置文件一般存於/etc/sysconfig/network-scripts/目錄,文件名格式為ifcfg-<接口名>。比如,若要修改eth0的 IP 地址,就要編輯ifcfg-eth0文件。
image.png
點保存,在網絡和主機名設置主頁面設置主機名,我這裏設置為”dockeroncentos“,點擊應用,使其生效。
image.png
點擊左上角完成,返回如下頁面
image.png
點開始安裝
image.png
點擊root密碼,設置為root(本機),因為密碼太短,所以需要連續點擊2次完成,生效。
image.png
返回安裝界面,等待完裝完成。
image.png

3.配置Yum本地源

3.1 使用vmware掛載centos dvd 或everything的iso光盤文件

一、選定主機,確保虛擬機處於關機狀態
image.png
二、點擊編輯虛擬機配置,打開cd/dvd設置,定位好iso
image.png
光驅掛載頁面定位到我們需要的dvd或everything的iso光盤文件,設備狀態中要選擇“啓動時連接”
image.png

3.2 確保iso掛載正常

使用lsblk查看

lsblk

輸出結果,中間有sr0,則代表已正常掛載。

image.png
也可以使用blkid查看

blkid

輸出結果,中間有sr0,則代表已正常掛載
image.png

3.3 將iso的內容裝載進/mnt

使用mount掛載光盤(特別注意:虛擬機重啓後會失效,需要重新執行一次)

mount /dev/sr0 /mnt #當次有效,如果需要開啓有效,需要在fstab中增加一條記錄

image.png

vim /etc/fstab

添加下面的內容並保存,即可實現開機自動mount

/dev/sr0 /mnt iso9660 defaults 0 0

查看,是否裝載成功

ls /mnt

image.png

3.4 將裝載好數據配置成本地yum的源

備份並清空原有的yum配置文件目錄,使用命令mv /etc/yum.repos.d /etc/yum.repos.d.backup將原目錄備份,並創建一個新的yum源配置文件目錄,使用命令mkdir -p /etc/yum.repos.d,截屏保存命令執行結果(圖片標題為"備份並創建yum源目錄")

備份並清空原有的yum配置

mv /etc/yum.repos.d /etc/yum.repos.d.backup

創建標準的目錄

mkdir -p /etc/yum.repos.d #-p 代表如果父目錄不存在會自動創建父目錄

此時可以全手打,也可以複製一個原有的配置,再在裏面改基本的配置

cp  /etc/yum.repos.d.backup/CentOS-Base.repo /etc/yum.repos.d/local.repo

然後將配置改為如下配置

[local]
name=Local Yum Repo
baseurl=file:///mnt
enabled=1
gpgcheck=0

3.5 重建yum數據庫

清除yum緩存並重新生成元數據緩存

yum clean all

image.png

yum makecache

image.png

此時,yum本地倉庫已完全建立

4.使用yum

4.1列出倉庫中的軟件包

執行命令

yum repolist

image.png

4.2安裝vim

執行命令

yum install vim -y

image.png

4.3查看vim版本

vim --version

image.png

4.4打開vim

vim

image.png

4.安裝Docker

3.1 內核版本檢查

確保內核版本大於3.10及以上

uname -a

image.png

3.2 安裝依賴

安裝依賴(必須)

yum install -y yum-utils device-mapper-persistent-data lvm2

3.3 將Docker的二進制上傳至虛擬機

進入https://download.docker.com/linux/static/stable/x86_64/
下載對應的文件(可以使用最新版本),也可以用本文的版本。
image.png
image.png
使用ls確認
image.png

3.4 解壓Docker離線安裝包並將文件複製到/usr/bin目錄

使用tar解壓

tar xvf docker-26.1.4.tgz 

image.png
查看解壓後的效果

 ls 

image.png

將離線安裝包複製到/usr/bin

cp -R  docker/* /usr/bin #-R代表支持遞歸,即裏面有目錄也是可以的。

image.png

3.5 將docker-compose放入/usr/bin

一、改名為docker-compose

mv docker-compose-linux-x86_64 docker-compose

二、增加可執行權限

chmod +x docker-compose

三、複製進/usr/bin

cp docker-compose /usr/bin/

3.6驗證docker與docker-compose

驗證docker

docker --version

image.png
驗證docker-compose

docker-compose --version

image.png

3.7 創建Docker服務

創建Docker服務配置文件/etc/systemd/system/docker.service

vim /etc/systemd/system/docker.service

編輯輸入下面的內容後,執行:wq保存並退出vim

[Unit]
Description=Docker Application Container Engine
Documentation=https://docs.docker.com
After=network-online.target firewalld.service
Wants=network-online.target

[Service]
Type=notify
ExecStart=/usr/bin/dockerd -H tcp://0.0.0.0:2375 -H unix://var/run/docker.sock
ExecReload=/bin/kill -s HUP $MAINPID
LimitNOFILE=infinity
LimitNPROC=infinity
LimitCORE=infinity
TimeoutStartSec=0
Delegate=yes
KillMode=process
Restart=on-failure
StartLimitBurst=3
StartLimitInterval=60s

[Install]
WantedBy=multi-user.target

確認是否保存成功

cat /etc/systemd/system/docker.service

image-20250508225222640
image.png
設置服務並開機啓動

chmod +x /etc/systemd/system/docker.service #添加執行權限
systemctl daemon-reload #重新加載系統服務
systemctl start docker #啓動docker引擎
systemctl enable docker #開機啓動

image.png

3.8 查看Docker詳細信息

docker info 
#docker inspect 鏡像id 用於查看鏡像信息
#docker stats 實時查看正在運行的容器的資源使用情況

image.png

3.9 配置Docker加速器

編輯/etc/docker/daemon.json

mkdir /etc/docker #確保docker目錄存在
vim /etc/docker/daemon.json

配置內容如下

{
    "registry-mirrors": [
            "https://docker.m.daocloud.io",
            "https://hub-mirror.c.163.com",
            "https://docker.1ms.run",
            "https://mirrors.tencent.com",         
           "https://docker.mirrors.ustc.edu.cn"
    ],
  "dns" : [
    "114.114.114.114",
    "8.8.8.8"
  ]
}

保存並按下面的操作使鏡像配置生效

# 這裏有個坑,需要先分別停掉 docker.service 和 docker.socket,然後再重啓,否則可能配置不會生效(還是從官方鏡像源拉取)
sudo systemctl stop docker.service
sudo systemctl stop docker.socket
sudo systemctl start docker.service
sudo systemctl start docker.socket

sudo systemctl daemon-reload
sudo systemctl restart docker
systemctl enable docker #使docker後台開機啓動

也可以直接通過指定鏡像源拉取:

docker pull m.daocloud.io/docker.io/library/ubuntu:latest

注:這種配置僅允許 Docker 信任該私庫(不使用 HTTPS 校驗證書),不會改變鏡像拉取邏輯

碼上世界 1179611323@qq.com

發行日志

20250518 初版

user avatar yushang_66b0e8718bd85 頭像 niewj 頭像 startshineye 頭像 jimru 頭像 stormjun94 頭像 abelethan 頭像 ouysh1981 頭像 iex365 頭像
點贊 8 用戶, 點贊了這篇動態!
點贊

Add a new 評論

Some HTML is okay.