Docker
环境linux centos7
Docker就是一个资源之间隔离的容器。
术名:
Docker主机:安装了Docker的机器
Docker镜像:打包好的文件
Docker容器:软件运行起来就是一个容器
Docker仓库:放置Docker镜像的仓库
Docker客户端:用来操作Docker的软件
centos7 下安装docker过程
1,Docker 要求 CentOS 系统的内核版本高于 3.10 ,查看本页面的前提条件来验证你的CentOS 版本是否支持 Docker
2,通过 uname -r 命令查看你当前的内核版本
uname -r
2,使用 root 权限登录 Centos。确保 yum 包更新到最新。
sudo yum update
3、卸载旧版本(如果安装过旧版本的话)
sudo yum remove docker docker-common docker-selinux docker-engine
4,安装需要的软件包, yum-util 提供yum-config-manager功能,另外两个是devicemapper驱动依赖的
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
5,设置yum源
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
6,可以查看所有仓库中所有docker版本,并选择特定版本安装
yum list docker-ce --showduplicates | sort -r
7、安装docker
sudo yum install docker-ce #由于repo中默认只开启stable仓库,故这里安装的是最新稳定版17.12.0
sudo yum install <FN> # 例如:sudo yum install docker-ce-17.12.0.ce
8、启动并加入开机启动
sudo systemctl start docker
sudo systemctl enable docker
9、验证安装是否成功(有client和service两部分表示docker安装启动都成功了)
docker version
10,可能遇到的问题
因为之前已经安装过旧版本的docker,在安装的时候报错如下
Transaction check error:
file /usr/bin/docker from install of docker-ce-17.12.0.ce-1.el7.centos.x86_64 conflicts with file from package docker-common-2:1.12.6-68.gitec8512b.el7.centos.x86_64
file /usr/bin/docker-containerd from install of docker-ce-17.12.0.ce-1.el7.centos.x86_64 conflicts with file from package docker-common-2:1.12.6-68.gitec8512b.el7.centos.x86_64
file /usr/bin/docker-containerd-shim from install of docker-ce-17.12.0.ce-1.el7.centos.x86_64 conflicts with file from package docker-common-2:1.12.6-68.gitec8512b.el7.centos.x86_64
file /usr/bin/dockerd from install of docker-ce-17.12.0.ce-1.el7.centos.x86_64 conflicts with file from package docker-common-2:1.12.6-68.gitec8512b.el7.centos.x86_64
卸载旧版本的包
sudo yum erase docker-common-2:1.12.6-68.gitec8512b.el7.centos.x86_64
再安装新版本的docker
yum install docker-ce
2,常用命令
systmctl start docker启动docker
docker search +镜像名
docker pull 扒取镜像文件
docker images 查看当前拥有的镜像
docker run --name + 自己起一个软件名字 -d(表示后台运行)+ 名字
docker ps 查看当前运行的docker
docker stop +名字 /id 停止容器
docker rm+容器id 删除容器
-p port :port 端口映射(将主机端口映射到容器端口)
3, 解决docker pull 速度慢问题
将docker镜像源修改为国内的:
在 /etc/docker/daemon.json 文件中添加以下参数(没有该文件则新建):
{
“registry-mirrors”: [“https://9cpn8tt6.mirror.aliyuncs.com”]
}
服务重启:
systemctl daemon-reload
systemctl restart docker
使用示例:安装mysql—docker
docker search
docker pull
docker run -p 3306:3306 -e MYSQL_ROOT_PASSWORD=12345 -d mysql