一、WORKDIR指令說明
用來指定當前工作目錄(或者稱為當前目錄)
當使用相對目錄的情況下,采用上一個WORKDIR指定的目錄作為基准
相當與cd 命令,但不同的是指定了WORKDIR后,容器啟動時執行的命令會在該目錄下執行
二、案例
1.dockerfile內部使用WORKDIR指令
首先,先創建一個dockerfile:
#base image FROM centos #MAINTAINER,this dockerfile creater MAINTAINER loose@docker.com #安裝wget命令,這里有需要讓我們輸入y/n選項,所以添加-y RUN yum install wget -y #創建/usr/local/tomcat目錄 RUN mkdir /usr/local/tomcat #定位到tomcat下載目錄 WORKDIR /usr/local/tomcat #wget tomcat.tar.gz到/usr/local/tomcat目錄 RUN wget http://mirrors.hust.edu.cn/apache/tomcat/tomcat-7/v7.0.86/bin/apache-tomcat-7.0.86.tar.gz
該dockerfile主要是創建一個目錄,然后定位到創建的目錄中,最后wget tomcat.tar.gz
其次,構建鏡像並查看鏡像:
最后,進入偽交互模式,查看dockerfile文件中WORKDIR定位的目錄中是否存在tomcat.tar.gz包:
2.在外部指定WORKDIR
可以在 docker run命令中用 -w參數覆蓋掉WORKDIR指令的設置,這時我們進入偽交互的時候順便解壓tomcat.tar.gz:
這時候是有解壓操作執行的,我們用-w覆蓋WORKDIR指令參數,再次解壓:
最后,我們再根據-w執行具體的路徑地址,再次解壓: