Docker Engine的基本结构
Docker Machine的基本结构:通过客户端(Client)管理主机(Server)
version
:查看版本help
:查看帮助create
/rm
:创建/删除一个Docker Machinestart
/stop
/restart
/kill
:启动/停止Docker Machineactive
/config
/env
/inspect
/ip
/ls
/status
/url
:获取相应信息ssh
:远程登录Docker machinescp
:本机与machine或machine之间传输文件docker-machine ls
docker-machine create --driver virtualbox cloudcomb
:在指定的virtualbox(虚拟硬件)上创建cloudcomb(Machine)ls
查看,cloudcomb创建成功docker-machine env cloudcomb
:四个环境变量(通信是否基于TLS,远程Docker的Host与Port,认证证书与路径,docker-machine的名称)eval $(docker-machine env cloudcomb)
:把cloudcomb的环境变量配置到shell,即上图的最后一行。docker run hub.c.163.com/library/busybox:latest echo hello world
:运行指定Docker容器(网易蜂巢镜像中心的busybox容器
),验证docker-machine是否正常工作,并echo打印字符串
。docker-machine rm cloudcomb
:删除指定Machine。ls
查看,是否删除成功docker pull
:拉取镜像,类似下载。
docker pull hub.c.163.com/library/nginx:latest
:拉取指定地址的镜像docker images
:查看现有镜像
docker run
:
eval $(docker-machine env cloudcomb)
docker run -p 8080:80 --name nginx_web -it hub.c.163.com/library/nginx /bin/bash
:启动docker
-it
:进入指定docker-p
:容器对于宿主机的映射,宿主机的Port
映射为容器的Port
(本机的8080端口 映射到 Docker的80端口,Nginx默认端口为80)在容器内运行Nginx
查看进程:ps aux
尝试访问http://192.168.99.102:8080/
192.168.99.102
:cloudcomb(docker-machine)的Host(docker-machine env
查看)8080
:宿主机的Port(docker run
指定)登出cloundcomb docker环境(但不停止Docker):先ctrl+p
,后ctrl+q
在指定容器中打开交互模式的终端:docker exec -it nginx_web /bin/bash
查看当前运行的容器信息:docker ps -a
列出指定容器内正在运行的进程:docker top nginx_web
列出容器内端口地图:docker port nginx_web
停止指定容器:docker stop 8cc
,8cc
是前缀,防止误删。http://192.168.99.102:8080/
将不可访问。
删除指定容器:docker rm 8cc
再次查看:docker ps -a
,确保已删除
无后缀名:
内容:
FROM hub.c.163.com/library/nginx #以此镜像为基础 RUN echo “Hello Nginx on Docker” > /usr/share/nginx/html/index.html #把文本写入html网页 EXPOSE 80 #暴露80端口 #CMD ’nginx’ #注释
/Users/jayli/Desktop/Nginx/Dockerfile
docker build -t couldcomb/nginx:1.0 /Users/jayli/Desktop/Nginx
:创建couldcomb的nginx版本为1.0,自动执行Nginx文件夹下的Dockerfile。
查看镜像
运行Docker
docker run -p 8081:80 --name test_nginx -it couldcomb/nginx:1.0 /bin/bash