laravel如何使用Docker进行本地环境搭建_Laravel Docker本地环境搭建教程

使用Docker搭建Laravel开发环境可避免本地依赖问题。1. 安装Docker及Compose并验证;2. 用Composer创建Laravel项目;3. 创建docker-compose.yml定义Nginx、PHP-FPM、MySQL服务;4. 编写Dockerfile构建PHP镜像;5. 配置Nginx的default.conf;6. 启动容器并执行composer install、key:generate、migrate;7. 浏览器访问localhost:8080查看页面。热更新支持修改代码即时生效,权限问题可通过chown命令解决。该方案提升团队环境一致性与开发效率。

laravel如何使用docker进行本地环境搭建_laravel docker本地环境搭建教程

使用 Docker 搭建 Laravel 本地开发环境,可以快速统一团队开发环境,避免“在我机器上能跑”的问题。整个过程不需要在本地安装 PHP、Nginx、MySQL 等服务,所有依赖都运行在容器中。

Docker 环境准备

确保你的系统已安装以下工具:

Docker Desktop(Windows/macOS)或 Docker Engine(Linux)Docker Compose(新版 Docker Desktop 已集成)

安装完成后,在终端运行 docker –version 和 docker-compose –version 验证是否正常。

创建 Laravel 项目并配置 Docker

你可以使用 Composer 创建新项目,也可以将 Docker 加入已有项目。

composer create-project laravel/laravel myapp

进入项目目录:

cd myapp

在项目根目录创建以下文件:

1. docker-compose.yml

定义 Nginx、PHP-FPM、MySQL 容器:

version: ‘3’
services:
  nginx:
    image: nginx:alpine
    ports:
      – “8080:80”
    volumes:
      – .:/var/www/html
      – ./nginx/default.conf:/etc/nginx/conf.d/default.conf
    depends_on:
      – php
  php:
    build:
      context: .
      dockerfile: Dockerfile
    volumes:
      – .:/var/www/html
    environment:
      – “DB_HOST=mysql
      – “DB_PORT=3306”
      – “DB_DATABASE=laravel”
      – “DB_USERNAME=root”
      – “DB_PASSWORD=password
  mysql:
    image: mysql:8.0
    environment:
      – “MYSQL_ROOT_PASSWORD=password”
      – “MYSQL_DATABASE=laravel”
    ports:
      – “3306:3306”
    volumes:
      – mysql_data:/var/lib/mysql

volumes:
  mysql_data:

2. Dockerfile

用于构建 PHP 镜像:

FROM php:8.1-fpm

RUN apt-get update && apt-get install -y
    git
    curl
    libpng-dev
    libonig-dev
    libxml2-dev
    zip
    unzip

RUN docker-php-ext-install pdo_mysql mbstring exif pcntl bcmath gd

RUN curl -sS https://getcomposer.org/installer | php — –install-dir=/usr/local/bin –filename=composer

WORKDIR /var/www/html

3. nginx/default.conf

创建目录 nginx 并添加配置文件:

server {
    listen 80;
    index index.php index.html;
    root /var/www/html/public;
    server_name localhost;

    location / {
        try_files $uri $uri/ /index.php?$query_string;
    }

    location ~ .php$ {
        fastcgi_pass php:9000;
        fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        include fastcgi_params;
    }
}

启动容器并安装依赖

执行命令启动服务:

docker-compose up -d

首次运行会构建镜像并启动容器。等待完成后,进入 PHP 容器安装 Laravel 依赖:

docker-compose exec php composer install

生成应用密钥:

docker-compose exec php php artisan key:generate

数据库迁移:

docker-compose exec php php artisan migrate

访问 Laravel 应用

打开浏览器访问:https://www.php.cn/link/cbb686245ece57c9827c4bc0d0654a8e

你应该能看到 Laravel 的欢迎页面。

常见问题处理

如果遇到权限问题(如日志无法写入),可在容器内执行:

docker-compose exec php chown -R www-data:www-data storage bootstrap/cache

修改代码后无需重启容器,热更新立即生效(除非修改了 Dockerfile 或 docker-compose.yml)。

基本上就这些。Docker 搭建 Laravel 环境并不复杂,但能极大提升开发效率和一致性。

以上就是laravel如何使用Docker进行本地环境搭建_Laravel Docker本地环境搭建教程的详细内容,更多请关注php中文网其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/140470.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
抖音小店保证金能退吗?怎么退回?详解抖音小店保证金!
上一篇 2025年12月1日 02:06:30
下一篇 2025年12月1日 02:08:32

相关推荐

发表回复

登录后才能评论
关注微信