使用dockerfile文件創建鏡像時docker build沒有反應


問題:

  先 docker pull centos:7 拉取了一個官方的基礎鏡像,為后續創建jdk8鏡像做准備,在創建如下的dockerfile文件  

執行docker build -t jdk_8u191:20190307 . jdk_dockerfile  時都沒有反應

  jdk_dockerfile文件內容

# 以此鏡像作為基礎鏡像構建新的鏡像
FROM centos:7

# 維護者信息 MAINTAINER chen
# 將
jdk-8u191-linux-x64.tar.gz文件添加到新的鏡像的的/usr/local/路徑下,使用ADD指令會直接對jdk-8u144-linux-x64.tar.gz進行解壓縮,不用再單獨的tar解壓jdk了
ADD jdk-8u191-linux-x64.tar.gz /usr/local/

# 設置環境變量
ENV JAVA_HOME /usr/local/jdk1.8.0_191
ENV CLASSPATH $JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
ENV PATH $PATH:$JAVA_HOME/bin

 

 執行創建命令,沒有反應

root@ubuntu:/# docker build -t jdk_8u191:20190307 . -f jdk_dockerfile



解決:

  在自己的用戶目錄下重新創建 jdk_dockerfile文件,

然后執行

  

   

docker build -t jdk_8u191:20190307 . -f jdk_dockerfile

參數解釋:

  -t :指定創建的鏡像的名稱和tag,如-t jdk_8u191:20190307

  . 注意有一個.這個表示當前目錄,必不可少的

  -f : 指定要執行的dockerfile文件,如果文件名直接叫dockerfile,那么就不用-f參數了

 

順便使用該鏡像運行一個容器,查看一下jdk是否安裝成功

命令解釋

  docker images :查看所有鏡像

  docker run -d -it jdk_8u191:20190307 /bin/bash :使用鏡像運行一個容器

  docker ps :查看正在運行的容器

  docker exec -it 404 /bin/bash : 進入容器id為404開頭的容器中

 

分析:可能是由於本來的基礎鏡像是自己用戶創建的,用root用戶不能執行


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM