目錄
- 一、卸載舊版本
- 二、配置Docker的yum庫
- 三、安裝Docker
- 3.1 在線安裝方式
- 3.2 離線安裝方式
- 四、配置阿里云鏡像加速【選配】
- 五、Docker服務相關命令
- 六、導出和導入鏡像
官網
一、卸載舊版本
首先如果系統中已經存在舊版本的Docker,則先卸載:
yum remove docker \docker-client \docker-client-latest \docker-common \docker-latest \docker-latest-logrotate \docker-logrotate \docker-engine
二、配置Docker的yum庫
首先要安裝一個yum工具
yum install -y yum-utils
安裝成功之后,執行命令,配置Docker的yum源
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
三、安裝Docker
3.1 在線安裝方式
yum install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
檢查安裝是否成功,查看版本號
docker -v
啟動 docker 服務
systemctl start docker
查看 docker 服務的運行狀態
systemctl status docker
將 docker 服務設置為開機自動啟動
systemctl enable docker
列出本地所有鏡像
docker images
查看和管理運行中或已停止的容器
docker ps
如果以上命令都不報錯,則說明docker安裝成功
3.2 離線安裝方式
首先下載離線安裝包,下載完成之后,解壓
tar -zxvf docker-24.0.6.tgz
將解壓出來的docker文件內容拷貝或者移動到/usr/bin/
目錄下
cp docker/* /usr/bin/
然后就可以使用docker -v
或者docker info
命令驗證是否可以輸出docker信息了。因為沒有開啟守護進程,docker 其他命令還不能使用。所以需要編寫docker.service
文件加入Linux服務當中并開啟守護進程。
編輯文件:
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 -H unix:///var/run/docker.sock --selinux-enabled=false --default-ulimit nofile=65536:65536
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
如果需要開啟遠程服務ExecStart
屬性修改為以下命令:# -H tcp://0.0.0.0:2375 開啟遠程連接命令
ExecStart=/usr/bin/dockerd -H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock --selinux-enabled=false --default-ulimit nofile=65536:65536
添加文件可執行權限
chmod +x /etc/systemd/system/docker.service
配置成功后,重新加載 daemon 服務
systemctl daemon-reload
啟動 docker 服務
systemctl start docker
查看 docker 服務的運行狀態
systemctl status docker
將 docker 服務設置為開機自動啟動
systemctl enable docker
列出本地所有鏡像
docker images
查看和管理運行中或已停止的容器
docker ps
如果以上命令都不報錯,則說明docker安裝成功
四、配置阿里云鏡像加速【選配】
按照官網里面鏡像加速器中的文檔進行配置即可。
五、Docker服務相關命令
重新加載配置文件
systemctl daemon-reload
啟動 docker 服務
systemctl start docker
查看 docker 服務的運行狀態
systemctl status docker
停止運行
systemctl stop docker
重新啟動
systemctl restart docker
將 docker 服務設置為開機自動啟動
systemctl enable docker
禁用開機自動啟動
systemctl disabled docker
查看docker開機自動啟動狀態 enabled:開啟, disabled:關閉
systemctl is-enabled docker.service
查看 docker 版本號
docker -v
Docker啟動所有容器
docker start $(docker ps -a -q)
六、導出和導入鏡像
首先在可以連接網絡的服務器上面獲取相關軟件鏡像,然后通過 save
和 load
命令導出和導入鏡像。由于導入的鏡像沒有鏡像名稱和 tag
版本號,需要使用 docker tag
命令 修改導入的鏡像命令。
docker導出鏡像:
docker save 99ee9af2b6b1 > redis.tar # 99ee9af2b6b1 鏡像ID
docker導入鏡像:
docker load < redis.tar
docker修改鏡像標簽名稱:
docker tag 99ee9af2b6b1 redis:3.2.0 #99ee9af2b6b1 鏡像ID 鏡像名稱:版本號