Images
1. 使用Dockerfile定義一個 Container
FROM softleader/tomcat85
RUN mkdir -p ${TOMCAT_HOME}/webapps/ROOT
RUN echo "Hello Container!" > ${TOMCAT_HOME}/webapps/ROOT/index.html
CMD $TOMCAT_HOME/bin/catalina.sh run
2. BuildDockerfileto image
# build to docker image
docker build -t mytomcat .
# let's take a deep look about layers of image
docker image inspect mytomcat
Images and layers
Images是由很多層layers組成
圖片來源 : https://docs.docker.com/storage/storagedriver/#images-and-layers
3. 在Dockerfile中做些改變
FROM softleader/tomcat85
RUN mkdir -p ${TOMCAT_HOME}/webapps/ROOT \
&& echo "Hello Container!" > ${TOMCAT_HOME}/webapps/ROOT/index.html
CMD $TOMCAT_HOME/bin/catalina.sh run
4. 重建 image 並再次檢查
docker build -t mytomcat .
docker image inspect mytomcat
Dockerfile 常用指令
FROM - base image
COPY - 複製當前目錄中的檔案到 container 中
ENV - 宣告變數
VOLUME - 宣告目錄
WORKDIR - 設定當前目錄
RUN - build layer 中執行的指令
CMD - container 啟動時執行的指令
實作看看
Docker build 的時候才將
index.html包進去