查看容器
查看正在运行的容器
docker ps
个列意义:
参数名称 | 参数意义 |
---|---|
CONTAINER ID | 容器id |
IMAGE | 创建容器时所使用的镜像 |
COMMAND | 运行容器中的软件执行的命令 |
CREATED | 容器的创建时间 |
STATUS | 容器的状态: UP 表示运行状态 Exited 表示关闭状态 |
PORTS | 宿主机端口和容器中软件的端口的对应关系 |
NAMES | 容器的名称 |
查看所有的容器(包含了正在运行的容器以及之前启动过的容器)
docker ps -a
查看最后一次运行的容器
docker ps -l
查看停止的容器
docker ps -f status=exited
容器创建
命令:
docker run
参数:
在创建容器的时候我需要使用一下参数.其中常用到的参数如下:
参数名称 | 参数意义 |
---|---|
-i | 运行容器 |
-t | 表示容器启动后会进入其命令行。加入这两个参数后,容器创建就能登录进去。即分配一个伪终端。 |
-d | 在 run 后面加上-d 参数,则会创建一个守护式容器在后台运行(这样创建容器后不会自动登录容器,如果只加-i -t 两个参数,创建后就会自动进去容器) |
–name | –name 为创建的容器命名 |
-v | 表示目录映射关系(前者是宿主机目录,后者是映射到宿主机上的目录),可以使用多个-v 做多个目录或文件映射。注意:最好做目录映射,在宿主机上做修改,然后共享到容器上 |
-p | 表示端口映射,前者是宿主机端口,后者是容器内的映射端口。可以使用多个-p 做多个端口映射 |
创建容器大致氛围两类:
交互式容器 和 守护式容器
创建交互式容器
docker run -it --name=mjw_tomcat -p 8888:8080 -v /usr/local/webapps/:/usr/local/tomcat/webapps tomcat
run:创建容器
-i -t (如上参数说明)
–name 指定容器名称
-p : 指定端口映射 8888 是我宿主机器端口,映射到tomcat8080端口
-v: 指定目录映射 前面是我宿主机的目录,映射到tomcat项目目录
tomcat: 指定镜像
注:-v这里为文件挂载,后面的文章会有提到 https://mp.youkuaiyun.com/mdeditor/83687872#
访问宿主机的8888 端口
当Crtl C 退出后,容器即关闭,tomcat将无法访问,这就是交互式容器的特点: 当我们推出容器以后,容器就关闭了。
创建守护式容器
docker run -di --name=mjw_tomcat2 -p 8088:8080 -v /usr/local/webapps/:/usr/local/tomcat/webapps tomcat
这次创建 ,命令行窗口并未进入到docker容器中,访问宿主机8088 一样可以访问到tomcat。
注: 注意 name不可以重复,刚才已经使用了mjw_tomcat 所以这次要更改一个name
进入守护式容器
守护式容器不像交互式创建后进入容器中,可执行命令。那么怎么进入容器内进行操作呢。
docker exec -it 容器name (或容器id) /bin/bash
使用exit 命令即可退出容器内命令行。退出后容器依然处于运行状态。
容器启动、停止
##容器启动
docker start $CONTAINER_NAME/ID
##容器停止
docker stop $CONTAINER_NAME/ID
容器删除
## 删除单个容器
docker rm $CONTAINER_ID/NAME
##删除所有的容器
docker rm `docker ps -a -q`
注:只能删除关闭的容器