news 2026/5/8 8:37:37

零基础教程:Docker Compose安装到第一个应用部署

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
零基础教程:Docker Compose安装到第一个应用部署

快速体验

  1. 打开 InsCode(快马)平台 https://www.inscode.net
  2. 输入框内输入如下内容:
创建一个最简单的Docker Compose学习示例,包含:1) 一个Nginx Web服务器;2) 一个静态HTML页面;3) 清晰的步骤说明注释。要求配置中展示基本概念:services、volumes、ports等,并添加如何访问服务的说明。文件大小不超过50行,使用最简配置。
  1. 点击'项目生成'按钮,等待项目生成完整后预览效果

最近在学习Docker Compose,发现它真的是简化多容器应用部署的神器。作为一个刚入门的小白,记录下从安装到运行第一个应用的完整过程,希望能帮到同样想尝试的朋友。

  1. 安装Docker Compose

首先需要确保系统已经安装了Docker引擎。在Linux系统上,可以通过包管理器直接安装:

sudo apt-get update sudo apt-get install docker-ce docker-ce-cli containerd.io

Windows和Mac用户可以直接下载Docker Desktop,它已经包含了Docker Compose。

验证安装是否成功:

docker-compose --version
  1. 创建项目目录

新建一个项目文件夹,比如my_first_compose,所有文件都将放在这个目录下。

  1. 准备静态网页

创建一个简单的index.html文件,内容可以很简单:

<!DOCTYPE html> <html> <head> <title>My First Compose</title> </head> <body> <h1>Hello Docker Compose!</h1> </body> </html>
  1. 编写docker-compose.yml

这是最核心的配置文件,定义了我们的服务:

version: '3' services: web: image: nginx:alpine ports: - "8080:80" volumes: - ./index.html:/usr/share/nginx/html/index.html

这个配置做了几件事: - 使用轻量级的nginx:alpine镜像 - 将容器80端口映射到主机的8080端口 - 把本地的index.html挂载到nginx的默认网页目录

  1. 启动服务

在项目目录下运行:

docker-compose up -d

-d参数让服务在后台运行。

  1. 访问服务

打开浏览器访问http://localhost:8080,就能看到我们准备的静态页面了。

  1. 管理服务

一些常用命令: -docker-compose down停止并移除容器 -docker-compose ps查看运行状态 -docker-compose logs查看日志

  1. 扩展:添加数据库服务

如果想体验多服务协作,可以扩展配置:

version: '3' services: web: image: nginx:alpine ports: - "8080:80" volumes: - ./index.html:/usr/share/nginx/html/index.html depends_on: - db db: image: mysql:5.7 environment: MYSQL_ROOT_PASSWORD: example

这个配置添加了一个MySQL服务,web服务通过depends_on声明依赖关系。

整个过程下来,发现Docker Compose确实让多容器应用的部署变得非常简单。配置文件清晰明了,一条命令就能启动整个应用栈。对于开发环境搭建、测试部署特别方便。

如果想快速体验这种容器化部署,可以试试InsCode(快马)平台,它内置了完整的Docker环境,可以直接运行这类容器化应用,省去了本地安装配置的麻烦。我试过在上面部署类似的Web服务,整个过程非常流畅,特别适合新手快速上手实践。

快速体验

  1. 打开 InsCode(快马)平台 https://www.inscode.net
  2. 输入框内输入如下内容:
创建一个最简单的Docker Compose学习示例,包含:1) 一个Nginx Web服务器;2) 一个静态HTML页面;3) 清晰的步骤说明注释。要求配置中展示基本概念:services、volumes、ports等,并添加如何访问服务的说明。文件大小不超过50行,使用最简配置。
  1. 点击'项目生成'按钮,等待项目生成完整后预览效果
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/2 10:33:12

5个提升工作效率的右键菜单实用案例

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容&#xff1a; 开发一个多功能文本编辑器的右键菜单系统&#xff0c;包含&#xff1a;1. 基础文本操作(复制/粘贴) 2. 格式设置(加粗/斜体) 3. 插入特殊字符 4. 翻译选中文本 5. 搜索选中内容。要…

作者头像 李华
网站建设 2026/5/1 10:44:24

PythonWin7项目:Windows 7系统运行最新Python版本的终极解决方案

PythonWin7项目&#xff1a;Windows 7系统运行最新Python版本的终极解决方案 【免费下载链接】PythonWin7 Python 3.9 installers that support Windows 7 SP1 and Windows Server 2008 R2 项目地址: https://gitcode.com/gh_mirrors/py/PythonWin7 还在为Windows 7系统…

作者头像 李华
网站建设 2026/4/27 20:20:46

GodMode9终极使用指南:3DS文件浏览器一键安装与快速配置

GodMode9终极使用指南&#xff1a;3DS文件浏览器一键安装与快速配置 【免费下载链接】GodMode9 GodMode9 Explorer - A full access file browser for the Nintendo 3DS console :godmode: 项目地址: https://gitcode.com/gh_mirrors/go/GodMode9 想要在任天堂3DS上实现…

作者头像 李华
网站建设 2026/5/2 7:11:04

文字识别进入平民化时代:一键部署成标配

文字识别进入平民化时代&#xff1a;一键部署成标配 &#x1f4d6; 项目简介&#xff1a;高精度通用 OCR 的平民化实践 OCR&#xff08;Optical Character Recognition&#xff0c;光学字符识别&#xff09;技术早已不再是科研实验室或大型企业的专属工具。随着深度学习模型的轻…

作者头像 李华
网站建设 2026/5/2 20:26:28

IDEA命令行优化:从10分钟到10秒的蜕变

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容&#xff1a; 开发一个性能对比工具&#xff0c;展示不同解决方案处理IDEA命令行过长问题的效率&#xff1a;1.传统手动修改方式 2.脚本自动化方案 3.AI优化方案。要求&#xff1a;1.内置测试用…

作者头像 李华
网站建设 2026/5/2 18:33:43

TeslaMate位置管理终极指南:从零开始掌握智能地理围栏技术

TeslaMate位置管理终极指南&#xff1a;从零开始掌握智能地理围栏技术 【免费下载链接】teslamate teslamate-org/teslamate: TeslaMate 是一个开源项目&#xff0c;用于收集特斯拉电动汽车的实时数据&#xff0c;并存储在数据库中以便进一步分析和可视化。该项目支持监控车辆状…

作者头像 李华