原文位址: http://kekefund.com/2017/03/06/docker-dockerfile-generated/
1,Dockerfile的編寫
在centos中建立一個目錄:/mydata/data/dockertest/,建立Dockerfile檔案
vim Dockerfile
# Verison 0.6:
# 基礎鏡像
FROM chenbb/fofeasy:0.6
# 維護者資訊
MAINTAINER [email protected]
# 鏡像操作指令
RUN rm -rf /opt/tomcat/webapps/fofeasy
RUN rm -rf /opt/tomcat/webapps/fofeasy.war
ADD fofeasy.war /opt/tomcat/webapps/fofeasy.war
# 容器啟動指令
#CMD ["/opt/tomcat/bin/catalina.sh", "run"]
編寫完成後:wq儲存。
2,建構
基于Dockerfile建構鏡像,在Dockerfile檔案所在目錄下執行
[root@VM_200_249_centos dockertest]# docker build -t chenbb/fofeasy:0.7 .
Sending build context to Docker daemon 65.78 MB
Step 1 : FROM chenbb/fofeasy:0.6
---> c441af7f5405
Step 2 : MAINTAINER [email protected]
---> Running in f7cbd5cd3199
---> cef4cee90997
Removing intermediate container f7cbd5cd3199
Step 3 : RUN rm -rf /opt/tomcat/webapps/fofeasy
---> Running in 79505ed64d7f
---> 4f85be099a20
Removing intermediate container 79505ed64d7f
Step 4 : RUN rm -rf /opt/tomcat/webapps/fofeasy.war
---> Running in be162f93530b
---> c5cc2ba60023
Removing intermediate container be162f93530b
Step 5 : ADD fofeasy.war /opt/tomcat/webapps/fofeasy.war
---> 8ede3a4f83e5
Removing intermediate container b9b557e26828
Successfully built 8ede3a4f83e5
[root@VM_200_249_centos dockertest]#
注:
chenbb/fofeasy:0.7為新鏡像的名字
fofeasy.war檔案放到同一目錄
[root@VM_200_249_centos dockertest]# ll -lh
總用量 63M
-rw-r--r-- 1 root root 322 3月 3 17:00 Dockerfile
-rw-r--r-- 1 root root 63M 3月 3 16:46 fofeasy.war
3,啟動
docker run -d -p 58080:8080 --name javaweb chenbb/javaweb:0.7 /root/run.sh
3,一些問題
-
容器啟動不起來
考慮是容器裡的指令執行報錯引起的,重新從鏡像建立容器,排除問題,或者通過
"docker logs <容器ID>" 檢視錯誤日志
參考
http://www.jianshu.com/p/690844302df5