docker运行流程

image-20200404120356784

镜像常用命令

查看本机中所有镜像

命令docker images [镜像名]可查看当前镜像。

  • -q

    只显示镜像id

  • -a

    列出所有镜像(包含中间映像层)

搜索镜像

命令格式:docker search [options] 镜像名

  • -s

    列出收藏数不少于指定值的镜像

  • --no-trunc

    显示完整的镜像信息

从仓库下载镜像

命令格式:docker pull 镜像名[:TAG|@DIGEST]

可以指定TAG或者DIGEST

  • TAG

    标签名

  • DIGEST

删除镜像

命令格式:docker rmi 镜像名

可以指定TAG或者DIGEST

  • -f

    强制删除

容器常用命令

运行容器

镜像名新建并启动容器

命令格式:docker run [选项] 镜像名

  • --name

    别名为容器起一个名字

  • -d

    启动守护式容器(在后台启动容器)

  • -p

    映射端口号:原始端口号 指定端口号启动

  • --network

    指定使用的网桥

docker run -it --name myTomcat -p 8888:8080 tomcat

docker run -d --name myTomcat -P tomcat

查看运行的容器

列出所有正在运行的容器,命令格式:docker ps

  • -a

    正在运行的和历史运行过的容器

  • -q

    静默模式,只显示容器编号

停止|关闭|重启容器

  • 开启容器

    docker start 容器名字或者容器id

  • 重启容器

    docker restart 容器名或者容器id

  • 正常停止容器运行

    docker stop 容器名或者容器id

  • 立即停止容器运行

    docker kill 容器名或者容器id

删除容器

  • 删除单个容器

    docker rm -f 容器id和容器名

  • 删除所有容器

    docker rm -f $(docker ps -aq)

查看容器内进程

docker top 容器id或者容器名

查看容器内部细节

docker inspect 容器id

查看容器运行日志

命令格式:docker logs [OPTIONS] 容器id或容器名

  • -t

    加入时间戳

  • -f

    跟随最新的日志打印

  • --tail

    数字 显示最后多少条

进入容器内部

命令格式:docker exec [options] 容器id 容器内命令

  • -i

    以交互模式运行容器,通常与-t一起使用

  • -t

    分配一个伪终端 shell窗口 bash

容器和宿主机之间复制文件

  • 将宿主机复制到容器内部

    docker cp 文件|目录 容器id:容器路径

  • 将容器内资源拷贝到主机上

    docker cp 容器id:容器内资源路径 宿主机目录路径

数据卷(volum)实现与宿主机共享目录

命令:docker run -v 宿主机的路径|任意别名:/容器内的路径 镜像名,宿主机与容器文件是互通的。

docker run -v 宿主机的路径|任意别名:/容器内的路径:ro 镜像名,容器机不能修改宿主机的文件内容。

  • 如果是宿主机路径必须是绝对路径,宿主机目录会覆盖容器内目录内容
  • 如果是别名则会在docker运行容器时自动在宿主机中创建一个目录,并将容器目录文件复制到宿主机中

打包镜像

命令:docker save 镜像名:tag -o 名称.tar

载入镜像

命令:docker load -i 名称.tar

容器打包成新的镜像

命令:docker commit -m "描述信息" -a "作者信息" (容器id或者名称)打包的镜像名称:标签