欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Docker 介绍三 Docker 容器管理、镜像管理

程序员文章站 2024-03-12 11:48:14
...

查看Web容器:Docker ps 查看当前正在运行的容器,Docker ps -a 查看所有的容器包括停止的

设置容器的端口:-p 8080:8080 表示将容器的端口映射到宿主机端口上面

查看Web容器的应用日志:docker logs  -f  容器名称  实时查看容器的日志

查看Web应用容器内部的进程:docker  top 容器名称,查看当前容器里面的进程

检查web应用的程序:docker inspect  容器名称     返回的是容器的配置和状态信息

重启Web应用容器:docker stop 容器名称(停止当前docker 容器), docker start 容器名称(启动容器) 、docker restart 容器名称 (重启容器)

移除web容器: docker rm 容器名称

获取镜像列表:docker images

获取镜像: docker pull 镜像名称

查找镜像:docker search 镜像名称

创建镜像:1,从已经创建的容器中更新镜像,并且提交镜像,2,使用Dockerfile 指令来创建一个新的镜像

  更新镜像: 进入到容器中进行容器镜像的更新,docker run -it 容器名称 /bin/bash 

   进入到容器之后,使用 apt-get update 进行容器的更新,更新完成之后,exit 退出当前容器,然后提交 docker 

    docker commit -m="提交的内容"  -a="镜像作者" 容器的id 容器的名称

docker commit -m="has update" -a="lusifer" 9a3dcafd7a83 lusifer/ubuntu:v2

    Dockerfile:Dockerfile 是一个包含 用于组合映射的命令的文本文档,可以使用在命令行中调用任何命令,Dockerfile通过读取Dockerfile中的指令自动生成映射

   docker build 命令用于从Dockerfile 构建镜像,可以在docker build 命令中使用 ,-f 标志指向文件系统中任何卫视的Dockerfile 

  Dockerfile 文件说明

  说明不区分大小写,但必须遵循建议使用大写字母的约定,Docker以从上到下的顺序运行Dockerfile 的指令,为了指定基本镜像,第一条指令必须是 FROM  一个声明 以 # 字符开头的则被视为注释,可以在Docker 文件使用:RUN 、CMD、FROM 、EXPOSE、ENV  等指令,其中from 该指令 用于设置后续指令的基本镜像,有效的Dockerfile 必须使用form作为其第一条指令

    FROM UBUNTU   表示 引用 ubuntu 镜像

   MAINTAINER 指定 镜像的作者,  

MAINTAINER <name>

   RUN  该指令用于执行当前镜像的 任何命令

RUN /bin/bash -c 'echo "Hello World"'

   CMD 用于执行镜像的应用程序

CMD ["可执行文件", "参数1", "参数2"]

   例如:CMD ["/bin/echo","this is a echo test"]

  COPY  该指令用于将资源的新文件或者目录复制到指定的目的地的容器的文件系统

COPY abc/ /xyz

     使用是需要注意: source 必须是当前Dockerfile所在的目录,也就是说必须在构建的上下文之内,因为在Dockerfile文件中无法使用 COPY ../something /something ,因为docker 在构建的时候,第一步是将上下文目录(和子目录),发送到docker 的守护进程中,如果source 是目录,则会复制目录的全部的内容,包括文件系统元数据.

 WORKDIR: 用于为Dockerfile 中的RUN  、CMD 、 和 COPY 指令设置工作目录,如果工作目录不存在,则会默认自动创建,可以在Dockerfile 文件中多次使用WORKDIR 

创建镜像 :docker build -t 镜像名称 .   

设置 镜像标签 :docker tag 容器id  设置镜像的标签