[英]Start container by image ID
根据 Docker 手册,启动容器的命令是docker start [container_name]
。 但是,以下命令中未提及该名称。
$ docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
nvcr.io/nvidia/cuda 11.6.0-devel-ubuntu20.04 44b919ab35af 3 weeks ago 5.09GB
nvcr.io/nvidia/cuda latest 539690cdfcd6 15 months ago 4.77GB
$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
如何从标签或图像 ID 开始?
更新:
有一个 Dockerfile 其中包含
FROM nvcr.io/nvidia/cuda:11.6.0-devel-ubuntu20.04
RUN apt-get update
WORKDIR /opt
RUN apt-get update
RUN apt-get update && apt-get install -y --no-install-recommends \
ca-certificates \
build-essential \
git \
python \
python-pip
当我运行docker build.
,我看到了拉取图像和 apt 命令的步骤。 但它因找不到 python-pip 的错误而终止。
...
Building dependency tree...
Reading state information...
Package python-pip is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source
However the following packages replace it:
python3-pip
E: Package 'python-pip' has no installation candidate
The command '/bin/sh -c apt-get update && apt-get install -y --no-install-recommends ca-certificates build-essential git python python-pip' returned a non-zero code: 100
错误本身不是问题。 我想ssh到容器里看看/opt里面的文件夹,但是docker ps
显示,没有容器。
$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
Docker 镜像和容器是不同的东西。 您首先需要从图像创建容器。
docker create [OPTIONS] IMAGE [COMMAND] [ARG...]
停止的容器不会显示在 docker ps中,除非您指定-a
标志:
docker ps -a
然后就可以启动创建好的容器了
docker start CONTAINER
如果需要,您可以使用run一步执行创建和启动:
docker run [OPTIONS] IMAGE[:TAG|@DIGEST] [COMMAND] [ARG...]
更新:
docker 构建命令用于创建图像而不是容器。 创建映像后,您需要运行它来创建容器。
看起来您的图像构建不正确。 尝试用python3
和python3-pip
替换python
和python-pip
pip 并重建。
我还建议标记图像以便以后更容易找到它:
docker build -t my-image:latest .
正确创建图像后,找到它(或者如果您标记了它,则只使用标签)并运行它。
如果您标记了图像并且您只想在容器内使用 shell 然后运行它
docker run -it my-image:latest /bin/bash
-it
选项使 shell 可交互, my-image:latest
是您要从中创建容器的图像,最后/bin/bash
是您将在新创建的容器中执行的命令(在这种情况下,它将为您提供一个壳)。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.