码迷,mamicode.com
首页 > 其他好文 > 详细

docker使用管理

时间:2018-12-08 00:21:52      阅读:173      评论:0      收藏:0      [点我收藏+]

标签:并且   logs   reg   efi   sys   打开   停止   ons   环境   

  • 容器生命周期
  • docker命令获取帮助
  • docker的常用命令
  • docker基本操作
  • 镜像管理

    • 容器生命周期
      技术分享图片
      运行容器一个实例:
      #docker run -it --rm --name bbox busybox:latest /bin/sh
      当运行这条指令后的执行流程步骤:
      1.检查本地是否存在指定的镜像,不存在则从registry下载;
      2.利用镜像启动容器
      3.分配一个文件系统,并且在只读的镜像层之外挂载一个可读写层;
      4.从宿主机配置的网桥接口桥接一个虚拟接口给此容器;
      5.从地址池中分配一个地址给容器;
      6.执行用户指定的应用程序;
      7.程序执行完成后,容器即终止
      注意:容器是为任务而生,任务完成即销毁,释放资源。为单一任务(进程)设计

    • docker命令获取帮助
      man ,docker --help...
      用法:docker [OPTIONS] COMMAND
      docker COMMAND --help 获取单个指令的详细用法

    • docker的常用命令
      环境信息相关:
      info
      version :查看当前安装版本信息
      系统维护相关:
      images :查看本地镜像
      inspect:查看docker对象的详细信息,json格式
      build:构建镜像
      commit :基于已有容器创建镜像
      pause/unpause :暂停(恢复)当前运行容器
      ps:查看当前在运行的容器
      rm :删除 docker ps -qa |xargs docker rm -f
      rmi :删除镜像 docker images -qa |xargs docker rmi 删除 所有镜像
      run:运行容器
      start/stop/restart:启动、停止、重启容器
      top:用于查看正在运行的容器中的进程的运行状态
      kill:终止当前运行的某个容器
      ...
      日志信息相关:
      events
      history
      logs:查看容器运行日志
      Docker hub服务相关:
      login:登录仓库
      logout
      pull:从仓库拉取镜像到本地
      push:将镜像推送至某仓库
      search:搜索镜像

    • 基本操作:

      • 启动一个nginx容器,使其在后台运行并将其80端口映射到宿主机8080端口
        docker run -d -p 8080:80 httpd
        docker run常用选项:
        -t:配置一个伪终端并绑定到容器的标准输入上
        -i:让容器的标准输入保持打开
        -d:将容器放入后台运行
        -c:指定分配该容器的cpu分片
        -m:指定分配给该容器的内存大小,单位为B,K,M,G
        --name:为容器分配指定名称
        --rm:当容器退出时自动删除容器
        [root@xt ~]# docker run -it --rm alpine:latest /bin/ls 
        bin    etc    lib    mnt    root   sbin   sys    usr
        dev    home   media  proc   run    srv    tmp    var
        [root@xt ~]# docker run -it alpine:latest /bin/ls 
        bin    etc    lib    mnt    root   sbin   sys    usr
        dev    home   media  proc   run    srv    tmp    var
        [root@xt ~]# docker ps -a
        CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS                     PORTS               NAME
        S49aedd5aca20        alpine:latest       "/bin/ls"           10 seconds ago      Exited (0) 8 seconds ago                       joll
        y_goldwasser
      • 把容器运行在前台:启动一个alpine容器输出 hello world,打印完即退出
        [root@xt ~]# docker run --rm alpine:latest /bin/echo "hello woeld"<br/>hello woeld<br/>
      • 容器运行在后台:
        docker run -d alpine:latest /bin/sh -c "while true; do echo hello world; sleep 1;done"

      服务类容器需要长期运行,所以使用daemon的方式运行;而工作类环境通常是给我们提供一个临时的工作环境,所以一般以run –ti的方式在前台运行

      • 查看当前节点上的容器状态
        docker ps #查看当前正在运行的容器
        选项:
        -a:查看所有容器,包括停止的
        -q:只显示容器ID
        -l:显示最后一次创建的容器`
    • 镜像管理操作

      • 获取镜像
        docker pull name:tag #镜像直接从官方网站下载
        docker pull xuetong.com:5000/centos:6.6 #从指定仓库下载
      • 查看镜像
        docker images
        docker inspect centos:latest #获取镜像的详细信息
      • 镜像打标签
        docker tag centos:latest xuetong.com:5000/centos:6.6
      • 搜索镜像
        docker search NAME:tag
        建议直接到官方网站搜索:https://hub.docker.com/explore/
      • 镜像导入导出
        docker  save  -o  /PATH/TO/SOMEFILE.TAR  NAME[:TAG]     
        docker  load  -i  /PATH/FROM/SOMEFILE.TAR 
        docker image load -i /root/centos-latest.tar.xz 
      • 删除镜像
        docker rmi name:tag
        如果一个镜像有多个tag,只会删除指定的tag,镜像本身不会删除,如果docker rmi后指定镜像ID,则所有tag都会被删除
      • 创建镜像:commit(根据现有镜像创建),不建议使用这种方法,无获取构建过程,建议使用dockerfile构建。

    docker使用管理

    标签:并且   logs   reg   efi   sys   打开   停止   ons   环境   

    原文地址:http://blog.51cto.com/12580678/2327791

    (0)
    (0)
       
    举报
    评论 一句话评论(0
    登录后才能评论!
    © 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
    迷上了代码!