如何重新启动Docker容器?

如何重新启动Docker容器?,docker,Docker,这就是ps-a给我们的 NAMES 4514ea1b7b22 debian "--name gallant_spen…" 9 minutes ago Created peaceful_engelbart df9bd2731a2b debian

这就是ps-a给我们的

              NAMES
4514ea1b7b22        debian                                     "--name gallant_spen…"   9 minutes ago       Created                                                  peaceful_engelbart
df9bd2731a2b        debian                                     "--name gallant_spen…"   9 minutes ago       Created                                                  happy_hodgkin
dd5b1f1b39ec        redis                                      "docker-entrypoint.s…"   32 minutes ago      Up 31 minutes                 6379/tcp                   myred
ffd6ef9d8bd5        redis                                      "docker-entrypoint.s…"   32 minutes ago      Exited (127) 32 minutes ago                              festive_jennings
9d01d321adad        redis                                      "docker-entrypoint.s…"   33 minutes ago      Exited (0) 32 minutes ago                                agitated_shannon
eb7c13e7cdee        debian                                     "ls /data"               2 days ago          Exited (0) 9 seconds ago                                 gallant_spence
8991a31b1e38        debian                                     "ls /data"               2 days ago          Exited (0) 2 days ago                                    determined_minsky
我试过这样做

docker start  `docker ps -q -l` gallant_spence
但错误也会发生

Error response from daemon: OCI runtime create failed: container_linux.go:348: starting container process caused "exec: \"--name\": executable file not found in $PATH": unknown
gallant_spence
Error: failed to start containers: 4514ea1b7b22
我对我以前在这个容器上的工作中装载的数据卷感兴趣

 "Mounts": [
        {
            "Type": "bind",
            "Source": "/home/mm/code/lesson_04",
            "Destination": "/data",
            "Mode": "",
            "RW": true,
            "Propagation": "rprivate"
        }
    ],
如果我尝试

mm@6830s:~$ docker start -ai gallant_spence 
one_sample.py
parallel_series.py
Python文件被添加到数据文件夹中,所以我认为它是有效的。然后我再试一次 docker ps

CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS               NAMES
dd5b1f1b39ec        redis               "docker-entrypoint.s…"   About an hour ago   Up About an hour    6379/tcp            myred

热修复此问题?

您可以使用

docker start [OPTIONS] CONTAINER [CONTAINER...]
对于您的情况,您可以使用:

  • docker start gallant\u spence
  • docker启动eb7c13e7cdee
docker ps-a
结果所示,您的容器配置了此
CMD

"ls /data"
这意味着每次启动容器时,该命令将运行,然后容器将退出。这就是容器的工作原理。当主进程完成时,它们退出


关于您得到的错误和
docker ps-q-l
  • -q
    (来自“quiet”)告诉命令仅打印容器ID
  • -l
    (来自“last”)告诉命令打印最新创建的容器
这意味着上面的命令将返回:
4514ea1b7b22
。如果我们把所有的东西放在一起

你的命令:

docker start  `docker ps -q -l` gallant_spence
转向:

docker start 4514ea1b7b22 gallant_spence

您得到的失败消息是针对
4514ea1b7b22
的,因为它没有正确设置
CMD
来启动。我看到类似这样的内容:
--命名gallant\u spen…

启动一个停止的容器,其中包含

docker start [OPTIONS] CONTAINER [CONTAINER...]
对于您的情况,您可以使用:

  • docker start gallant\u spence
  • docker启动eb7c13e7cdee
docker ps-a
结果所示,您的容器配置了此
CMD

"ls /data"
这意味着每次启动容器时,该命令将运行,然后容器将退出。这就是容器的工作原理。当主进程完成时,它们退出


关于您得到的错误和
docker ps-q-l
  • -q
    (来自“quiet”)告诉命令仅打印容器ID
  • -l
    (来自“last”)告诉命令打印最新创建的容器
这意味着上面的命令将返回:
4514ea1b7b22
。如果我们把所有的东西放在一起

你的命令:

docker start  `docker ps -q -l` gallant_spence
转向:

docker start 4514ea1b7b22 gallant_spence

您得到的失败消息是针对
4514ea1b7b22
的,因为它没有正确设置
CMD
来启动。我看到类似这样的东西:
--name gallant\u spen…

你明白
docker ps-q-l
做什么吗?@tgogos我发现答案是这样的,可能我不明白。我编辑了答案,start也没用。你明白
docker ps-q-l
做什么吗?@tgogos我发现答案是这样的,可能我不明白。我已经编辑了答案,开始也没用。