docker常用命令
docker load参数说明:
-i,--input 导入镜像
docker run参数说明:
--name [name] 为容器指定一个名称
-d, --detach=false 后台运行容器,并返回容器ID
-p, --publish [虚拟机端口]:[容器端口] 虚拟机的端口,映射为container的端口,比如:80:80,8080:80
--add-host [host]:[ip] 添加host到ip的映射(host:ip), 比如:m1.baidu.com:10.10.10.10
-v, --volume [宿主机目录]:[镜像目录] 把宿主机上的目录挂载到镜像目录,比如:/soft:/data
docker exec -it [容器名] bash 进入bash命令
docker version
docker info
docker images 查看运行的docker
docker restart [容器id/name] 重启容器
docker ps -a 查看终止状态的容器
docker start [容器id/name] 启动容器
docker stop [容器id/name] 关闭容器
docker rm [容器id/name] 删除容器
查看
Docker ps
主要有些参数要说一下
1. 不加参数,表示查看当前正在运行的容器
2. -a,查看所有容器包括停止状态的容器
3. -l,查看最新创建的容器
4. -n=x,查看最后创建的x个容器
列一下docker ps的结果
Container ID IMAGE COMMAND CREATED STATUS PORTS NAMES
这些分别代表什么
CONTAINER ID:容器ID,唯一标识容器
IMAGE:创建容器时所用的镜像
COMMAND:在容器最后运行的命令
CREATED:容器创建的时间
STATUS:容器的状态(你会看到UPXXX,表示运行状态)
PORTS:对外开放的端口号
NAMES:容器名(也具有唯一性,docker是不允许创建容器名相同的容器的)
启动
我们在用docker ps -a
的时候会看见一些容器的状态是CREATED的,这里就需要我们用docker start 容器名或容器ID
来启动容器。但是需要注意,用这个命令后,容器进入运行状态,当容器完成任务后,会自己退出,进入停止状态。如果需要再次启动start命令
这里提一个参数,能够让容器在退出后能够自动重启 --restart
这个参数会检查容器的退出码,并据此来决定是否要重启容器。
这个例子大家不要轻易尝试,这样会不停的输出hello world,用ctrl+C都没有停掉这个(这里过后好好想想为什么没有停掉?????????)
最后我开了另一个终端输入了 docker stop docker_restart
才终止了容器
终止
在上面也说了一下命令是 docker stop 容器名或容器ID
而这个docker stop命令是给容器进程发送一个SIGTERM信号(可捕捉),默认行为是容器退出。
如果要强行停止一个容器的话,最好用docker kill
命令
它是发送一个SIGKILL信号(不可捕捉)
删除
我们不能删除一个正在运行的容器,必须先docker stop
或者docker kill
后我们才能删除
命令:docker rm 容器名
当然如果我们加-f这个参数我们也是可以删除一个正在运行的容器的
如何一次删除所有容器docker没有给相关命令,但是我们可以这样
-q
是只列出容器ID