如何重新连接到docker容器

svn*_*vnm 3 node.js docker boot2docker

我有一个运行ubuntu的docker容器和一个简单的节点快速站点.

我按如下方式连接到容器

docker run -i -t -p 8080:3000 node-express
Run Code Online (Sandbox Code Playgroud)

容器中的节点应用程序正在以pm2运行,因此一旦我退出容器,它就会继续运行.

CONTAINER ID        IMAGE
f32de2737e80        node-express:latest
Run Code Online (Sandbox Code Playgroud)

现在假设我想对我的应用程序进行更新.

我假设我需要连接到容器,停止节点应用程序,并进行更新,例如 git pull然后重新启动它.

我的第一个问题是如何重新连接到这个容器?

我有另一个问题,这是在生产中更新正在运行的容器的常规方法吗?

Von*_*onC 7

您可以考虑docker exec在正在运行的容器中打开bash.

另请参见" docker attach和docker exec之间的区别 "

docker exec -it f32de2737e80 bash
Run Code Online (Sandbox Code Playgroud)

但是如评论所述,应该通过修改Dockerfile并重建图像来更新应用程序.