docker入门之更新应用程序

指南/开始使用/入门指南/第 3 部分:更新应用程序

更新应用程序

在 第 2 部分中,您容器化了一个待办事项应用程序。在此部分中,您将更新应用程序和映像。您还将学习如何停止和删除容器。

更新源代码

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

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

     
    - 

    No items yet! Add one above!

    +

    You have no todo items yet! Add one above!

  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 的图形界面删除旧容器。选择您最满意的选项。

命令行界面 Docker 桌面

使用 CLI 删除容器

  1. 使用命令获取容器的ID docker ps

     
    $ docker ps
    
  2. 使用docker stop命令停止容器。替换为 中的 ID docker ps

     
    $ docker stop 
    
  3. 容器停止后,您可以使用docker rm命令将其删除。

     
    $ docker rm 
    

笔记

force您可以通过向命令添加标志来在单个命令中停止和删除容器docker rm。例如:docker rm -f


启动更新的应用程序容器

  1. 现在,使用命令启动更新的应用程序docker run

     
    $ docker run -dp 127.0.0.1:3000:3000 getting-started
    
  2. 在http://localhost:3000上刷新浏览器 ,您应该会看到更新后的帮助文本。

概括

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

相关信息:

  • docker CLI 参考

你可能感兴趣的:(docker,容器)