在 Laravel 项目中如何以及为何使用 Docker?

发布: (2026年3月5日 GMT+8 14:53)
3 分钟阅读
原文: Dev.to

Source: Dev.to

为什么在 Laravel 项目中应使用 Docker?

每个后端开发者在职业生涯的某个阶段都不得不使用 XAMPP、WAMP 或手动安装的 Linux 服务(Apache、PHP‑FPM)。这种经验表明 “在我的电脑上可以运行” 的借口已经不再适用于现代编程。每次从零搭建本地环境、处理包版本冲突都是在浪费时间。

随着项目规模扩大、团队协作以及部署到不同的服务器环境,旧的 “本地安装” 方式会导致严重问题:代码在我的电脑上能跑,为什么在服务器上崩溃? 这个问题正是由此产生。

Docker 解决了这一问题。Docker 将软件及其运行所需的全部依赖打包进称为 “容器” 的隔离、标准化的单元中。

隔离

  • PHP、MySQL 和 Redis 各自运行在独立的容器中。
  • 不会相互干扰,也不会影响你的操作系统配置。
  • 系统始终保持干净。

可移植性与稳定性

  • 在 Linux 上编写的代码和架构,团队成员的 Windows、Mac 或生产服务器上也能以同样的方式运行。
  • 不会出现意外。

可复用

  • 不需要为每个新项目从头配置 php.inimy.cnf
  • 一个 docker‑compose.yml 文件即可描述并自动化整个架构。

Laravel Sail:最简洁、最清晰的方式

从零学习 Docker 并编写复杂的 Dockerfile 可能会耗费时间。如果没有特殊需求,Laravel Sail 可以简化这一过程。

创建新项目

curl -s "https://laravel.build/menim-yeni-layihem" | bash

此命令在后台创建一个新的 Laravel 项目,并准备好所需的 Docker 容器。

为已有项目添加 Sail

composer require laravel/sail --dev
php artisan sail:install

这两个步骤会询问你在项目中需要哪些服务,并在项目目录下生成 docker-compose.yml 文件。

启动容器

./vendor/bin/sail up -d

-d 参数让容器以 detached mode(后台)方式运行。此后不再需要打开 XAMPP 的控制面板,或去寻找 “Apache 为什么报错?” 的答案。使用 Laravel Sail,你可以获得干净、现代且在任何地方都表现一致的架构。

0 浏览
Back to Blog

相关文章

阅读更多 »