zoukankan      html  css  js  c++  java
  • docker容器操作

    docker容器操作

    容器是docker镜像的一个运行实例:是独立运行的一个或者多个所必须的运行环境,镜像是可读模板,容器给这个可读模板一个可写层。

    • 创建容器与运行容器
      docker的容器十分轻量级,用户随时可以创建或者删除,需要一个进程来启动。
      创建容器
    格式:docker create [选项]... 镜像运行的程序  (不建议用这个启动)
    常用选项:-i:让容器的输入保持打开
            -t:让Docker分配一个伪终端
            -d:守护进程形式运行
    [root@server01 ~]# docker create -it nginx /bin/bash
    1560de9a82a2b9640f843c07218323bcea3db826ac18e463d06db54fae607a06  #容器的id号
    #报错ipv4 forwarding is.....原因:路由转发没开,可以在/etc/sysctl.conf文件添加net.ipv4_forward=1,打开路由转发
    
    #查看容器  ps
    格式:docker ps 【选项】(不加选项默认查看正在运行的容器进程)
        docker ps -a (查看全部)
    [root@server01 ~]# docker ps -a
    CONTAINER ID(ID号)     IMAGE(镜像)           COMMAND(正在运行的命令)                 CREATED(创建时间)                         STATUS(目前状态)              PORTS(端口)           NAMES(随机名)
    1560de9a82a2             nginx                 "/docker-entrypoint.…"   4 minutes ago       Created                                                                             focused_williams
    #最后的NAMES可使用命令:docker create -it --name abc nginx /bin/bash 创建修改
    

    容器的启动与停止

    格式: docker start 容器ID/名称
    docker start 
    [root@server01 ~]# docker start focused_williams
    focused_williams
    [root@server01 ~]# docker ps 
    CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS               NAMES
    1560de9a82a2        nginx               "/docker-entrypoint.…"   11 minutes ago      Up 3 seconds        80/tcp              focused_williams
    #此时可以看到状态已经变成Up 3 seconds(启动状态)还有80端口已经打开了
    
    #同时创建并启动:run命令如果本地镜像没有的话,会从公用仓库下载
    docker run -d nginx /bin/bash -c ls/(并执行一条shell命令ls)
    #就是在inspect上启动一个启动nginx的脚本
      "Entrypoint": [
                    "/docker-entrypoint.sh"
                ],
    #而有的则没有启动脚本需要-c 后面写一个启动例如centos等:docker run -d centos /bin/bas -c "while true; do echo "123"; sleep 1; done"  
    #启动每隔一秒输入一个123,也就是centos长期在启动。可以使用“docker logs 容器id号”查看输出内容,也就是123
    #-d就是在后台来运行
    [root@localhost ~]# docker run nginx /bin/bash -c ls
    bin
    boot
    dev
    docker-entrypoint.d
    ...
    
    #删除容器:docker rm -f $(docker ps -aq)  #-f强制删除
    

    容器的进入

    #命令:docker exec / docker attach
    格式:docker exec -it 容器ID/名称/bin/bash 
    -i:让容器输入保持打开
    -t:分配一个伪终端
    [root@localhost ~]# docker exec -it 48d28d5fe5c2 /bin/bash
    root@48d28d5fe5c2:/# exit
    exit
    

    容器的进出与导入

    命令格式:docker export 容器ID/名称>文件名
    
  • 相关阅读:
    Html5 Canvas一个简单的画笔例子
    DrawTool画笔之图形笔
    DrawTool画笔之纹理笔
    DrawTool多重笔之前奏 => 通过InkAnalyzer实现图形识别
    分布式系统阅读清单
    多点触摸画板(MultiTouchCanvas)
    基于 abp vNext 微服务开发的敏捷应用构建平台
    基于 abp vNext 微服务开发的敏捷应用构建平台
    基于 abp vNext 微服务开发的敏捷应用构建平台
    基于 abp vNext 微服务开发的敏捷应用构建平台
  • 原文地址:https://www.cnblogs.com/wml3030/p/15426711.html
Copyright © 2011-2022 走看看