使用Dockerfile製做Docker鏡像

使用Dockerfile製做Docker鏡像

2017年06月03日 18:09:13 閱讀數:2888 標籤: docker-鏡像Dockerfile 更多docker

我的分類: Dockermacos

版權聲明:本文爲博主原創文章,未經博主容許不得轉載。 https://blog.csdn.net/kity9420/article/details/72853497apache

最近項目中使用到Docker,所以趁在週末時間,研究下Docker。Docker環境安裝以前已經安裝就緒,請參考:《在Centos中安裝Docker CE》。咱們從簡單的開始,使用Dockerfile製做一個能運行Java應用程序的Docker鏡像 
一、準備JDK和Tomcat,將JDK和Tomcat放到/usr/local/soft目錄下,soft目錄是我本身新增的 
這裏寫圖片描述
二、在/usr/local/soft目錄下建立Dockerfile文件,文件內容以下ubuntu

#VERSION 0.0.1

#base image
FROM ubuntu:latest
MAINTAINER longwentao 「longwentao255@126.com」

#install jdk and tomcat
ADD jdk-7u79-macosx-x64.dmg /usr/local/
ADD apache-tomcat-7.0.72 /usr/local/apache-tomcat-7.0.72

ADD onStart.sh /usr/local/

ENV JAVA_HOME=/usr/local/jdk1.7.0_79 CLASSPATH=$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar PATH=$PATH:$JAVA_HOME/bin
RUN echo "JAVA_HOME=/usr/local/jdk1.7.0_79.jdk CALSSPATH=$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar\nPATH=$PATH:$JAVA_HOME/bin" >> /etc/profile

#add execute privilege
RUN chmod +x /usr/local/onStart.sh

EXPOSE 8888

#start tomcat
ENTRYPOINT /usr/local/onStart.sh
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22

TIPS: 
1) FROM 表示基於哪一個基礎鏡像製做鏡像,這裏是基於ubuntu的最新鏡像 
2) MAINTAINER 表示由哪一個維護這個鏡像 
3) ADD 表示將宿主機上的文件複製到鏡像的指定目錄,這裏是將jdk和tomcat複製到鏡像的/usr/local目錄下;onStart.sh是另外一個文件,在ENTRYPOINT中會指定須要運行什麼樣的命令,所以將這些命令統一放在onStart.sh文件中 
4) 所以onStart.sh是新增文件,所以還須要給它添加可執行權限,否則會報權限錯誤 
5) ENV 表示指定環境變量 
6) RUN 運行指定的命令,這裏用於配置Java環境變量 
7) EXPOSE 8888 指定暴露8888端口 
8) ENTRYPOINT 進入點,後面跟的是須要執行的腳本tomcat

三、在/usr/local/soft目錄下建立onStart.sh文件,文件內容以下bash

#!/bin/bash
/usr/local/apache-tomcat-7.0.72/bin/startup.sh
#tail -f /usr/local/apache-tomcat-7.0.72/logs/onSart.log
  • 1
  • 2
  • 3

四、進入到/usr/local/soft目錄下,使用docker build 製做Docker鏡像ui

docker build -t="tomcat-ubuntu:v1.0" .
  • 1

TIPS: 
1) -t=」tomcat-ubuntu:v1.0」 指定鏡像名稱爲tomcat-ubuntu,tag爲v1.0 
2) 最後的一點(.)表示當前目錄下的Dockerfile文件spa

五、最後經過docker images查看生成的鏡像 
這裏寫圖片描述.net

相關文章
相關標籤/搜索