1.启动容器 run
docker run IMAGE [COMMAND] [ARG...]
IMAGE 是指启动容器所使用的操作系统镜像
[COMMAND] [ARG...] 指的是容器启动后运行的命令及其参数
例如:
docker run ubuntu echo 'hello world'
2.启动交互式容器:
docker run -i -t IMAGE /bin/bash
在run命令中增加了两个参数 -i -t ,并在容器启动时运行bash命令
-i --interactive=true | fasle 默认是false
用来告诉docker守护进程为容器始终打开标准输入
-t --tty = true | false 默认是false
告诉docker要为创建的容器分配一个--tty终端,这样新创建的容器才能提供一个交互式的shell
3.查看容器状态 ps
docker ps [-a] [-l]
[-a] 列出所有的容器
docker ps -a
[-l] 列出最新创建的容器
docker ps -i
inspect命令: 查看 id为ffccbc3188b1 的容器详细配置
docker inspect ffccbc3188b1
自定义容器名: --name
#创建容器名为container01的容器
docker run --name=container01 -i -t ubuntu /bin/bash
#这时可以查看到创建的容器中有container01
docker ps -a
#想要查看详细配置就可以直接输入自定义的名字container01
docker inspect container01
4.重启、停止容器
重启容器 start
docker start [-i] 容器名
eg: docker start -i container01
停止容器 exit
exit
删除停止的容器 rm
docker rm 容器名
eg: docker rm container01
5.守护式容器
(1)以守护形式运行容器 Ctrl + P Ctrl + Q
#启动交互式容器
docker run -i -t IMAGE /bin/bash
#退出交互式容器的bash,这样容器就会在后台运行
Ctrl + P Ctrl + Q
(2)附加到运行的容器(进入刚刚退出的容器) attach
注意:容器名既可以是CONTAINER ID的名字,也可以是NAMES的名字
docker attach 容器名
(3)启动守护式容器: -d
-d 是指以后台的形式运行命令
docker run -d 镜像名 [COMMAND] [ARG...]
#指定容器名为ac1 循环执行命令,间隔时间为一秒
docker run --name ac1 -d ubuntu /bin/sh -c "while true; do echo hello world; sheep 1; done"
(4)查看容器日志 logs
docker logs [-f] [-t] [--tail] 容器名
eg: 0指的是显示最新的日志
docker logs -tf --tail 0 ac1
-f --follows=true | false 默认为false,告诉logs命令一直跟踪日志的变化并返回结果
-t --timestamps=true | false 默认为false,在返回的结果上加上时间戳
--tail = "all" 是选择返回结尾处多少数量的日志,如果不指定的话就返回所有的日志
(5)查看容器内进程 top
#查看哪些容器正在运行
docker ps
#查看ac1容器的进程情况
docker top ac1
(6)在运行中的容器内启动新进程 exec
docker exec [-d] [-i] [-t] 容器名 [COMMAND] [ARG...]
eg:
docker exec -i -t ac1 /bin/bash
(7)停止守护式容器 stop kill
stop 会给容器发送一个信号,等待容器的停止
kill 直接停止容器
容器停止后,都会返回容器名
docker stop 容器名
docker kill 容器名