diff --git a/docs/zh/guide/linux-install.md b/docs/zh/guide/linux-install.md new file mode 100644 index 0000000000000000000000000000000000000000..5b158784594a522bf09690435ef913dbb93e43fd --- /dev/null +++ b/docs/zh/guide/linux-install.md @@ -0,0 +1,89 @@ + +# docker部署说明 + +!> 这里详细介绍如何将CellReport部署到docker + +`先下载发行版压缩包` + +## 解压并调整目录 + +- 将static、wwwroot目录移至reportWeb目录 +- 在reportWeb目录下创建Dockerfile + +``` docker +FROM mcr.microsoft.com/dotnet/aspnet:6.0 AS base + +ENV TZ "Asia/Shanghai" +WORKDIR /app +COPY ./ . +ENV ASPNETCORE_URLS=http://0.0.0.0:80 +EXPOSE 80 +ENTRYPOINT ["dotnet", "reportWeb.dll"] +``` +!> 如已存在则不用创建 + +修改完成后最新的目录结构如下: +``` +-reportWeb + |- static + |- wwwroot + |- Dockerfile + |- ... +``` + +## 上传至linux服务器后 + +- 在linux服务器上新建文件夹,推荐的目录结构如下: + +``` bash +- cellreport + |- data // 该目录用于存放report.db、example、自定义报表目录 + |- web // 存放cellreport程序目录 + +``` +- 将发行版中的reportWeb中所有文件上传至/cellreport/web目录 +- 将example示例上传至/cellreport/data目录 + +## docker打包 + +``` bash +cd /cellreport/web +docker build -t cellreport . +``` + +## docker运行 +``` bash + +# 7100是对外访问的端口 +# -v /cellreport/data:/data 将上面的本地目录映射至容器/data目录 +# -v /cellreport/data/report.db:/app/report.db 报表数据库文件从容器中剥离,避免后续升级导致数据丢失 +docker run -p 7100:80 --restart=always --name cellreport -v /cellreport/data:/data -v /cellreport/data/report.db:/app/report.db -d cellreport +``` + +## 进入系统修改目录 + +1. 访问http://xxx:7100 登录进入系统 +2. 报表组管理 + +- 编辑example,将/example目录改为/data/example,连接字符串中的目录也要改 +- 编辑default,将/reportdefine_root/default 改为 `/data/default` + + +## 关于新版本更新 + +- 下载最新发行版到本地 +- 将reportWeb的程序文件上传至web目录中 +- 重新构建镜像并运行 + +``` bash +# 停止容器运行 +docker stop cellreport +# 删除容器 +docker rm cellreport +# 删除镜像 +docker rmi cellreport + +# 然后重复docker打包步骤即可完成升级 +``` + +结束End \ No newline at end of file