我有以下文件结构
\n\nproject \n\xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 app\n\xe2\x94\x82 \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 main.py\n\xe2\x94\x82 \xe2\x94\x94\xe2\x94\x80\xe2\x94\x80 combine.py\n\xe2\x94\x82 \xe2\x94\x94\xe2\x94\x80\xe2\x94\x80 scrape.py\n\xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 resources\n| \xe2\x94\x94\xe2\x94\x80\xe2\x94\x80 secrets.py\n| \xe2\x94\x94\xe2\x94\x80\xe2\x94\x80 config.py\n| \xe2\x94\x94\xe2\x94\x80\xe2\x94\x80 requirements.txt\n|--- Dockerfile\nRun Code Online (Sandbox Code Playgroud)\n\n我的 Dockerfile 看起来像
\n\nFROM python:3.8\nRUN mkdir /project\nWORKDIR /project\n\nCOPY ./resources/requirements.txt ./\nADD ./resources/. /resources/\nADD ./app/. /app/\n\nRUN pip install -r ./requirements.txt\n\nCMD [ "python", "./app/main.py" ]\nRun Code Online (Sandbox Code Playgroud)\n\n我使用构建图像docker build -t my-app .并使用运行docker run my-app
我收到以下错误\npython: can\'t open file \'./app/main.py\': [Errno 2] No such file or directory
我可以保留子目录文件结构并成功运行 Docker 映像吗?我之前看到的所有教程/问题都将 Dockerfile 与其依赖的所有代码放在同一目录中 - 这是一个要求吗?提前致谢!
\n我正在练习使用 Docker ( https://www.docker.com/play-with-docker )构建 Web 应用程序。我的 Dockerfile 看起来像
# Test web-app to use with Pluralsight courses and Docker Deep Dive book
# Linux x64
FROM alpine
LABEL maintainer="nigelpoulton@hotmail.com"
# Install Node and NPM
RUN apk add --update nodejs nodejs-npm
# Copy app to /src
COPY . /src
WORKDIR /src
# Install dependencies
RUN npm install
EXPOSE 8080
ENTRYPOINT ["node", "./app.js"]
Run Code Online (Sandbox Code Playgroud)
摘自https://github.com/nigelpoulton/psweb/blob/master/Dockerfile。我可以构建映像并运行容器,但是我很难查看应用程序。
docker container run -d —name web1 -p 8080:8080 psweb
Run Code Online (Sandbox Code Playgroud)
从本地终端运行时,我可以在 localhost:8080 上看到它,但我不知道我需要去哪个(如果可能)IP 在 Web 浏览器中查看它。
在玩 …