Docker教程(二) Docker环境安装
1 Docker环境安装
1.1 相关下载
在CentOS环境下安装Docker,所以需要我们先安装VMware虚拟机和CentOS操系统,作为学习Docker的基础环境。有关安装VMware虚拟机和安装CentOS操作系统见如下链接:
1、VMware安装Linux教程,参见:http://blog.csdn.net/yuan_xw/article/details/49827477
2、Linux网络配置与远程连接:http://blog.csdn.net/yuan_xw/article/details/49945007
1.2 安装docker
1、在CentOS 7操作系统下yum安装:
执行命令:yum install -y docker
2、查看帮助命令:
执行命令:docker –help
3、启动 docker服务,并将其设置为开机启动:
执行命令:
systemctl start docker.service
systemctl enable docker.service
1.3 docker操作
1、查找镜像:
执行命令:docker search centos
2、下载镜像
执行命令:docker pull centos
3、查看下载镜像
执行命令:docker images
4、删除镜像
执行命令:docker rmi d4f259423416
5、运行镜像
输入Hello world,执行命令:docker run centos /bin/echo 'Hello world'
6、监控docker进程
列出所有运行中容器包括停止的,执行命令:docker ps –a
7、进入容器
执行命令:docker run --name mycentos -it centos /bin/bash
run表示:运行容器
--name表示:给运行的容器定义名称
-it表示:其中i表示:让输入终端表示打开的状态,其中t表示:开启一个伪终端TTY(TTY是电传打字机Teletypewriter的缩写,显示屏的视频终端出现之前,TTY是最流行的终端设备),绑定到标准输入上。
8、yum在线安装命令
在docker容器中使用yum安装ip命令,执行命令:yum install net-tools
9、exit退出
在容器中执行exit退出命令。表示在容器的生命周期就结束了。执行命令:exit。
在容器中查看列出所有运行中容器包括停止的,执行命令:docker ps–a
10、删除容器
如果容器在运行,需要把容器进行停止后再进行删除,或者强制删除。
停止容器,执行命令:docker stop<容器编号>
删除容器,执行命令:docker rm<容器编号>
强制删除容器,执行命令:docker rmf <容器编号>
11、容器后台运行
执行命令:docker run -d --name mynginx nginx
-d表示:后台运行
-name表示:自定义名称
nginx表示:查看本地有没有nginx镜像,如果存在则使用本地镜像,如果不存在则执行dockerpull nginx命令,从网上下载到本地再执行。
12、进入后台运行的容器
从util-linux版本2.23开始,nsenter工具就包含在其中。它用来访问另一个进程的名字空间。nsenter要正常工作需要有root权限。
如果nsenter命令不存在,需要进行安装,执行命令:yum install -y util-linux
在使用nsenter命令之前需要获取到docker容器的进程,然后再使用nsenter工具进去到docker容器中
执行命令:docker inspect -f {{.State.Pid}}容器名或者容器id
执行命令:nsenter --target上面查到的进程id --mount--uts --ipc --net –pid
解释nsenter指令中进程id之后的参数的含义:
* –mount参数是进去到mount namespace中
* –uts参数是进入到uts namespace中
* –ipc参数是进入到System V IPC namaspace中
* –net参数是进入到network namespace中
* –pid参数是进入到pid namespace中
* –user参数是进入到user namespace中
13、编写shell文件
执行命令:vim /usr/local/start.sh
复制如下内容:
#!/bin/bash
cName=$1
cPid=$(docker inspect -f "{{.State.Pid}}" $cName)
nsenter --target "$cPid" --mount --uts --ipc --net –pid
设置可执行权命令,执行命令:chmod +x start.sh
14、使用第三方仓库镜像
执行命令:docker run-d --name mynginx2 hub.c.163.com/library/nginx:latest
15、使用start.sh脚本
执行命令:./start.sh mynginx2
——厚积薄发(yuanxw)