docker(一) Centos7下安装docker
docker(二) windows10下安装docker
docker(三) 镜像和容器常用命令
docker(四) 使用Dockerfile构建镜像
docker(五) 使用Docker Registry搭建镜像私服
docker(六) 使用docker-maven-plugin插件构建docker镜像(已过时)
docker(七) 使用dockerfile-maven-plugin插件构建docker镜像
官方安装教程:
Ubuntu下安装docker: https://docs.docker.com/install/linux/docker-ce/ubuntu/
CentOS下安装docker:https://docs.docker.com/install/linux/docker-ce/centos/
Docker 提供了两个版本:社区版 (CE) 和企业版 (EE)。
Docker 社区版 (CE) 是开发人员和小型团队开始使用 Docker 并尝试使用基于容器的应用的理想之选。Docker CE 有两个更新渠道,即 stable 和 edge:
- Stable 每个季度为您提供可靠更新
- Edge 每个月为您提供新功能
Docker 企业版 (EE) 专为负责在生产环境中大规模构建、交付和运行业务关键型应用程序的企业开发和 IT 团队设计。企业版需要购买。
离线安装
官方下载地址:https://download.docker.com/
centos7版64位直达:https://download.docker.com/linux/centos/7/x86_64/stable/Packages/
ubuntu版64位直达:https://download.docker.com/linux/ubuntu/dists/xenial/pool/stable/amd64/ ,下载完后使用sudo dpkg -i xx.deb安装
说明:貌似直接从上面的路径下载的docker版本并不是最新的,至少windows是这样的。
离线安装的方式不用多言,下面重点介绍centos7下在线安装方式。
centos7下安装docker
请参考官方文档:获取适用于 CentOS 的 Docker CE
一、安装前准备
①Docker 的早期版本称为 docker 或 docker-engine。如果安装了这些版本,请卸载它们及关联的依赖资源。
sudo yum remove docker docker-common docker-selinux docker-engine
如果 yum 报告未安装任何这些软件包,这表示情况正常。将会保留 /var/lib/docker/ 的内容,包括镜像、容器、存储卷和网络。Docker CE 软件包现在称为 docker-ce。
②操作系统要求
如需安装 Docker CE,您需要 64 位版本的 CentOS 7。
二、安装docker
使用国内yum源
#备份系统自带的yum源
cd /etc/yum.repos.d/
mv CentOS-Base.repo CentOS-Base.repo.backup
#下载阿里源
wget http://mirrors.aliyun.com/repo/Centos-7.repo #生成缓存
yum makecache
设置镜像仓库
①安装依赖
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
②设置docker稳定版仓库
sudo yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
不要使用官方的仓库源。根本下载不动。
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
③可选:启用 edge 和 testing 镜像仓库。这些镜像仓库包含在上述 docker.repo 文件中,但默认情况下处于禁用状态。您可以将它们与 stable 镜像仓库一起启用。
sudo yum-config-manager --enable docker-ce-edge
sudo yum-config-manager --enable docker-ce-testing
安装 DOCKER CE
1.安装docker CE
①直接安装最新版
sudo yum install docker-ce
②在生产系统中,应该安装特定版本的 Docker CE,而不是使用最新版本。
列出可用版本
yum list docker-ce.x86_64 --showduplicates | sort -r
第二列为版本字符串,第三列为镜像仓库名称
选择一个特定版本进行安装。
sudo yum install docker-ce-<VERSION>
2.启动docker
sudo systemctl start docker
3.验证安装
验证是否正确安装了 docker,方法是运行 hello-world 镜像。此命令将下载一个测试镜像并在容器中运行它。
sudo docker run hello-world
容器运行时,它将输出一条参考消息并退出。
如果报错:Unable to find image 'hello-world:latest' locally。则打开代理吧!(我开了代理,也重试了两遍才执行成功。)
三、配置
参考官方文档:适用于 Linux 的安装后步骤
1.以非 root 用户身份管理 Docker
docker
守护进程绑定至 Unix 套接字,而不是 TCP 端口。默认情况下,该 Unix 套接字由用户 root
所有,而其他用户只能使用 sudo
访问它。docker
守护进程始终以 root
用户身份运行。
在使用 docker
命令时,如果您不想使用 sudo
,请创建名为 docker
的 Unix 组并向其中添加用户。docker
守护进程启动时,它将使 Unix 套接字的所有权可由 docker
组进行读取/写入。
如需创建 docker
组并添加您的用户,请执行下列操作:
#创建docker组
sudo groupadd docker
#向docker组中添加用户
sudo usermod -aG docker $USER 注销并重新登录,以便对您的组成员资格进行重新评估。
(如果在虚拟机上进行测试,可能必须重启此虚拟机才能使更改生效。在桌面 Linux 环境(例如,X Windows)中,彻底从您的会话中注销,然后重新登录。) #验证您是否可以在不使用sudo的情况下运行docker命令。
docker run hello-world
2.设置开机启动
sudo systemctl enable docker
3.修改默认的镜像仓库位置
Ubuntu 中的位置是:/etc/default/docker。CentOS中的位置是:/etc/sysconfig/docker。指定镜像和容器存放路径的参数是--graph=/var/lib/docker,我们只需要修改配置文件指定启动参数即可。
CentOS7的修改方法
# 关闭docker服务
systemctl stop docker.service # 移动数据。
mv /var/lib/docker 新路径 ----------------------------------------------------------
# 修改docker.service文件
vim /usr/lib/systemd/system/docker.service
# 添加使用-g参数
ExecStart=/usr/bin/dockerd --graph /new-path/docker
--------------------------------------------------------- # reload配置文件
systemctl daemon-reload # 重启docker
systemctl restart docker.service # 查看数据目录
docker info | grep Dir
Ubuntu修改方法
#关闭docker 服务
service docker stop #移动数据到新的目录
mv /var/lib/docker 新目录 #修改默认配置
vim /etc/default/docker
# 在配置文件最后一行追加下面配置即可
DOCKER_OPTS="-g /root/data/docker" #重启docker 服务
service docker start #查看数据目录
docker info | grep Dir
四、镜像加速
1.使用阿里云镜像加速
在国内通过docker官方的仓库进行下载镜像是比较慢,这个时候就需要使用加速器了。
在国内,阿里云、163都提供了docker仓库,但是阿里云还提供了加速功能。所以,我们选用阿里云的加速。163的仓库地址:https://c.163.com/hub#/m/home/
使用阿里云器,需要到阿里云进行注册,获取到自己专属的加速地址,当然也可以使用别人的加速地址(使用加速是无需登录的,所以可以公用)。
第一步,打开阿里云网站,点击控制台。
第二步,进行登录,如果没有账号就先注册个账号,登录成功后会跳转到控制台页面,找到容器服务。进入容器镜像服务,镜像加速器。按照提示来操作即可。
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://561my9m4.mirror.aliyuncs.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker
这样就配置好了镜像加速。
2.使用官方镜像加速
现在docker官方已经提供了Docker中国官方镜像加速,网址为:http://docker-cn.com/registry-mirror
配置过程跟上面一样。参考官方文档:Use case: the China registry mirror
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://registry.docker-cn.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker
五、卸载 Docker CE
1.卸载 Docker 软件包:
sudo yum remove docker-ce
主机上的镜像、容器、存储卷、或定制配置文件不会自动删除。如需删除所有镜像、容器和存储卷,请运行下列命令:
sudo rm -rf /var/lib/docker
您必须手动删除任何已编辑的配置文件。