• centos7下安装docker(8.3容器的常用操作)


    yu我们之前已经学习了如何运行容器docker run,也学习了如何进入容器docker attach和docker exec,下面我们来学习容器的其他操作:

    stop/start/restart

    1.通过docker stop可以停止运行的容器

    容器在docker host上面实际是一个进程,docker stop命令其实是向这个进程发送了一个SIGTERM信号。如果想快速停止容器,可以使用docker kill命令,作用是向容器进程发送SIGKILL信号(通过自己做试验,docker stop停止容器是比较慢,docker kill是比较快)

    2.对于停止的容器,我们可以通过docker start重新启动

    并不是所有停止的容器都可以使用docker start启动起来的,通过试验发现docker start无法将那些没有运行过的容器启动起来,比如:

    无法将通过docker run -d centos创建的容器启动起来,因为由docker run -d centos创建出来的容器由于没有前台进程,所以无法运行。

    总结:docker start 会保留容器的第一次启动时的所有参数

    3.docker restart重启容器

     

    容器重启的过程是:先docker stop,然后docker start

    容器可能会因为某种错误而停止运行。对于服务类的容器,我们希望容器能够在遇到错误时可以自动重启;可以通过--restart达到这个效果,如:

    --restart=always:无论容器因何种原因退出(包括正常退出),就立即重启(--restart=always针对的是容器的启动进程,只有当容器的启动进程退出时,--restart才生效)

    退出包括正常退出或者非正常退出。例如:启动进程正常退出或发生OOM(out of memory),此时docker 会根据--restart的策略来判断是否需要重启容器。如果容器执行的是docker stop 和docker kill而退出,则不会自动重启

    --restart=on-failure:3    :容器的退出代码为非0值,则重启容器,最多重启3次

    4.pause暂停容器

    有时可能需要暂停一会容器,比如给容器的文件系统做快照,或者Host 主机需要CPU资源,这时我们可以使用docker pause 暂停容器

    其实这个pause停止的是容器里面的进程,处于暂停状态的容器不会占用CPU资源,直到通过docker unpause 恢复运行

    5.rm删除容器

    前面做了大量的实验之后,有很多Exited状态的和UP状态的容器,那对于这些容器,大部分是我们不用的,但是这些容器依然会占用大量的Host的资源,对于这些不用的容器,可以使用docker rm进行删除

    可以看到我的Host上有大量的Exited状态的容器,一个一个的删除太麻烦了,那我们可以使用docker rm $(docker ps -a -q)批量删除Exited容器

    -p:列出所有容器的ID

    docker rm -v $(docker ps -aq  -f status=exited)这个命令是彻底删除Host上面的状态为EXITED状态的容器

    -v :容器启动后,数据会以volume的形式存在于硬盘中,即使删除了容器,数据也不会被删除;加上-v的参数,容器执行的数也会被删除

    -f:强制删除,可以删除正在运行的容器

    两个高危参数,谨慎使用!!!

    6.create预创建容器

    在一些情况下我们可以先预创建容器,稍后再启动他

     

    通过docker create创建的容器,处于create状态,可以通过docker start启动他

    docker run命令实际是由docker create和dcoker start的组合

  • 相关阅读:
    git初学【常用命令、上传项目到码云或从码云拉取、克隆项目】
    dedecms自学
    sublime3使用笔记
    路由功能
    bootstrap模态框篇【遇到的问题】
    justgage.js的使用
    fullpage.js使用方法
    js&jq遇到的问题(不断更新中)
    图灵完备——停机问题
    中断
  • 原文地址:https://www.cnblogs.com/lkun/p/7718177.html
Copyright © 2020-2023  润新知