Files
weipan02_server/DOCKER_README.md
2025-10-31 01:16:51 +08:00

2.7 KiB

Docker 部署说明

本项目使用 webdevops/php-nginx:7.2-alpine 作为基础镜像。

文件说明

  • Dockerfile - Docker 镜像构建文件
  • docker-compose.yml - Docker Compose 编排文件
  • .dockerignore - Docker 构建忽略文件
  • docker/nginx/vhost.conf - Nginx 虚拟主机配置

快速启动

1. 安装依赖(首次部署)

在启动 Docker 之前,需要先在宿主机上安装 Composer 依赖:

composer install

2. 启动服务

docker-compose up -d

3. 查看服务状态

docker-compose ps

4. 查看日志

# 查看所有服务日志
docker-compose logs -f

# 查看 web 服务日志
docker-compose logs -f web

# 查看 MySQL 日志
docker-compose logs -f mysql

服务信息

Web 服务

MySQL 服务

  • 主机: mysql (容器内) / localhost:3306 (宿主机)
  • 数据库: weipan
  • 用户名: weipan
  • 密码: weipan123
  • Root 密码: root

配置说明

PHP 配置

  • 内存限制: 256M
  • 执行时间: 300秒
  • POST 大小: 50M
  • 上传文件大小: 50M

数据库配置

修改 config/database.php 中的数据库连接信息:

'hostname' => 'mysql',  // Docker 容器内使用服务名
'database' => 'weipan',
'username' => 'weipan',
'password' => 'weipan123',

常用命令

停止服务

docker-compose stop

重启服务

docker-compose restart

停止并删除容器

docker-compose down

停止并删除容器和数据卷

docker-compose down -v

重新构建镜像

docker-compose build --no-cache
docker-compose up -d

进入容器

# 进入 web 容器
docker-compose exec web sh

# 进入 MySQL 容器
docker-compose exec mysql bash

清理缓存

docker-compose exec web php think clear

目录权限

如果遇到权限问题,可以在容器内执行:

docker-compose exec web chown -R application:application /app
docker-compose exec web chmod -R 777 /app/runtime

生产环境建议

  1. 修改 MySQL 密码为强密码
  2. 调整 docker-compose.yml 中的端口映射
  3. 设置合适的环境变量
  4. 配置数据卷备份策略
  5. 启用 HTTPS
  6. 配置防火墙规则

故障排查

查看容器日志

docker-compose logs -f web

检查容器状态

docker-compose ps

测试数据库连接

docker-compose exec mysql mysql -uweipan -pweipan123 weipan

重置权限

docker-compose exec web chown -R application:application /app
docker-compose exec web chmod -R 755 /app
docker-compose exec web chmod -R 777 /app/runtime