本节通过几个例子,来工具Dockerfile的知识。
实战1:使用Dockerfile修改Nginx首页
创建一个Dockerfile,内容如下:
FROM nginxRUN echo '<h1>Spring Cloud与Docker微服务实战</h1>' > /usr/share/nginx/html/index.html
实战2:使用Dockerfile在CentOS 7中安装Nginx
尽管Docker Hub中已存在基于CentOS 7的镜像,但仍可使用本例的内容学习、巩固Dockerfile的相关知识。
基于CentOS 7镜像,在其中安装Nginx,并启动。
提示:默认Nginx不在官方Yum仓库中,需要先安装RPMS仓库包,这样才能用Yum安装Nginx。安装RPMS包的命令如下:
rpm -Uvh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm
答案
FROM centos:7RUN rpm -Uvh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpmRUN yum -y install nginxRUN sed -i '1i\daemon off;' /etc/nginx/nginx.confENTRYPOINT nginx
实战3:使用Dockerfile构建一个Spring Boot应用镜像
有一个Java应用,在裸机中的启动命令是java -jar xxx.jar
,请将其制作成Docker镜像,并启动。
答案
# 基于哪个镜像FROM java:8# 将本地文件夹挂载到当前容器VOLUME /tmp# 拷贝文件到容器,也可以直接写成ADD xxxxx.jar /app.jarADD xxxxx.jar app.jar /app.jar'# 声明需要暴露的端口EXPOSE 8761# 配置容器启动后执行的命令ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar"]
巩固:阅读常用软件的Dockerfile
关于Alpine Linux:http://www.cnblogs.com/zhangmingcheng/p/7122386.html
本文首发
http://www.itmuch.com/docker/08-docker-dockerfile-in-action/
點擊查看更多內容
1人點贊
評論
評論
共同學習,寫下你的評論
評論加載中...
作者其他優質文章
正在加載中
感謝您的支持,我會繼續努力的~
掃碼打賞,你說多少就多少
贊賞金額會直接到老師賬戶
支付方式
打開微信掃一掃,即可進行掃碼打賞哦