(要现在本地安装docker,然后将项目打包成镜像,推到docker容器中)

启动停止重启命令

通过docker stop可以停止运行的容器,容器在docker host中实际上是一个进程,如果想快速停止容器,可使用docker kill命令。

对于处于停止状态的容器,可以通过docker start重新启动。
docker start会保留容器的第一次启动的所有参数。即如果你是通过docker run -d以守护进程的形式启动容器,你stop后start容器,容器还是会以守护进程的形式运行。

docker restart可以重启容器,期作用就是依次执行docker stop和docker start。

容器可能会因某种错误而停止运行。对于服务类容器,我们通常希望在这种情况下容器能够自动重启。启动容器时设置–restart就可以达到这个效果。
–restart=always,意味着无论容器因何种原因退出(包括正常退出),都立即重启,该参数的形式还可以是–restart=on-failure:3,意思是如果启动进程退出代码非0,则重启容器,最多重启3次。

 

 

 

 

两种进入容器的方法

我们经常需要进入到容器里去做一些工作,比如查看日志、调试、启动其他进程等。有两种方法进入容器:
1,docker attach
通过docker attach可以attach到容器启动命令的终端

2,docker exec
通过docker exec进入相同的容器,-it指定以交模式打开,执行exit退出容器,回到docker host

3,attach和exec的区别:

    attach直接进入容器启动命令的终端,不会启动新的进程。
    exec则是在容器中打开新的终端,并且可以 启动新的进程。
    如果想直接在终端查看启动命令的输出,用attach,其他情况使用exec。
    如果只是为了查看启动命令的输出,可以使用docker logs命令。
 

 

暂停容器

有时我们只是希望让容器暂停工作一段时间,比如要对容器的文件系统打个快照,或者docker host需要使用CPU,这是执行docker pause。

处于暂停状态的容器不会占用CPU资源,直接通过docker unpause恢复运行。

 

 

 

删除容器

使用docker一段时间后,host上可能会有大量已经退出了的容器(可以通过docker ps -a查看正在运行或已经停止的容器),如图
这里写图片描述
这些容器依然会占用host 的文件系统,如果确认不会再重启此类容器,可以通过docker rm删除。
docker rm一次可以指定多个容器。

docker rm是删除容器,docker rmi是删除镜像。

 

 

关于docker的内存限额、CPU限额可以使用progrium/stress镜像来学习或测试,progrium/stress是专门用来做压力测试的。

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐