Docker:DockerFile关键字解析&自定义HelloWorld镜像

短命女 2022-01-26 02:15 455阅读 0赞

一,DockerFile简单执行流程

  1. 1,创建DockerFile文件,并定义对应的Docker脚本语言
  2. 2,通过docker build命令执行该DockerFile文件,生成docker镜像
  3. 3,在docker镜像中通过docker run命令启动容器,进行程序访问

二,DockerFile关键字

1,FROM

  1. \* 基础镜像,当前镜像所依赖镜像,基于docker镜像分层概念

2,MAINTAINER

  1. \* 当前维护镜像人/组织

3,RUN

  1. \* 镜像构建时需要运行的Linux命令

4,WORKDIR

  1. \* 容器创建后默认目录

5,EXPOSE

  1. \* 当前容器对外暴露端口

6,ENV

  1. \* 用来构建镜像时设置的环境变量

7,ADD

  1. \* 将宿主机目录下的文件COPY到镜像并且会自动解压(zip文件不支持解压),该文件路径必须与DockerFile一致,且宿主机文件路径为相对路径

8,COPY

  1. \* 将宿主机目录下的文件COPY到镜像,不会自动解压

9,VOLUME

  1. \* 数据卷容器, 用于保存和持久化

10,CMD

  1. \* 指定容器启动过程中需要运行的命令, 多条只生效最后一条, 并且命令会被docker run之后的参数替换

11,ENTRYPOINT

  1. \* 指定容器启动过程中需要运行的命令, 会把docker run命令的参数追加到后面

三,自定义HelloWorld镜像

  1. 1,通过SpringBoot自定义HelloWorld项目,并通过maven打成jar包备用,该步骤不演示
  2. 2,在服务器路径下自定义DockerFile文件,并上传自定义jar包和JDK tar包到该路径

20190527215049502.png

  1. 3,自定义DockerFile文件,
  2. # 基于Docker镜像分层概念, 依赖的底层镜像
  3. FROM centos
  4. # 作者
  5. MAINTAINER zpj<zpj@123.com>
  6. # 工作空间
  7. ENV MYPATH /usr/local
  8. WORKDIR $MYPATH
  9. # 拷贝运行jar包到工作空间
  10. COPY com.docker.helloworld-1.0-SNAPSHOT.jar /usr/local/com.docker.helloworld-1.0-SNAPSHOT.jar
  11. # 添加JDK包并ADD到工作空间, 此处会自动解压, 注意解压不会解压zip包,并且路径必须与DockerFile同级
  12. ADD jdk-8u171-linux-x64.tar.gz /usr/local
  13. # JDK环境变量
  14. ENV JAVA_HOME /usr/local/jdk1.8.0_171
  15. ENV CLASSPATH $JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
  16. # 拼接最终环境变量
  17. ENV PATH $PATH:$JAVA_HOME/bin
  18. # 对外暴露接口
  19. EXPOSE 8080
  20. # 执行的Linux命令
  21. CMD java -jar /usr/local/com.docker.helloworld-1.0-SNAPSHOT.jar
  22. 4docker镜像构建
  23. # 注意最后一个.是点睛之笔
  24. docker build -f /usr/develop/DockerFile -t myhelloworld:1.0 .
  25. 5,构建完成后查看镜像

watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3UwMTE5NzYzODg_size_16_color_FFFFFF_t_70

20190527215306976.png

  1. 6,启动镜像

20190527215411974.png

  1. 7,查看日志

watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3UwMTE5NzYzODg_size_16_color_FFFFFF_t_70 1

  1. 8,页面访问

2019052721551159.png

发表评论

表情:
评论列表 (有 0 条评论,455人围观)

还没有评论,来说两句吧...

相关阅读