diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..01ff6e1 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,10 @@ +FROM node:20.10 +LABEL maintainer="ZhuangYumin " +COPY . /bookstore/ +RUN apt-get update && apt-get install -y g++ && apt-get install -y cmake +WORKDIR /bookstore/ +RUN mkdir data +RUN mkdir build && cd build && cmake -B . -S .. && cmake --build . && cd ../frontend/Web && npm install +WORKDIR /bookstore/frontend/Web +EXPOSE 3000 +CMD ["node","index.js","/bookstore/data/"] \ No newline at end of file diff --git a/docs/develop/总体设计文档.md b/docs/develop/总体设计文档.md index 6647865..f65ea09 100644 --- a/docs/develop/总体设计文档.md +++ b/docs/develop/总体设计文档.md @@ -1,7 +1,7 @@ 计划实现的bonus: - 【实现】缓存:MemoryRiver层的基于简单贪心的缓存 - 【不完全实现】并行:服务端可并发地响应请求,但后端是串行处理的 -- 【实现】GUI前端和完整部署方案:为WebUI,有安装手册和用户手册,和一个套了个壳的简单Windows桌面端。单会话支持操作频次约5~15次每秒,系统整体支持操作频次约1e2次每秒。历史最高连续稳定运行时长17小时。支持多会话同时进行,不支持响应式设计,但是在桌面版浏览器上小范围缩放不会影响页面的美观程度。 +- 【实现】GUI前端和完整部署方案:为WebUI,有安装手册和用户手册,和一个套了个壳的简单Windows桌面端。单会话支持操作频次约5~15次每秒,系统整体支持操作频次约1e2次每秒。历史最高连续稳定运行时长25小时。支持多会话同时进行,不支持响应式设计,但是在桌面版浏览器上小范围缩放不会影响页面的美观程度。 有时间打算实现的bonus(按优先级次序排序): 1. UTF-8中文支持 diff --git a/docs/user/系统安装手册.md b/docs/user/系统安装手册.md index 752b510..2b7e13b 100644 --- a/docs/user/系统安装手册.md +++ b/docs/user/系统安装手册.md @@ -1,4 +1,8 @@ # 部署 +## 从Docker构建 +运行`docker run -it --name bookstore -v [your data dir]:/bookstore/data -p [your port]:3000 docker.io/happyzym/bookstore:1.0.2.0` + +执行此步骤后,无需执行下列的 依赖、下载与构建、安装步骤。 ## 依赖 - `g++`、`CMake`:注意,要支持C++17 - `Node.js`、`npm`:注意,本项目使用NodeJs 20.10开发的,apt默认源的版本过旧,请移步