经验首页 前端设计 程序设计 Java相关 移动开发 数据库/运维 软件/图像 大数据/云计算 其他经验
当前位置:技术经验 » 程序设计 » Docker » 查看文章
020.Dockerfile
来源:cnblogs  作者:badboyh2o  时间:2019/5/20 8:42:32  对本文有异议

 

  docker-cli读取Dockerfile,根据指令生成定制的docker镜像。

 

  • Dockerfile的指令根据作用可以分为两种,构建指令和设置指令。

  构建指令:用于构建image,其指定的操作不会在运行image的容器上执行;

  设置指令:用于设置image的属性,其指定的操作将在运行image的容器中执行。

 

  1.构建指令

FROM

MAINTAINER

WORKDIR

RUN

ENV

ADD

COPY

VOLUME 

 

  2.设置指令

CMD

ENTRYPOINT

USER 

EXPOSE

 

  • Dockerfile示例

 ## Dockerfile的指令是忽略大小写的,建议使用大写,使用 # 作为注释,每一行只支持一条指令,每条指令可以携带多个参数。

  1. FROM ubuntu:13.10
  2. MAINTAINER zing wang "zing.jian.wang@gmail.com"
  3. RUN echo "deb http://archive.ubuntu.com/ubuntu precise main universe"> /etc/apt/sources.list
  4. RUN apt-get update
  5. RUN apt-get -y install curl
  6. RUN cd /tmp && curl -L 'http://download.oracle.com/otn-pub/java/jdk/7u65-b17/jdk-7u65-linux-x64.tar.gz' -H 'Cookie: oraclelicense=accept-securebackup-cookie; gpw_e24=Dockerfile' | tar -xz
  7. RUN mkdir -p /usr/lib/jvm
  8. RUN mv /tmp/jdk1.7.0_65/ /usr/lib/jvm/java-7-oracle/
  9. RUN update-alternatives --install /usr/bin/java java /usr/lib/jvm/java-7-oracle/bin/java 300
  10. RUN update-alternatives --install /usr/bin/javac javac /usr/lib/jvm/java-7-oracle/bin/javac 300
  11. ENV JAVA_HOME /usr/lib/jvm/java-7-oracle/
  12. RUN cd /tmp && curl -L 'http://archive.apache.org/dist/tomcat/tomcat-7/v7.0.8/bin/apache-tomcat-7.0.8.tar.gz' | tar -xz
  13. RUN mv /tmp/apache-tomcat-7.0.8/ /opt/tomcat7/
  14. ENV CATALINA_HOME /opt/tomcat7
  15. ENV PATH $PATH:$CATALINA_HOME/bin
  16. ADD tomcat7.sh /etc/init.d/tomcat7
  17. RUN chmod 755 /etc/init.d/tomcat7
  18. EXPOSE 8080
  19. ENTRYPOINT service tomcat7 start && tail -f /opt/tomcat7/logs/catalina.out

 

 

  1. From 47.xxx.xxx.xxx:10010/openjdk8-apline-ssh:v0.1
  2. WORKDIR /app
  3. COPY app.jar /app/app.jar
  4. RUN chown -R 1000:1000 /app && chmod -R 750 /app && mkdir /app/config && chown -R 1000:1000 /app/config && chmod -R 750 /app/config
  5. EXPOSE 8050
  6. ENTRYPOINT java -jar /app/app.jar
  7. USER 1000:1000

 

  • 使用Dockerfile构建docker镜像

  1. #在Dockerfile所有目录下
  2. docker build -t xxx:xxx:xxx:xxx:10000/demo:v0.1 .

 

 

 

参考:

https://blog.csdn.net/qinyushuang/article/details/43342553

https://blog.csdn.net/qq_28710983/article/details/80964519

 

原文链接:http://www.cnblogs.com/badboyh2o/p/10889507.html

 友情链接:直通硅谷  点职佳  北美留学生论坛

本站QQ群:前端 618073944 | Java 606181507 | Python 626812652 | C/C++ 612253063 | 微信 634508462 | 苹果 692586424 | C#/.net 182808419 | PHP 305140648 | 运维 608723728

W3xue 的所有内容仅供测试,对任何法律问题及风险不承担任何责任。通过使用本站内容随之而来的风险与本站无关。
关于我们  |  意见建议  |  捐助我们  |  报错有奖  |  广告合作、友情链接(目前9元/月)请联系QQ:27243702 沸活量
皖ICP备17017327号-2 皖公网安备34020702000426号