英語不是我的母語,所以我提前為非常可能的錯誤道歉。
一般來說,我是 Docker 和 Linux 的新手,并且正在嘗試學習 rn。我有一個任務,我需要基于 tomcat:9.0-alpine 創建 dockerfile,然后在這個確切的檔案中克隆提供的存盤庫。然后我需要從這個 dockerfile 構建影像,運行容器,然后在瀏覽器中訪問 index.html,我將在其中看到特定頁面。這就是我的 dockerfile 的樣子:
FROM tomcat:9.0-alpine
RUN apk update
RUN apk add git
RUN git clone https://github.com/a1qatraineeship/docker_task.git $TOMCAT_HOME/webapps/whateverApp/
當我從中構建影像時,我看到 repo 被克隆到我指定的目錄中:
#7 [4/4] RUN git clone https://github.com/a1qatraineeship/docker_task.git $TOMCAT_HOME/webapps/aquaApp/
#7 sha256:72b802c3b98dad7151daeba7db257b7b1f1089dc26fb5809fee52f881e19edb5
#7 0.319 Cloning into '/webapps/whateverApp'...
#7 DONE 1.9s
但是當我運行容器并轉到 http://localhost:8888/whateverApp/ 時,我得到“404 - 未找到”。如果我訪問 http://localhost:8888,我會看到 Tomcat 默認頁面,因此 Tomcat 可以正常作業。如果我 bash 進入容器并轉到 /webapps - 我看不到我在其中指定的檔案夾(whateverApp)。
我錯過了什么?一切似乎都正常,沒有拋出錯誤,但看不到所謂的克隆存盤庫。在我看到的示例中,沒有提及任何訪問限制或其他任何內容。甚至我的老師之前也說過,整個 dockerfile 基本上由 4 行組成,而我真正需要找出的唯一一件事是克隆 repo 的位置以使一切正常作業。但是如果它根本不克隆,我如何驗證我是否將檔案放置在正確的位置?
uj5u.com熱心網友回復:
The problem is your environment variable, is empty when the container run TOMCAT_HOME
FROM tomcat:9.0-alpine
ENV TOMCAT_HOME=/usr/local/tomcat
RUN apk update
RUN apk add git
RUN git clone https://github.com/a1qatraineeship/docker_task.git $TOMCAT_HOME/webapps/whateverApp/
and with that ENV should work, gook luck!
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/422557.html
標籤:
