赞
踩
1.使用search搜索镜像(以centos为例)
命令:docker search centos
2.然后使用pull命令下载一个镜像
命令:docker pull centos
我们执行docker images命令来看一下
命令:docker images
标题中:REPOSITORY是指镜像仓库 TAG是指版本(latest:最新的) IMAGE ID是指镜像ID号 CREATED是指创建的时间 SIZE是指内存大小
注意:还有一组命令 itd it
itd:是放在后台运行
it:是直接使用,一旦退出,容器自动关闭
前面说过容器是基于镜像启动的,镜像是启动容器的核心
现在docker里并没有容器可以使用ps命令查看容器列表
命令:docker ps
1.–name:自定义容器名,不指定时,docker 会自动生成一个名称
2.-d:表示后台运行容器
3.image-name:指定运行的镜像名称以及 Tag
现在启动Centos
命令:docker run -itd --name="Centos" centos /bin/bash
现在就是启动成功,下面一长串字母数字是容器的ID号,然后用ps命令查看一下容器列表
1.CONTAINER ID:容器 di
2.IMAGE:镜像名称:Tag
3.COMMAND:命令
4.CREATES:容器创建的时刻
5.STATUS:容器当前的状态 (up 表示运行、Exited 表示停止运行)
6.PORTS:镜像程序使用的端口号和协议
在使用 -d 参数时,容器启动后会进入后台。此时想要进入容器,可以通过以下指令进入:
docker attach
docker exec:推荐大家使用 docker exec 命令,因为此退出容器终端,不会导致容器的停止。
attach 命令
下面演示了使用 docker attach 命令。
docker attach 1e560fca3906
注意: 如果从这个容器退出,会导致容器的停止。
下面演示了使用 docker exec 命令。
docker exec -it 243c32535da7 /bin/bash
注意: 如果从这个容器退出,不会导致容器的停止,这就是为什么推荐大家使用 docker exec 的原因。
更多参数说明请使用 docker exec --help 命令查看。
导出容器
如果要导出本地某个容器,可以使用 docker export 命令。
docker export 1e560fca3906 > ubuntu.tar
导出容器 1e560fca3906 快照到本地文件 ubuntu.tar。
这样将导出容器快照到本地文件。
导入容器快照
可以使用 docker import 从容器快照文件中再导入为镜像,以下实例将快照文件 ubuntu.tar 导入到镜像 test/ubuntu:v1:
此外,也可以通过指定 URL 或者某个目录来导入,例如:
docker import http://example.com/exampleimage.tgz example/imagerepo
docker的导出:docker export 容器ID >文件名
可以将任何一个容器从一台机器迁移到另外一台,而且不论容器是否处于运行还是停止状态
例如将正在运行的lamp容器导出
然后就可以拷贝这个文件到另外一台机器上了,当然拷贝完成后还要导入进去不然怎么运行
docker 导入:cat 文件名 | docker import - 生产的镜像名称:标签
例如把刚刚导出的在导入进去
使用 docker stop container-name/container-id 命令进行停止容器运行,指定容器名或者容器 id 也可以的
命令:docker stop d84b51c18ecf
ps的意思是:查看当前运行的容器
ps -a的意思是:所有容器都要显示出来,不管有没有运行的还是没运行的
ps -q的意思是:只显示运行的容器
使用 docker start container-name/container-id 命令启动停止运行的容器,同理可以根据 容器名或者 容器 id 进行启动
命令:docker start d84b51c18ecf
使用 docker rm container-id 命令 删除容器,删除容器前,必须先停止容器运行,根据 容器 id 进行删除
rm 参数是删除容器,rmi 参数是删除镜像
镜像运行在容器中,docker 中可以运行多个互不干扰的容器,可以将同一个镜像在多个容器中进行运行
命令: docker stop d84b51c18ecf docker rm Centos
ps:关闭或删除容器,使用容器名字或ID都可以
执行删除容器命令
查看容器列表发现Centos容器没有了
使用:docker run --name container-name:tag -d -p 服务器端口:Docker 端口 image-name
1.–name:自定义容器名,不指定时,docker 会自动生成一个名称
2.-d:表示后台运行容器
3.image-name:指定运行的镜像名称以及 Tag
4.-p 表示进行服务器与 Docker 容器的端口映射,默认情况下容器中镜像占用的端口是 Docker 容器中的端口与外界是隔绝的,必须进行端口映射才能访问
现在先利用iptables开放两个端口
命令:iptables -A INPUT -p tcp --dport 8080 -j ACCEPT
命令:iptables -A INPUT -p tcp --dport 8090 -j ACCEPT
命令:iptables -L -n #查看防火墙规则
然后 运行了 两个容器,容器名称分别指定为 “Tomcat1”、“Tomcat”、两个容器中都是同一个 tomcat:latest镜像
两个容器都指定了端口映射,分别是8080、8090 ,都会转发到 Docker 容器内部
命令:docker run --name Ttomcat1 -d -p 8080:8080 tomcat:lates
命令:docker run --name Ttomcat -d -p 8090:8080 tomcat:latest
启动成功之后,ip addr show 查一下服务器 ip 地址(192.168.175.102),然后就能从物理机上访问了
命令:ip addr show
物理机访问192.168.175.102:8080
物理机访问192.168.175.102:8090
使用 docker logs container-name/container-id 命令 可以查看容器日志信息,指定容器名或者容器id就可以了
命令:docker logs Ttomcat
#把容器启动之后就可以查看日志信息
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。