Docker构建创建并标记Docker运行无法找到的映像



我得到了一个Docker容器中的项目。我已经设法构建了Docker容器映像并对其进行了标记,但当我运行它时,我遇到了问题。

bash-5.1$ docker build -t game:0.0.1 -t game:latest .
Sending build context to Docker daemon  2.584MB
Step 1/12 : FROM nvidia/cuda:10.2-base-ubuntu18.04
---> 84b82c2f5736
Step 2/12 : MAINTAINER me
---> Using cache
---> b8a86a8860d5
Step 3/12 : EXPOSE 5006
---> Using cache
---> fabdfc06768c
Step 4/12 : EXPOSE 8888
---> Using cache
---> a6f8585ce52d
Step 5/12 : ENV DEBIAN_FRONTEND noninteractive
---> Using cache
---> c4dd4de87fdc
Step 6/12 : ENV WD=/home/game/
---> Using cache
---> 871163f5db29
Step 7/12 : WORKDIR ${WD}
---> Using cache
---> 36678a12e551
Step 8/12 : RUN apt-get -y update &&     apt-get -y upgrade &&     apt-get -y install git ssh pkg-config python3-pip python3-opencv
---> Using cache
---> 4b83b4944484
Step 9/12 : COPY requirements.txt  /requirements.txt
---> Using cache
---> 8e1db9206e80
Step 10/12 : RUN cd / &&      python3 -m pip install --upgrade pip &&     pip3 install -r requirements.txt
---> Using cache
---> e096029d458a
Step 11/12 : CMD ["start.py"]
---> Using cache
---> 795bb5a65bc8
Step 12/12 : ENTRYPOINT ["python3"]
---> Using cache
---> 59b472b693f2
Successfully built 59b472b693f2
Successfully tagged game:0.0.1
Successfully tagged game:latest
bash-5.1$ docker run -it -e DISPLAY=$DISPLAY -v /tmp/.X11-unix:/tmp/.X11-unix game:latest
Unable to find image 'game:latest' locally
docker: Error response from daemon: pull access denied for game, repository does not exist or may require 'docker login': denied: requested access to the resource is denied.
See 'docker run --help'.
bash-5.1$ sudo docker run -it -e DISPLAY=$DISPLAY -v /tmp/.X11-unix:/tmp/.X11-unix game:latest

它似乎没有找到游戏:最新的图像,尽管上面命令的输出说它只是创建了它

我也会在登录会话后尝试这样做。

我试着运行59b472b693f2(它是什么,是容器哈希代码吗?(:

bash-5.1$ docker run 59b472b693f2
python3: can't open file 'start.py': [Errno 2] No such file or directory
bash-5.1$ ls
data_collection  demonstrateur.ipynb  demo.py  Dockerfile  examples  README.md  requirements.txt  serious_game  start.py  test
bash-5.1$ 

以下是可用图像列表:

bash-5.1$ docker images 
REPOSITORY    TAG                     IMAGE ID       CREATED          SIZE
game          0.0.1                   7e7ad7272cf0   15 minutes ago   1.77GB
game          latest                  7e7ad7272cf0   15 minutes ago   1.77GB
ubuntu        latest                  ba6acccedd29   7 weeks ago      72.8MB
hello-world   latest                  feb5d9fea6a5   2 months ago     13.3kB
nvidia/cuda   10.2-base-ubuntu18.04   84b82c2f5736   2 months ago     107MB
bash-5.1$ docker run -it -e DISPLAY=$DISPLAY -v /tmp/.X11-unix:/tmp/.X11-unix game:latest
python3: can't open file 'start.py': [Errno 2] No such file or directory
bash-5.1$ 

我试图将其添加到Dockerfile中,但仍然得到了相同的错误:

Removing intermediate container 10f2d7506d17
---> 1b776923e5a9
Step 11/13 : COPY start.py /start.py
---> 172c81ff16e9
Step 12/13 : CMD ["start.py"]
---> Running in c7217e2e0f21
Removing intermediate container c7217e2e0f21
---> eaf947ffa0b1
Step 13/13 : ENTRYPOINT ["python3"]
---> Running in 77e2e7b90658
Removing intermediate container 77e2e7b90658
---> 924d8c473e36
Successfully built 924d8c473e36
Successfully tagged seriousgame:0.0.1
Successfully tagged seriousgame:latest
bash-5.1$ docker run -it -e DISPLAY=$DISPLAY -v /tmp/.X11-unix:/tmp/.X11-unix seriousgame:latest
python3: can't open file 'start.py': [Errno 2] No such file or directory

这是我的Dockerfile:

#############################################################################################################
#
#   Creation du container
#
##############################################################################################################
FROM nvidia/cuda:10.2-base-ubuntu18.04
MAINTAINER me
EXPOSE 5006
EXPOSE 8888
ENV DEBIAN_FRONTEND noninteractive
ENV WD=/home/game/
WORKDIR ${WD}

# Add git and ssh
RUN apt-get -y update && 
apt-get -y upgrade && 
apt-get -y install git ssh pkg-config python3-pip python3-opencv
# Dépendances python
COPY requirements.txt  /requirements.txt
RUN cd / && 
python3 -m pip install --upgrade pip && 
pip3 install -r requirements.txt
COPY start.py /start.py
CMD ["start.py"]
ENTRYPOINT ["python3"]

以下是我项目中的所有文件:

bash-5.1$ ls
data_collection  demonstrateur.ipynb  demo.py  Dockerfile  examples  README.md  requirements.txt  serious_game  start.py  test

在您发布的第一块代码中,它显示Successfully tagged game:latestSuccessfully tagged game:0.0.1,但在docker images输出中,您看不到这些图像。查看docker images的输出,我发现上次构建名为serious-game的映像是在1小时前。我猜您试图重命名图像,但图像ID没有更改

您可以尝试使用docker image rm命令(docs(删除旧映像,然后尝试重新构建它。要执行的命令序列是下面的代码块。数据应该是安全的,因为我看到你在使用卷(我认为你知道你在做什么(。

docker image rm 59b472b693f2
docker build -t game:0.0.1 -t game:latest .

序列59b472b693f2是Docker本地环境中映像的唯一ID(您可以假设它是一个与数据库中用于索引的ID类似的ID(。

相关内容

  • 没有找到相关文章

最新更新