温馨提示×

centos能否用docker跑laravel

小樊
39
2026-10-02 21:35:13
栏目: 智能运维

可以的,CentOS 完全可以使用 Docker 来运行 Laravel,而且这是目前非常常见、推荐的做法。

下面从「能不能」和「怎么做」两个层面说明。


一、CentOS 能不能用 Docker 跑 Laravel?

✅ 能,而且很合适

  • CentOS 是 Linux 发行版,原生支持 Docker
  • Laravel 本质就是 PHP 应用,不依赖特定系统
  • Docker 可以隔离:
    • PHP
    • Nginx / Apache
    • MySQL / Redis
    • Composer

无论是:

  • CentOS 7
  • CentOS 8(已 EOL,但可用)
  • CentOS Stream

都可以跑 Docker + Laravel


二、常见运行方式(推荐)

方式 1:Docker + Docker Compose(最常用 ✅)

适合:

  • 开发
  • 测试
  • 中小型生产环境

典型结构

project/
├── docker-compose.yml
├── Dockerfile
├── nginx/
└── src/  (Laravel 代码)

示例 docker-compose.yml

version: '3'
services:
  app:
    build: .
    volumes:
      - ./src:/var/www
    working_dir: /var/www

  web:
    image: nginx:alpine
    ports:
      - "80:80"
    volumes:
      - ./src:/var/www
      - ./nginx/default.conf:/etc/nginx/conf.d/default.conf
    depends_on:
      - app

  db:
    image: mysql:8
    environment:
      MYSQL_ROOT_PASSWORD: root
      MYSQL_DATABASE: laravel

方式 2:用现成镜像(快速)

例如:

docker run -d -p 8000:8000 laravel/laravel

适合:

  • 快速验证
  • 不推荐生产

三、CentOS 上 Docker 安装(简单版)

# CentOS 7/8
yum install -y yum-utils
yum-config-manager --add-repo \
  https://download.docker.com/linux/centos/docker-ce.repo

yum install docker-ce docker-ce-cli containerd.io
systemctl start docker
systemctl enable docker

安装 Docker Compose:

curl -L https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m) -o /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose

四、注意事项(很重要)

1️⃣ CentOS 版本问题

  • CentOS 8 已停止维护
  • 建议:
    • CentOS 7(稳定)
    • 或 Rocky / AlmaLinux

2️⃣ SELinux

可能阻止 Docker 访问目录:

setenforce 0   # 临时

或配置正确的 SELinux 策略

3️⃣ 权限问题

Laravel 需要:

  • storage
  • bootstrap/cache

可写权限


五、总结

✅ CentOS + Docker + Laravel = 完全可行
✅ 推荐 Docker Compose
✅ 比直接装 LNMP 更干净、易维护

如果你愿意,我可以:

  • 给你一套 完整 Laravel Docker 模板
  • 或按你 CentOS 版本一步步教你配置

你现在是 CentOS 几?开发还是生产环境?

0 踩