美文网首页
我的Docker学习笔记

我的Docker学习笔记

作者: 毛宇鹏 | 来源:发表于2016-06-16 13:28 被阅读261次

    安装docker

    安装 Docker 官方的最新发行版, 支持 Ubuntu 12.04 以上版本

    curl -sSL https://get.daocloud.io/docker | sh
    

    安装完成后:

        + sh -c docker version
    Client:
     Version:      1.9.1
     API version:  1.21
     Go version:   go1.4.2
     Git commit:   a34a1d5
     Built:        Fri Nov 20 13:12:04 UTC 2015
     OS/Arch:      linux/amd64
    
    Server:
     Version:      1.9.1
     API version:  1.21
     Go version:   go1.4.2
     Git commit:   a34a1d5
     Built:        Fri Nov 20 13:12:04 UTC 2015
     OS/Arch:      linux/amd64
    
    If you would like to use Docker as a non-root user, you should now consider
    adding your user to the "docker" group with something like:
    
      sudo usermod -aG docker your-user
    
    Remember that you will have to log out and back in for this to take effect!
    

    安装过程结束后,可执行下面命令验证安装结果。如果看到输出 docker start/running 就表示安装成功。

    sudo service docker status
    

    启动和停止Docker服务

    sudo service docker start/stop/restart
    

    查看Docker安装信息

    sudo docker info
    
    查看Docker安装信息

    查看Docker镜像

    镜像简短信息

    sudo docker images
    
    简短镜像信息

    镜像详细信息

    sudo docker images [OPTION]
    
    参数名 描述 默认
    -a,--all 显示全部镜像 默认隐藏中间部分的镜像
    --digests 显示摘要 默认不显示
    -f,--filter=[] 过滤输入结果 默认不过滤
    --format 使用模板打印镜像信息 默认不使用
    --help 帮助信息 默认不使用
    --no-trunc 不截断输出 默认截断输出
    -q,--quiet 只显示数字标识(截断的IMAGE ID) 默认不使用
    镜像详细信息示例

    操作Docker镜像

    1.拉取镜像(pull)

    由于是练习,我就直接用国内镜像,节约时间!
    如何从DaoCloud Pull镜像
    (一)进入控制台-->镜像仓库-->DaoCloud镜像

    DaoCloud官方网站 DaoCloud控制台 DaoCloud镜像仓库

    (二)选择要安装的镜像
    示例:phpmyadmin

    phpmyadmin

    在终端中,输入上图 圈出 的命令:

    sudo docker pull daocloud.io/golfen/dao-phpmyadmin:master-6d2081f
    
    安装phpmyadmin过程 查看安装结果

    2.删除镜像

    镜像没有在任何容器中使用的时候(如果镜像已经被容器使用了,就删除失败。可以参考下面的章节"操作容器",删除容器后,再删除镜像),可以通过下面的命令删除镜像:

    // rmi 后面跟的参数为 image id
    sudo docker rmi 8049b175ab11
    //rmi 后面跟的参数为REPOSITORY+TAG
    sudo docker rmi daocloud.io/golfen/dao-phpmyadmin:master-6d2081f
    
    根据image id删除镜像 删除后结果查询

    Docker容器

    启动容器

    docker容器可以理解为在沙盒中运行的进程。这个沙盒包含了该进程运行所必须的资源,包括文件系统、系统类库、shell 环境等等。但这个沙盒默认是不会运行任何程序的。你需要在沙盒中运行一个进程来启动某一个容器。这个进程是该容器的唯一进程,所以当该进程结束的时候,容器也会完全的停止。(摘自推酷)

    启动容器

    上图中,分别执行了查看镜像、根据 REPOSITORY 与 TAG 启动容器,启动成功后查看当前启动容器的信息,示例命令如下:

    // 查看镜像
    docker images
    //交互式启动容器
    //docker run -it container_name:tag /bin/bash
    docker run -it daocloud.io/ubuntu:14.04 /bin/bash
    
    //进入已经启动的容器
    docker start -ai [容器id]
    
    //查看容器信息
    uname -a
    

    操作容器

    查看容器(docker ps)
    查看启动中的容器

    docker ps
    
    查看启动中的容器

    查看所有容器

    docker ps -a
    
    查看所有容器

    查看最近一次启动的容器

    docker ps -l
    
    查看最近一次启动的容器

    根据容器id操作容器

    docker [Option] container_id
    
    参数名 描述
    rm 删除
    stop 停止
    start 启动
    kill 杀死
    logs 获取容器日志
    diff 列出一个容器里面被改变的文件或者目录
    top 容器里面的进程信息
    cp 从容器里面拷贝文件
    restart 重启
    attach 附加到一个运行的容器上面
    //删除单个容器; -f, --force=false; -l, --link=false Remove the specified link and not the underlying container; -v, --volumes=false Remove the volumes associated to the container
    docker rm Name/ID
    
    //停止、启动、杀死一个容器
    docker stop Name/ID
    docker start Name/ID
    docker kill Name/ID
    
    //从一个容器中取日志; -f, --follow=false Follow log output; -t, --timestamps=false Show timestamps
    docker logs Name/ID
    
    //列出一个容器里面被改变的文件或者目录,list列表会显示出三种事件,A 增加的,D 删除的,C 被改变的
    docker diff Name/ID
    
    //显示一个运行的容器里面的进程信息
    docker top Name/ID
    
    //从容器里面拷贝文件/目录到本地一个路径
    docker cp Name:/container_path to_path
    docker cp ID:/container_path to_path
    
    //重启一个正在运行的容器; -t, --time=10 Number of seconds to try to stop for before killing the container, Default=10
    docker restart Name/ID
    
    //附加到一个运行的容器上面; --no-stdin=false Do not attach stdin; --sig-proxy=true Proxify all received signal to the process
    docker attach ID
    
    //停止所有容器,且删除所有容器
    docker stop $(docker ps -q)
    docker rm $(docker ps -a -q)

    相关文章

      网友评论

          本文标题:我的Docker学习笔记

          本文链接:https://www.haomeiwen.com/subject/moumdttx.html