安装前依赖
添加仓库源和依赖,执行命令如下
$ sudo apt install -y apt-transport-https ca-certificates curl gnupg lsb-release software-properties-common
$ curl -fsSL https://mirrors.ustc.edu.cn/docker-ce/linux/ubuntu/gpg | sudo apt-key add -
$ sudo add-apt-repository "deb [arch=amd64] https://mirrors.ustc.edu.cn/docker-ce/linux/ubuntu $(lsb_release -cs) stable"$ sudo apt install -y apt-transport-https ca-certificates curl gnupg lsb-release software-properties-common
$ curl -fsSL https://mirrors.ustc.edu.cn/docker-ce/linux/ubuntu/gpg | sudo apt-key add -
$ sudo add-apt-repository "deb [arch=amd64] https://mirrors.ustc.edu.cn/docker-ce/linux/ubuntu $(lsb_release -cs) stable"安装
$ sudo apt-get update
$ sudo apt-get install -y docker-ce docker-ce-cli containerd.io docker-compose-plugin$ sudo apt-get update
$ sudo apt-get install -y docker-ce docker-ce-cli containerd.io docker-compose-plugin配置docker非root非sudo用户操作
把当前非root用户添加到docker用户组,执行如下
$ sudo groupadd docker
$ sudo gpasswd -a ${USER} docker$ sudo groupadd docker
$ sudo gpasswd -a ${USER} docker由于当前终端shell还保留着旧用户信息 现在新开一个终端执行命令验证是否可以非sudo操作
$ docker info$ docker info如果报错如下,重启机器即可
Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sockGot permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock修改docker镜像源
镜像源地址推荐
阿里云
https://registry.cn-hangzhou.aliyuncs.com如果有账号的, 使用[系统分配前缀].mirror.aliyuncs.com腾讯云
https://mirror.ccs.tencentyun.comdocker中国https://registry.docker-cn.com网易
http://hub-mirror.c.163.com中科大
https://docker.mirrors.ustc.edu.cn
编辑/etc/docker/daemon.json写入如下内容
{
"registry-mirrors": [
"https://docker.mirrors.ustc.edu.cn",
"http://hub-mirror.c.163.com"]
}{
"registry-mirrors": [
"https://docker.mirrors.ustc.edu.cn",
"http://hub-mirror.c.163.com"]
}修改完成之后执行如下命令,重启服务
$ sudo systemctl restart docker$ sudo systemctl restart docker查看修改镜像是否成功
$ docker info
#输出信息包含如下
...
Registry Mirrors:
https://docker.mirrors.ustc.edu.cn/
http://hub-mirror.c.163.com/
....$ docker info
#输出信息包含如下
...
Registry Mirrors:
https://docker.mirrors.ustc.edu.cn/
http://hub-mirror.c.163.com/
....目前的docker-compose可以作为docker的sub command调用,这个也是目前推荐的方式 编辑一个compose.yaml文件
yaml
services:
redis:
image: redis
ports:
- 6379:6379
restart: alwaysservices:
redis:
image: redis
ports:
- 6379:6379
restart: always在compose.yaml文件同级路径执行命令验证之前步骤是否正确
$ docker compose version
$ docker compose up -d
$ docker compose ps
$ docker compose down$ docker compose version
$ docker compose up -d
$ docker compose ps
$ docker compose down命令兼容
由于很多人之前接触的是1.**版本的docker-compose,命令也习惯使用docker-compose up这样的,而不是docker compose up,所以为了与旧版本兼容
$ sudo ln -s /usr/libexec/docker/cli-plugins/docker-compose /usr/bin/docker-compose$ sudo ln -s /usr/libexec/docker/cli-plugins/docker-compose /usr/bin/docker-compose现在可以执行两种风格的compose命令了