从dockerfile构建Docker映像后,我看到映像已成功构建,但我该如何处理它呢?我不应该能够运行它作为一个容器吗?


当前回答

Hey,

只需要5个步骤就可以将docker image作为容器运行

docker build -t dockerImageName。 docker命令-t -d -p 3030:3000——name containerName dockerImageName

您可以指定自己的新containerName

检查容器运行类型

Docker ps -all 4. 最后打开你的谷歌chrome浏览器,输入localhost:3030

您已经成功地将docker image作为容器运行 恭喜:)

如果docker容器处于退出状态,则键入下面的命令运行

docker start ContainerId

其他回答

$ docker images
REPOSITORY                TAG                 IMAGE ID            CREATED            
jamesmedice/marketplace   latest              e78c49b5f380        2 days ago          
jamesmedice/marketplace   v1.0.0              *e78c49b5f380*        2 days ago          


$ docker run -p 6001:8585 *e78c49b5f380*

下面是一个在Docker中运行webdev服务的例子。 映像的名称是morrisjobke/webdav。您可以从Docker Hub中获取它。

运行这些映像之后,就可以在http://localhost:8888/webdav上访问WebDAV实例。在内部,文件夹/var/webdav被用作WebDAV的根目录。

你可以通过以下方式运行这个容器:

$ docker run -d -e USERNAME=test -e PASSWORD=test -p 8888:80 morrisjobke/webdav

由于您已经从Dockerfile中创建了一个映像,因此该映像当前不是处于活动状态。为了工作,您需要在容器中运行此映像。

$ docker images命令描述当前本地存储库中有多少映像可用。 而且

docker ps -a

显示当前有多少容器可用,即活动容器和退出容器的列表。

在容器中运行映像有两种方式:

$ docker run [OPTIONS] IMAGE[:TAG|@DIGEST] [COMMAND] [ARG...]

分离模式:

-d=false: Detached mode: Run container in the background, print new container id

交互模式:

-i :Keep STDIN open even if not attached

下面是Docker run命令

$ docker run image_name:tag_name

有关Docker运行的更多说明,请访问Docker运行参考。

这是理解Docker的最好材料。

我也有同样的问题。我运行Docker映像,它创建了一个带有特定CONTAINER_ID的容器。我想使用相同的容器:

首先运行Docker映像:

docker run -it -p 8888:8888 -p 6006:6006 -v ~/:/host waleedka/modern-deep-learning

然后列出你做过的所有容器:

sudo docker ps -a

然后选择你想要使用的容器(我的是167ddd6d7f15):

sudo docker start -ai 167ddd6d7f15

请执行以下步骤:

$ docker图像 您将得到一个包含所有指定标记的本地Docker映像的列表。 $ docker运行image_name:tag_name 如果你没有指定tag_name,它会自动运行一个带有'latest'标签的图像。 除了image_name,还可以指定一个图像ID(没有tag_name)。