本教程是介绍 Docker 与 Visual Studio Code(VS Code)一起使用的四部分系列的第二部分。
本教程中,您将学习如何:
- 更新代码并替换容器。
- 共享映像。
- 在新实例上运行映像。
先决条件
本教程将继续学习上一教程: 使用 Visual Studio Code 创建容器应用。 若要在此处继续,您需要第 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>
保存更改。
停止并删除容器的当前版本。 多个容器不能使用相同的端口。
右键单击 入门 容器,然后选择“ 删除”。
或者,在命令行中,使用以下命令获取容器 ID。
docker ps
然后停止并删除容器:
docker stop <container-id> docker rm <container-id>
生成映像的更新版本。 在文件资源管理器中,右键单击 Dockerfile,然后选择“ 生成映像”。
或者,若要在命令行上生成,请将目录更改为包含 Dockerfile 的文件夹,并使用之前使用的相同命令。
docker build -t getting-started .
启动使用更新代码的新容器。
docker run -dp 3000:3000 getting-started
刷新浏览器
http://localhost:3000
以查看更新后的帮助文本。
共享映像
生成映像后,可以共享该映像。 若要共享容器映像,请使用容器注册表。 默认注册表是 Docker Hub,它是我们使用的所有映像的来源。
若要推送映像,首先需要在 Docker 中心创建存储库。
转到 Docker 中心 并登录到帐户。
选择“ 创建存储库”。
对于存储库名称,请输入
getting-started
。 确保 可见性 是 公共的。选择 创建。
在页面右侧,你将看到一个名为 Docker 命令的部分。 本部分提供了一个用于运行以推送到此存储库的示例命令。
在 VS Code 中,在容器资源管理器的 REGISTRIES 下,单击插件图标,连接到注册表,然后选择 Docker 中心。
输入 Docker 中心帐户名称和密码。
在 VS Code 容器资源管理器的 “映像”下,右键单击映像标记,然后选择“ 推送”。 输入命名空间和标记,或接受默认值。
若要使用命令行推送到 Docker 中心,请使用此过程。
登录到 Docker 中心:
docker login -u <username>
使用以下命令为 入门 映像提供新名称。
docker tag getting-started <username>/getting-started
使用以下命令上传容器。
docker push <username>/getting-started
在新实例上运行映像
生成映像并将其推送到注册表后,请尝试在从未见过此容器映像的新实例上运行应用。 若要运行应用,请使用 Play 和 Docker。
打开浏览器以试用 Docker。
使用 Docker 中心帐户登录。
选择“ 开始 ”,然后选择左侧栏中的 “+ 添加新实例 ”链接。 几秒钟后,终端窗口将在浏览器中打开。
在终端中,启动应用。
docker run -dp 3000:3000 <username>/getting-started
Play with Docker 会拉取你的镜像并启动它。
选择 3000 徽章,位于 打开端口 旁边。 你应该看到应用与您的修改。
如果 3000 徽章没有显示,请选择 打开端口,然后输入 3000。
清理资源
请保留您迄今为止所做的一切,以继续这一系列教程。
后续步骤
恭喜。 你已完成第 2 部分,并学习了如何更新代码并在新实例上运行映像。
下面是一些可能对你有用的资源:
接下来,尝试本系列中的下一教程: