Centos7上安装docker
Centos7上安装dockerDocker从1.13版本之后采用时间线的方式作为版本号,分为社区版CE和企业版EE。社区版是免费提供给个人开发者和小型团体使用的,企业版会提供额外的收费服务,比如经过官方测试认证过的基础设施、容器、插件等。社区版按照stable和edge两种方式发布,每个季度更新stable版本,如17.06,17.09;每个月份更新edge版本,如17.09,17....
Centos7上安装docker
Docker从1.13版本之后采用时间线的方式作为版本号,分为社区版CE和企业版EE。
社区版是免费提供给个人开发者和小型团体使用的,企业版会提供额外的收费服务,比如经过官方测试认证过的基础设施、容器、插件等。
社区版按照stable和edge两种方式发布,每个季度更新stable版本,如17.06,17.09;每个月份更新edge版本,如17.09,17.10。
一、安装docker
1、Docker 要求 CentOS 系统的内核版本高于 3.10 ,查看本页面的前提条件来验证你的CentOS 版本是否支持 Docker 。
通过 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 <FQPN> # 例如:sudo yum install docker-ce-17.12.0.ce

8、启动并加入开机启动
$ sudo systemctl start docker
$ sudo systemctl enable docker
9、验证安装是否成功(有client和service两部分表示docker安装启动都成功了)
$ docker version

二、问题
1、因为之前已经安装过旧版本的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
2、卸载旧版本的包
$ sudo yum erase docker-common-2:1.12.6-68.gitec8512b.el7.centos.x86_64

3、再次安装docker
$ sudo yum install docker-ce
Docker 国内镜像的配置及使用
三、docker国内镜像的配置和使用
1、注册并登陆阿里云开发者平台,阿里云 - 开发者平台:https://dev.aliyun.com/
2、注册登陆之后,点击 “创建我的容器镜像” ,然后就会来到阿里云的服务面板,点击 “镜像加速器”。(根据提示输入Docker登录时需要使用的密码(后期可更改),用户名就是登录阿里云的用户名。)

在出现的页面中,可以得到一个专属的镜像加速地址,类似于“https://1234abcd.mirror.aliyuncs.com”。
根据页面中的“操作文档”信息,配置自己的Docker加速器。
3、针对Docker客户端版本大于1.10.0的用户,可以通过修改daemon配置文件 /etc/docker/daemon.json 来使用加速器
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://123456abcd.mirror.aliyuncs.com"]
}
EOF
或
{
"registry-mirrors": [
"https://registry.docker-cn.com"
]
}
4、重启docker daemon
$ sudo systemctl daemon-reload
$ sudo systemctl restart docker
docker 运行nginx并进入容器内部、端口映射
四、docker运行容器
1、从网易蜂巢镜像仓库下载nginx镜像 ;
2、拉取镜像到本地,并查看本地的镜像:
$ docker pull hub.c.163.com/library/node:latest
$ docker images

3、运行容器
命令格式:
docker run [option] IMAGE [COMMOND] [ARG...]
例如:
docker run -d --name nginx1.0 hub.c.163.com/library/nginx # -d: 后台启动容器; --name:容器的别名,默认为随机的
容器的操作:
docker ps # 查看正在运行的容器
docker ps -a # 查看所有容器
docker ps -l # 查看最近一次运行的容器
docker create 容器名或者容器ID # 创建容器
docker start [-i] 容器名 # 启动容器
docker run 容器名或者容器ID # 运行容器,相当于docker create + docker start
docker attach 容器名或者容器ID bash # 进入容器的命令行(退出容器后容器会停止)
docker exec -it 容器名或者容器ID bash # 进入容器的命令行
docker stop 容器名 # 停止容器
docker rm 容器名 # 删除容器
docker top 容器名 # 查看WEB应用程序容器的进程
docker inspect 容器名 # 查看Docker的底层信息
4、进入容器内部:
$ docker exec -it nginx1.0 bash

五、docker 网络
linux使用namespace来进行资源的隔离 ,docker的隔离性;
1、docker的网路类型分为:
Bridge模式:桥接(默认的模式)
host模式:容器将不会获得独立的network namespace,将和主机公用一个;即在docker中使用网络和主机上一样的;
None:不与外界任何东西进行通讯
2、采用Bridge的时候需要和主机通讯,就需要使用端口映射;

3、端口映射
$ docker run -d --name nginx1.1 -p 8080:80 hub.c.163.com/library/nginx # 主机的8080端口映射到容器中的80端口
分类: docker
更多推荐



所有评论(0)