docker 6:入门,第 6 部分:部署您的应用
入门,第 6 部分:部署您的应用
预计阅读时间: 3 分钟
先决条件
- 安装 Docker 版本 1.13 或更高版本。
- 按照第 3 部分:先决条件中所述,获取 Docker Compose。
- 按照第 4 部分:先决条件中所述,获取 Docker Machine。
- 阅读第 1 部分中的新用户导引。
-
在第 2 部分中了解如何创建容器。
-
确保您已发布通过将其推送到镜像库创建的
friendlyhello
镜像。我们将在此处使用该共享镜像。 -
确保您的镜像充当已部署的容器。运行以下命令,并填写
username
、repo
和tag
信息:docker run -p 80:80 username/repo:tag
,然后访问http://localhost/
。 - 就近获取第 5 部分中最终版本的
docker-compose.yml
。
简介
在整个教程中,您一直在编辑同一 Compose 文件。好消息是,和在您的机器上一样,该 Compose 文件在生产中正常运行。我们将在此完成用于运行 Docker 化应用程序的一些选项。
选择选项
如果可以在生产中使用 Docker 社区版,您可以使用 Docker 云帮助在常用服务提供商(例如,Amazon Web Services、DigitalOcean 和 Microsoft Azure)处管理您的应用。
如需进行设置和部署:
- 将 Docker 云连接到您的首选供应商,为 Docker 云授予自动供应并为您实现 VM“Docker 化”的权限。
- 使用 Docker 云创建您的计算资源并创建您的 swarm。
- 部署您的应用。
注:我们将在此处链接到 Docker 云文档;请确保在完成每个步骤后返回到此页面。
连接 Docker 云
您可以在标准模式或 Swarm mode 下运行 Docker 云。
如果您要在标准模式下运行 Docker 云,请按照下面的说明将服务提供商连接到 Docker 云。
- Amazon Web Services 设置指南
- DigitalOcean 设置指南
- Microsoft Azure 设置指南
- Packet 设置指南
- SoftLayer 设置指南
- 使用 Docker 云代理程序创建您自己的主机
如果要在 Swarm mode 下运行(建议用于 Amazon Web Services 或 Microsoft Azure),请跳至关于如何创建 swarm 的下一节。
创建 swarm
已准备好创建 swarm?
-
如果您在 Amazon Web Services (AWS) 上,可以自动在 AWS 上创建 swarm。
-
如果您在 Microsoft Azure 上,可以自动在 Azure 上创建 swarm。
-
否则,在 Docker 云 UI 中创建您的节点 并通过 SSH via Docker Cloud 运行您在第 4 部分中学习的
docker swarm init
和docker swarm join
命令。最后,启用 Swarm Mode(方法是单击屏幕顶部的“切换”),然后注册 swarm(您刚才创建的)。
注:如果使用 Docker 云代理程序创建您自己的主机,此提供商不支持 swarm mode。您可以使用 Docker 云注册您自己的现有 swarm。
部署应用
通过 Docker 云连接到 swarm。在适用于 Mac 的 Docker 或适用于 Windows 的 Docker(Edge 版本)上,您可以通过桌面应用菜单直接连接到 swarm。
无论使用哪种方式,这都将打开一个终端,其环境为您的本地机器,但其 Docker 命令路由到云服务提供商上运行的 swarm。这与您已遵循的范例略有不同,在范例中您通过 SSH 发送命令。现在,您可以直接访问本地文件系统和远程 swarm,从而实现了非常简洁的命令:
docker stack deploy -c docker-compose.yml getstartedlab
好的!您的应用正在生产中运行,并且由 Docker 云管理。
祝贺您!
您已完成对整个 Docker 平台的完整技术栈、开发到部署浏览。
Docker 平台的内容远不止此处涵盖的内容,但您已了解容器、镜像、服务、swarm、技术栈、扩展、负载均衡、存储卷和布局约束的基本内容。
想要深入了解更多内容?以下是我们推荐的一些资源:
- 样板:我们的样板包含容器中运行的常用软件的多个示例,以及一些提供最佳实践的优秀实验室。
- 用户指南:用户指南中提供了一些示例,它们更深入地说明了网络和存储。
- 管理指南:涵盖如何管理 Docker 化生产环境。
- 训练:官方 Docker 课程,提供了现场指导和虚拟教室环境。
- 博客:涵盖 Docker 的最新内容。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 零经验选手,Compose 一天开发一款小游戏!
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!