我使用以下命令从映像启动docker容器:
$ docker run -d myimage /bin/bash -c "mycommand"
Run Code Online (Sandbox Code Playgroud)
当"mycommand"
完成后,容器停止(我想这已停止),但它并没有被删除,因为我可以用这个命令来查看它:
$ docker ps -a
Run Code Online (Sandbox Code Playgroud)
有没有办法让restart
这个容器具有相同的参数并保持数据生成mycommand
?
lmt*_*mtx 75
是的,当初始命令完成其执行时,容器停止.
您可以使用以下命令启动停止的容器
docker start container_name
如果要查看命令的输出,则应添加-ai
选项:
docker start -ai container_name
PS.有一个,docker restart container_name
但用于重新启动正在运行的容器 - 我相信这不是你的情况.
小智 6
它应该是
$ docker restart container_id # OR
$ docker restart container_name
Run Code Online (Sandbox Code Playgroud)
首先,$ docker ps -a
显示所有容器(正在运行的容器和已停止的容器),因此这就是您未看到列出的已停止容器的原因。
其次,您可以轻松启动已停止的容器运行:
$ docker start container_name
Run Code Online (Sandbox Code Playgroud)
启动容器后,可以通过以下方式运行命令:
$ docker exec -it container_name bash -c "mycommand"
Run Code Online (Sandbox Code Playgroud)
您在容器中创建的内容将一直存在于容器中。如果即使删除容器也要保留数据,则可以使用卷。
归档时间: |
|
查看次数: |
51068 次 |
最近记录: |