175 lines
2.7 KiB
Markdown
175 lines
2.7 KiB
Markdown
# Docker 部署说明
|
|
|
|
本项目使用 `webdevops/php-nginx:7.2-alpine` 作为基础镜像。
|
|
|
|
## 文件说明
|
|
|
|
- `Dockerfile` - Docker 镜像构建文件
|
|
- `docker-compose.yml` - Docker Compose 编排文件
|
|
- `.dockerignore` - Docker 构建忽略文件
|
|
- `docker/nginx/vhost.conf` - Nginx 虚拟主机配置
|
|
|
|
## 快速启动
|
|
|
|
### 1. 安装依赖(首次部署)
|
|
|
|
在启动 Docker 之前,需要先在宿主机上安装 Composer 依赖:
|
|
|
|
```bash
|
|
composer install
|
|
```
|
|
|
|
### 2. 启动服务
|
|
|
|
```bash
|
|
docker-compose up -d
|
|
```
|
|
|
|
### 3. 查看服务状态
|
|
|
|
```bash
|
|
docker-compose ps
|
|
```
|
|
|
|
### 4. 查看日志
|
|
|
|
```bash
|
|
# 查看所有服务日志
|
|
docker-compose logs -f
|
|
|
|
# 查看 web 服务日志
|
|
docker-compose logs -f web
|
|
|
|
# 查看 MySQL 日志
|
|
docker-compose logs -f mysql
|
|
```
|
|
|
|
## 服务信息
|
|
|
|
### Web 服务
|
|
- 访问地址: http://localhost:8080
|
|
- 容器名称: weipan_web
|
|
- PHP 版本: 7.2
|
|
- Web 服务器: Nginx
|
|
|
|
### MySQL 服务
|
|
- 主机: mysql (容器内) / localhost:3306 (宿主机)
|
|
- 数据库: weipan
|
|
- 用户名: weipan
|
|
- 密码: weipan123
|
|
- Root 密码: root
|
|
|
|
## 配置说明
|
|
|
|
### PHP 配置
|
|
- 内存限制: 256M
|
|
- 执行时间: 300秒
|
|
- POST 大小: 50M
|
|
- 上传文件大小: 50M
|
|
|
|
### 数据库配置
|
|
|
|
修改 `config/database.php` 中的数据库连接信息:
|
|
|
|
```php
|
|
'hostname' => 'mysql', // Docker 容器内使用服务名
|
|
'database' => 'weipan',
|
|
'username' => 'weipan',
|
|
'password' => 'weipan123',
|
|
```
|
|
|
|
## 常用命令
|
|
|
|
### 停止服务
|
|
|
|
```bash
|
|
docker-compose stop
|
|
```
|
|
|
|
### 重启服务
|
|
|
|
```bash
|
|
docker-compose restart
|
|
```
|
|
|
|
### 停止并删除容器
|
|
|
|
```bash
|
|
docker-compose down
|
|
```
|
|
|
|
### 停止并删除容器和数据卷
|
|
|
|
```bash
|
|
docker-compose down -v
|
|
```
|
|
|
|
### 重新构建镜像
|
|
|
|
```bash
|
|
docker-compose build --no-cache
|
|
docker-compose up -d
|
|
```
|
|
|
|
### 进入容器
|
|
|
|
```bash
|
|
# 进入 web 容器
|
|
docker-compose exec web sh
|
|
|
|
# 进入 MySQL 容器
|
|
docker-compose exec mysql bash
|
|
```
|
|
|
|
### 清理缓存
|
|
|
|
```bash
|
|
docker-compose exec web php think clear
|
|
```
|
|
|
|
## 目录权限
|
|
|
|
如果遇到权限问题,可以在容器内执行:
|
|
|
|
```bash
|
|
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. 配置防火墙规则
|
|
|
|
## 故障排查
|
|
|
|
### 查看容器日志
|
|
|
|
```bash
|
|
docker-compose logs -f web
|
|
```
|
|
|
|
### 检查容器状态
|
|
|
|
```bash
|
|
docker-compose ps
|
|
```
|
|
|
|
### 测试数据库连接
|
|
|
|
```bash
|
|
docker-compose exec mysql mysql -uweipan -pweipan123 weipan
|
|
```
|
|
|
|
### 重置权限
|
|
|
|
```bash
|
|
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
|
|
```
|