Docker—更新应用程序

在本部分中,你将更新应用程序和映像。您还将了解如何停止和移除容器。

一、更新源代码

在以下步骤中,当您没有任何待办事项列表项时,您将把“空文本”更改为“您还没有待办事项!在上面添加一个!”

1、在src/static/js/app.js文件中,更新第56行以使用新的空文本。

- <p className="text-center">No items yet! Add one above!</p>
+ <p className="text-center">You have no todo items yet! Add one above!</p>

2、使用docker Build命令构建映像的更新版本。

docker build -t getting-started .

3、使用更新的代码启动新容器。

docker run -dp 127.0.0.1:3000:3000 getting-started

您可能会看到这样的错误:

docker: Error response from daemon: driver failed programming external connectivity on endpoint laughing_burnell 
(bb242b2ca4d67eba76e79474fb36bb5125708ebdabd7f45c8eaf16caaabde9dd): Bind for 127.0.0.1:3000 failed: port is already allocated.

发生错误是因为在旧容器仍在运行时无法启动新容器。原因是旧容器已在使用主机的端口3000,并且计算机上只有一个进程(包括容器)可以侦听特定端口。要解决此问题,需要删除旧容器。

二、移除旧容器

若要删除容器,首先需要将其停止。一旦它停止,您可以将其删除。您可以使用 CLI 或 Docker Desktop 的图形界面删除旧容器。选择您最满意的选项。

1、使用CLI删除容器

  •  使用docker ps命令获取容器的ID。
 docker ps
  •  使用docker stop命令停止容器。将<the container id>替换为docker ps中的id。
docker stop <the-container-id>
  •  容器停止后,可以使用docker rm命令将其删除。
    docker rm <the-container-id>

    注意
    通过将force标志添加到docker rm命令,可以在单个命令中停止和删除容器。例如:docker rm-f<容器id>

2、启动更新的应用程序容器

  • 现在,使用docker run命令启动更新的应用程序。 
docker run -dp 127.0.0.1:3000:3000 getting-started
  • 在上刷新浏览器http://localhost:3000您应该会看到更新的帮助文本。

三、总结

在本节中,您学习了如何更新和重建容器,以及如何停止和删除容器。 

猜你喜欢

转载自blog.csdn.net/leesinbad/article/details/134685206