This commit is contained in:
none 2023-07-04 20:06:18 +08:00
parent 86ab75a63d
commit 4cb82ec769
3 changed files with 60 additions and 15 deletions

3
.gitignore vendored
View File

@ -1,2 +1,3 @@
frontend/
backend/
backend/
h5/

View File

@ -1,13 +1,13 @@
### PlayEdu Light Docker 构建方案
本套方案将 API + PC 前台 + 后台管理 三个整合在一个镜像当中,适用于轻量级客户。
本套方案将 API + PC 前台 + H5 前台 + 后台管理 四个整合在一个镜像当中,适用于轻量级客户。
### 使用官方镜像
在命令行中执行:
```
docker run -d -p 9700:80 -p 9800:9800 -p 9900:9900 --name playedu-light \
docker run -d -p 9700:80 -p 9800:9800 -p 9801:9801 -p 9900:9900 --name playedu-light \
-e DB_HOST=数据库host \
-e DB_PORT=数据库端口 \
-e DB_NAME=数据库名 \
@ -17,16 +17,17 @@ docker run -d -p 9700:80 -p 9800:9800 -p 9900:9900 --name playedu-light \
-e REDIS_PORT=Redis的端口 \
-e REDIS_PASS=redis的密码 \
-e SA_TOKEN_JWT_SECRET_KEY=随机英文+数字的字符串 \
registry.cn-hangzhou.aliyuncs.com/playedu/light:1.0-beta.7.1
registry.cn-hangzhou.aliyuncs.com/playedu/light:1.1
```
跑起来之后,可以通过下面的链接访问前后台:
| 端口 | 地址 |
| -------- | -------------------------- |
| API 服务 | `http://你的服务器IP:9700` |
| 学员界面 | `http://你的服务器IP:9800` |
| 后台管理 | `http://你的服务器IP:9900` |
| 端口 | 地址 |
| ------------ | -------------------------- |
| API 服务 | `http://你的服务器IP:9700` |
| 学员 PC 界面 | `http://你的服务器IP:9800` |
| 学员 H5 界面 | `http://你的服务器IP:9801` |
| 后台管理 | `http://你的服务器IP:9900` |
### 自己动手
@ -43,7 +44,7 @@ docker build -t playedu-light .
执行完毕之后,可运行下面命令将 PlayEdu 服务跑起来:
```
docker run -d -p 9700:80 -p 9800:9800 -p 9900:9900 --name playedu-local \
docker run -d -p 9700:80 -p 9800:9800 -p 9801:9801 -p 9900:9900 --name playedu-local \
-e DB_HOST=数据库host \
-e DB_PORT=数据库端口 \
-e DB_NAME=数据库名 \
@ -58,8 +59,9 @@ docker run -d -p 9700:80 -p 9800:9800 -p 9900:9900 --name playedu-local \
跑起来之后,可以通过下面的链接访问前后台:
| 端口 | 地址 |
| -------- | -------------------------- |
| API 服务 | `http://你的服务器IP:9700` |
| 学员界面 | `http://你的服务器IP:9800` |
| 后台管理 | `http://你的服务器IP:9900` |
| 端口 | 地址 |
| ------------ | -------------------------- |
| API 服务 | `http://你的服务器IP:9700` |
| 学员 PC 界面 | `http://你的服务器IP:9800` |
| 学员 H5 界面 | `http://你的服务器IP:9801` |
| 后台管理 | `http://你的服务器IP:9900` |

View File

@ -40,6 +40,48 @@ server {
}
}
server {
# 监听端口号9801
listen 9801 default_server;
# 禁用绝对重定向
# 如果没有设置该配置项当Nginx重定向时它将使用绝对路径这意味着当用户访问一个虚拟主机时
# Nginx可能会将他们重定向到另一个主机的URL这可能会导致安全问题和用户体验问题。因此通过
# 设置 absolute_redirect off Nginx将使用相对路径进行重定向以确保用户在同一主机上进
# 行重定向,而不会遇到上述问题。
absolute_redirect off;
# 匹配任何主机名
server_name _;
# 指定Web应用程序的根目录
root /app/h5;
# 指定默认的索引文件为index.html
index index.html;
# 启用gzip压缩
gzip on;
gzip_static on;
gzip_buffers 4 16k;
gzip_http_version 1.1;
gzip_comp_level 5;
gzip_types text/plain application/javascript text/css application/xml text/javascript;
gzip_vary on;
# 将所有以/api/开头的请求代理到本地地址为127.0.0.1:9898的Web应用程序后端服务器
location /api/ {
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://127.0.0.1:9898/;
}
# 拒绝所有以.ht开头的请求
location ~ /\.ht {
deny all;
}
# 处理所有不以/api/开头的请求尝试查找匹配的文件如果没有找到则返回index.html
location ~* ^/(?![api].*) {
try_files $uri /index.html;
}
}
server {
# 监听端口号9900
listen 9900 default_server;