zoukankan      html  css  js  c++  java
  • Docker Day 1 Docker基础之常用操作指令

    GitHub Docker 技术文档:https://github.com/hangyan/docker-resources/blob/master/README_zh.md

    如果不想每次运行Docker都使用sudo权限,可以把用户加到Docker组中。

    例如: 我的用户名为 user,则添加命令如下;

        sudo  usermod  -aG  docker  user
    

    重启后生效,再次执行Docker指令,直接输入docker xx ,不需要加 sudo 了。

    使用docker ps 下面的命令查看 镜像跟容器

        docker ps | awk '{print $2, $NF}'
    

    Docker 三大基础组件

        仓库(Repository)
        镜像(Image)
        容器(Container)
    

    查询

    查看正在运行的容器和所有运行的容器

        docker  ps 
        docker  ps  -a
    

    查看镜像

        docker images
        docker images -a
    

    停止

    停止容器与停止所有正在运行的容器

        docker stop  想要停止的容器ID
        docker stop $(sudo docker ps -aq )
    

    删除

    删除停止运行的容器与所有停止运行的容器

        docker rm  想要停止的容器ID
        docker rm $(docker ps -a -q)    # 删除所有停止运行的容器(使用须小心)。用到了Docker指令嵌套功能
        删除镜像
        docker rmi  想要停止的镜像ID
        docker rmi $(sudo docker images -a -q)
    

    查询镜像

        docke search lnmp
    

    下载镜像

        docker pull idiswy/lnmp
    

    运行镜像

    docker run 命令是用来创建运行Docker容器。它至少需要两个参数,一个是镜像名,一个是容器中需要运行的命令

        docker run idiswy/lnmp   echo "Hello World"
    

    修改容器

    在 learn/tutorial 容器中安装一个ping工具,由于镜像是ubuntu操作系统构建的,所以可以通过在容器中运行 apt-get install -y ping, 一旦ping工具安装完毕,容器会立刻停止运行,但容器中安装的软件包会一直保留。

         docker run learn/tutorial apt-get install -y ping
    

    创建新镜像

    上面修改容器是已经安装了 ping程序包,想要保存这个变更,以便于以后启动容器时不需要重复安装ping程序包。Docker支持在原有镜像基础上,只提交增量修改部分,形成一个新镜像。以后使用新镜像为模板启动容器,容器中就会存在ping软件包,于是就不需要重复安装了。

    首先用docker ps -l 找到安装过ping包的容器ID号,然后把这个容器提交为新镜像,镜像名为 learn/ping , 使用 docker commit 把容器提交为新镜像

        docker ps -l    
        docker commit  c61223a01f49  learn/ping
    

    使用新镜像

    上面基于容器生成了新的镜像,这个镜像包含ping软件包,这个新镜像可以运行在任何装有Docker引擎的机器上

    测试刚才提交的新镜像中安装的ping工具 ping Docker网站

         docker run learn/ping ping www.docker.com
    

    查询容器信息

    用 docker ps 查看当前运行的容器, 使用docker inspect 可以看到单个容器的详细信息

    可以使用容器ID来指定容器,也可以只是用容器的前3 ~ 4 个字符来指定

        docker inspect 36964c6571ba 
    

        docker inspect 3696
    

  • 相关阅读:
    [转]Torch是什么?
    去掉 CONSOLE 窗口(转)
    最短路径问题
    最短路,dijstra算法
    最短路,floyd算法,图的最短路径
    freckles
    还是畅通工程,最小生成树kruskal
    More is better
    畅通工程
    人见人爱
  • 原文地址:https://www.cnblogs.com/MeiCheng/p/10425366.html
Copyright © 2011-2022 走看看