Back

Docker

Docker 学习笔记

Docker 一种生成容器的工具。

一,镜像

Docker 镜像是一种特殊的文件系统,是一个静态概念,是容器的底层。

1,获取镜像:
    $ docker pull ***
    
2,显示镜像:
    $ docker image ls    // 显示顶层镜像
    $ docker image ls -a    // 显示中间层镜像
    $ docker image ls **    // 显示镜像 ** 
    $ docker image ls -f since=**    // 显示 ** 之后建立的镜像
    $ docker image ls -f before=**    // 显示 ** 之前的建立的镜像
    $ docker image ls -f dangling=true    // 显示虚悬镜像
    $ docker image prune    // 删除虚悬镜像
    // 在发布镜像新版本时,旧镜像名转移到新镜像上,从而旧镜像出现仓库名,标签均为 <none> 情况,成为虚悬镜像。

    $ docker image ls -q    // 只显示镜像 ID
    $ docker image ls --format "{{.ID}}:{{.Repository}"
    // 按照 ID:仓库名 的格式显示
    $ docker image ls --format "table {{.ID}}\t{{.Repository}}\t{{.Tag}}"
    // 按照 ID 仓库名 标签 的表格形式显示

3,删除镜像
    $ docker image rm **
    // ** 可以是 ID,镜像名,摘要
    $ docker image rm $(docker image ls -q redis)
    // 删除所有仓库名为 redis 的镜像

4,定制镜像(Dockerfile)
Dockerfile 是一个用来构建镜像的文本文件,文本内容包含了一条条构建镜像所需的指令和说明。

二,容器

容器是独立运行的一个或一组应用,以及它们的运行态环境,是一个动态概念。

1,启动容器:
    1) 基于镜像新建容器并启动:
        $ docker run -t -i ubuntu /bin/bash
        // -t 选项让 Docker 分配一个伪终端(pseudo-tty)并绑定到容器的标准输入上, -i 则让容器的标准输入保持打开

    2) 启动已终止的容器:
        $ docker container start [id]    // 重启容器 

2,运行容器:
    -d:让容器在后台运行,而不是在当前宿主机下输出结果。例如:

    $ docker run -d ubuntu /bin/sh -c "echo hello world;"
    // 此时会返回一个唯一的 id,可借助 id 查看输出信息
    $ docker logs [id]

3,终止容器:
    $ docker container ls   // 显示运行中的容器
    $ docker container ls -a    // 显示所有容器
    $ docker container stop [id]   // 终止容器
    $ docker container restart [id] // 重启容器

4,进入容器:
    1) attach:
        $ docker attach [id]
        // exit 会导致容器停止
    2) exec:
        $ docker exec -it [id] bash
        // -i:交互式 ,-t:终端
        // exit 不会导致容器停止

5,删除容器:
    $ docker container rm [id]     // 删除终止态的容器
    $ docker container rm -f [id]    // 删除运行中的容器
    $ docker container prune    // 删除所有终止态的容器

三,仓库

集中存放镜像的地方

Licensed under CC BY-NC-SA 4.0
Built with Hugo
Theme Stack designed by Jimmy