讓 Docker 每次開機(jī)自動運(yùn)行。因?yàn)槲覀兪情_發(fā)環(huán)境,虛擬機(jī)用完就關(guān)機(jī)了,下次啟動虛擬機(jī),讓 Docker 跟著啟動對于我們開發(fā)來說更方便一些。

這篇再整理一下在 CentOS 下安裝 Docker。Vagrant + VirtualBox + Docker 來搭建開發(fā)環(huán)境是很方便的,不過機(jī)器性能不高的話會很卡。

1、卸載系統(tǒng)中的docker
首先來卸載一下當(dāng)前的 docker,當(dāng)然系統(tǒng)中可能沒有。
[vagrant@localhost ~]$ sudo yum remove docker \
> docker-client \
> docker-client-latest \
> docker-common \
> docker-latest \
> docker-latest-logrotate \
> docker-logrotate \
> docket-engine
Failed to set locale, defaulting to C
Loaded plugins: fastestmirror
No Match for argument: docker
No Match for argument: docker-client
No Match for argument: docker-client-latest
No Match for argument: docker-common
No Match for argument: docker-latest
No Match for argument: docker-latest-logrotate
No Match for argument: docker-logrotate
No Match for argument: docket-engine
No Packages marked for removal
2、安裝對應(yīng)的依賴環(huán)境和鏡像地址
安裝yum-utils,它屬于是yum的一個擴(kuò)展工具。
[vagrant@localhost ~]$ sudo yum install -y yum-utils
Complete!
[vagrant@localhost ~]$
然后呢,添加 Docker 的資源庫。
[vagrant@localhost ~]$ sudo yum-config-manager \
> --add-repo \
> https://download.docker.com/linux/centos/docker-ce.repo
Failed to set locale, defaulting to C
Loaded plugins: fastestmirror
adding repo from: https://download.docker.com/linux/centos/docker-ce.repo
grabbing file https://download.docker.com/linux/centos/docker-ce.repo to /etc/yum.repos.d/docker-ce.repo
repo saved to /etc/yum.repos.d/docker-ce.repo
官網(wǎng)的速度可能較慢,這里也可以添加阿里云的資源庫。
[vagrant@localhost ~]$ sudo yum-config-manager \
> --add-repo \
> http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
Failed to set locale, defaulting to C
Loaded plugins: fastestmirror
adding repo from: http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
grabbing file http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo to /etc/yum.repos.d/docker-ce.repo
repo saved to /etc/yum.repos.d/docker-ce.repo
3、安裝 Docker
這里通過 yum 安裝 docker-ce、docker-ce-cli 和 containerd.io。
[vagrant@localhost ~]$ sudo yum install -y docker-ce docker-ce-cli containerd.io
Failed to set locale, defaulting to C
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* base: mirror.lzu.edu.cn
* extras: mirrors.ustc.edu.cn
* updates: mirrors.ustc.edu.cn
docker-ce-stable | 3.5 kB 00:00:00
(1/2): docker-ce-stable/7/x86_64/updateinfo | 55 B 00:00:00
(2/2): docker-ce-stable/7/x86_64/primary_db | 88 kB 00:00:00
Complete!
其中 docker-ce 是 Docker 的社區(qū)版,專門用于開發(fā)人員和小團(tuán)隊(duì)創(chuàng)建基于容器的應(yīng)用。比如,我們現(xiàn)在就是在搭建開發(fā)環(huán)境。docker-ce-cli 相當(dāng)于是個命令行工具。containerd.io 是 一個守護(hù)進(jìn)程。
4、啟動 Docker 并查看運(yùn)行中的容器
啟動 docker 直接使用 systemctl 或者 service 即可啟動。
[vagrant@localhost ~]$ sudo systemctl start docker
[vagrant@localhost ~]$ sudo docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
通過 docker ps 命令可以查看運(yùn)行中的容器,當(dāng)然了,我們這里只是剛剛安裝了 Docker,不會有運(yùn)行中的容器。
5、查看 Docker 版本
查看 Docker 的版本,其實(shí)就類似于我們安裝完 JDK 并配置完 JDK 的環(huán)境變量以后,通過 java -version 來驗(yàn)證一下安裝和配置是否正確。我們通過 docker version 來查看 Docker 是否安裝成功。
[root@localhost ~]# docker version
Client: Docker Engine - Community
Version: 20.10.21
API version: 1.41
Go version: go1.18.7
Git commit: baeda1f
Built: Tue Oct 25 18:04:24 2022
OS/Arch: linux/amd64
Context: default
Experimental: true
Server: Docker Engine - Community
Engine:
Version: 20.10.21
API version: 1.41 (minimum version 1.12)
Go version: go1.18.7
Git commit: 3056208
Built: Tue Oct 25 18:02:38 2022
OS/Arch: linux/amd64
Experimental: false
containerd:
Version: 1.6.10
GitCommit: 770bd0108c32f3fb5c73ae1264f7e503fe7b2661
runc:
Version: 1.1.4
GitCommit: v1.1.4-0-g5fd4c4d
docker-init:
Version: 0.19.0
GitCommit: de40ad0
其實(shí)此時執(zhí)行 docker version 有些多此一舉,因?yàn)槲覀冊谏弦徊絾?Docker 后執(zhí)行了 docker ps 命令,就相當(dāng)于驗(yàn)證 Docker 是否啟動成功了。
6、設(shè)置開機(jī)自啟動
最后呢,讓 Docker 每次開機(jī)自動運(yùn)行。因?yàn)槲覀兪情_發(fā)環(huán)境,虛擬機(jī)用完就關(guān)機(jī)了,下次啟動虛擬機(jī),讓 Docker 跟著啟動對于我們開發(fā)來說更方便一些。
[root@localhost ~]# systemctl enable docker
好啦,Docker 的安裝就到這了!一個很簡單的教程??!