- 为RHEL7和Centos7上安装epel源和docker源以及安装和检查
- 命令安装
yum -y install epel-release
- 手动安装
wget http://dl.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-10.noarch.rpm
rpm -vih epel-release-7-2.noarch.rpm
或者
rpm -vih http://dl.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-10.noarch.rpm
- 修改yum原
vim /etc/yum.repos.d/docker.repo, 加入以下内容:
[dockerrepo]
name=Docker Repository
baseurl=http://yum.dockerproject.org/repo/main/centos/7/
enabled=1
gpgcheck=0
- disable系统环境中的selinux和打开路由转发功能
sed -i 's/enabled/disabled' /etc/selinux/config
echo 1 > /proc/sys/net/ipv4/ip_forward
- 安装docker软件包和启动docker并检查安装是否成功
yum install docker-engine -y
systemctl start docker
systemctl enable docker
docker version #可查看docker版本信息则安装成功
docker info #查看Docker 中容器总体状况
- Ubuntu16安装docker
wget -qO- https://get.docker.com/ | sh
- 常用的docker相关的命令
1 docker search centos #docker hub中搜索符合条件的镜像
3 docker pull centos #从docker hub上拉取centos最新镜像, 也可用 docker load -i XXX.tar
5 docker images #列出本地所有docker镜像
7 docker ps #列出正在运行的容器
9 docker ps -a #列出所有容器,包含未在运行的
11 docker stop containerID #停止运行容器, 相应的: start、restart、kill、rm、rm -f
13 docker run -ti centos /bin/bash #运行centos镜像
15 -d 后台运行 docker run -d -ti centos /bin/bash
17 -p 端口设置
18 docker save imageName > XXX.tar #镜像转换为文件
19 docker load < XXX.tar #文件转换为镜像
20 docker export containerID > XXX.tar #容器转换为文件
- 制作docker镜像
1 本例中在原生centos镜像中安装httpd服务,容器中的80端口映射到宿主机的9000端口。
2
3 方法一: 使用docker commit
5 docker commit containerID 新镜像名称
6
7 方法二: 使用Dockerfile
9 Dockerfile类似于C中的Makefile文件,Dockerfile内部书写用户的操作。
11 mkdir docker-build
13 cd docker-bild
15 touch Dockerfile
17 Dockerfile中写入以下内容:
18
19 FROM centos
21 MAINTAINER **** ****@163.com22
23 RUN yum install httpd -y
25 ADD start.sh /usr/local/bin/start.sh
27 ADD test.html /var/www/html/test.html
28
29 解释: FROM : 镜像名称
30
31 MAINTAINER : 作者 <作者邮箱>
32
33 RUN : 要在容器上执行的命令
34
35 ADD : 将docker-build中指定文件加到容器中指定位置
36
37 echo "/usr/sbin/httpd -DFOREGROUND" > start.sh #用于容器中启动httpd服务
39 echo "hello docker" > test.html #测试网页
41 docker build -t centos:httpd . #创建新的镜像。
43 docker run -ti centos:httpd /bin/bash #运行刚刚新建的镜像
45 docker ps #宿主机中查看docker端口是否映射成功
47 curl http:127.0.0.1:9000/test.html #宿主机中验容器中httpd是否可以正常访问
- 本地发布新制作的centos:httpd镜像
docker save -o centos-httpd.tar centos:httpd #同样可以发布到docker hub上。
转载于:https://www.cnblogs.com/guanqingye/p/7290252.html