Docker的安装与基础配置
Docker安装与基础配置
1. 懒人安装法
$ curl -sSL https://get.docker.com/ | sh
$ docker version #验证
脚本安装可以做到一键安装,最方便,但是用户无法指定版本等条件,如果你是想指定docker的版本的,这种做法并不推荐。
2. 库安装
1. Debain,Ubuntu,raspbian等的OS
$ apt-cache madison docker-ce
docker-ce | 5:20.10.3~3-0~raspbian-buster | https://mirrors.aliyun.com/docker-ce/linux/raspbian buster/stable armhf Packages
docker-ce | 5:20.10.2~3-0~raspbian-buster | https://mirrors.aliyun.com/docker-ce/linux/raspbian buster/stable armhf Packages
docker-ce | 5:20.10.1~3-0~raspbian-buster | https://mirrors.aliyun.com/docker-ce/linux/raspbian buster/stable armhf Packages
docker-ce | 5:20.10.0~3-0~raspbian-buster | https://mirrors.aliyun.com/docker-ce/linux/raspbian buster/stable armhf Packages
docker-ce | 5:19.03.15~3-0~raspbian-buster | https://mirrors.aliyun.com/docker-ce/linux/raspbian buster/stable armhf Packages
docker-ce | 5:19.03.14~3-0~raspbian-buster | https://mirrors.aliyun.com/docker-ce/linux/raspbian buster/stable armhf Packages
docker-ce | 5:19.03.13~3-0~raspbian-buster | https://mirrors.aliyun.com/docker-ce/linux/raspbian buster/stable armhf Packages
docker-ce | 5:19.03.12~3-0~raspbian-buster | https://mirrors.aliyun.com/docker-ce/linux/raspbian buster/stable armhf Packages
docker-ce | 5:19.03.11~3-0~raspbian-buster | https://mirrors.aliyun.com/docker-ce/linux/raspbian buster/stable armhf Packages
docker-ce | 5:19.03.10~3-0~raspbian-buster | https://mirrors.aliyun.com/docker-ce/linux/raspbian buster/stable armhf Packages
docker-ce | 5:19.03.9~3-0~raspbian-buster | https://mirrors.aliyun.com/docker-ce/linux/raspbian buster/stable armhf Packages
docker-ce | 5:19.03.8~3-0~raspbian-buster | https://mirrors.aliyun.com/docker-ce/linux/raspbian buster/stable armhf Packages
docker-ce | 5:19.03.7~3-0~raspbian-buster | https://mirrors.aliyun.com/docker-ce/linux/raspbian buster/stable armhf Packages
docker-ce | 5:19.03.6~3-0~raspbian-buster | https://mirrors.aliyun.com/docker-ce/linux/raspbian buster/stable armhf Packages
docker-ce | 5:19.03.5~3-0~raspbian-buster | https://mirrors.aliyun.com/docker-ce/linux/raspbian buster/stable armhf Packages
docker-ce | 5:19.03.4~3-0~raspbian-buster | https://mirrors.aliyun.com/docker-ce/linux/raspbian buster/stable armhf Packages
docker-ce | 5:19.03.3~3-0~raspbian-buster | https://mirrors.aliyun.com/docker-ce/linux/raspbian buster/stable armhf Packages
docker-ce | 5:19.03.2~3-0~raspbian-buster | https://mirrors.aliyun.com/docker-ce/linux/raspbian buster/stable armhf Packages
docker-ce | 5:19.03.1~3-0~raspbian-buster | https://mirrors.aliyun.com/docker-ce/linux/raspbian buster/stable armhf Packages
我以树莓派的raspbian为例。执行apt-cache madison docker-ce命令之后,类似于这种5:20.10.33-0raspbian-buster字样的就是当前可安装的docker的版本,比如说我现在想要安装20.10.3版本的docker,就可以执行
apt install docker-ce=5:20.10.3~3-0~raspbian-buster
2. Centos
1. 首先安装yum-utils用于管理repository
$ sudo yum install -y yum-utils
$ sudo yum-config-manager \
--add-repo \
https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
这里选择了阿里云的仓库,也可以考虑其他稳定的仓库。可通过以下命令查看仓库提供的版本:
$ yum list docker-ce --showduplicates | sort -r
安装最新或特定版本的docker-ce:
$ sudo yum install docker-ce docker-ce-cli containerd.io #直接安装最新版本
$ sudo yum install docker-ce-<VERSION_STRING> docker-ce-cli-<VERSION_STRING> containerd.io #安装指定版本
$ docker version #验证安装
3. Docker配置
由于国内墙的存在所以在使用docker的时候会导致有很多的image无法拉取,就是说你执行
docker pull xxxxx
经常会出现timeout的问题。解决这种问题的解决解决方案有很多,最简单粗暴的就是直接翻出去,还有一种做法就是使用国内的某些镜像加速的服务域名
1. Mac OSX的系统
由于Mac系统安装docker的方式和Linux不一样,homebrew早就不能用来安装docker了,而是直接去下载一个docker-ce的客户端,该客户端带一个dashboard,
点击setting的icon再点击Docker Engine出现了一段json,我们需要把镜像加速源写入json,例如这是我的配置
{
"features": {
"buildkit": true
},
"experimental": false,
"registry-mirrors": [
"https://xitwhgde.mirror.aliyuncs.com"
]
}
registry-mirrors对应的是一个字符串数组,数组的内容就是镜像的加速源的地址,可以填任意多个。
2. Linux系统
在linux系统中,在安装好Docker之后,在/etc/docker路径下面创建一个叫daemon.json的文件
vim daemon.json
{
"registry-mirrors":[
"https://xitwhgde.mirror.aliyuncs.com"
]
}
设置好需要重新启动dokcer,执行
systemctl restart docker
4. docker设置为开机自启
使用yum或者是apt安装的docker一般都会创建service文件,不过yum或者是apt并不会自动设置为开机自启,需要手动去设置,执行
systemctl enable docker
执行完之后开机自启docker的任务就会交给systemd。