|
|
|
|
# 虚拟病人服务部署文档
|
|
|
|
|
|
|
|
|
|
## 需要部署的服务列表
|
|
|
|
|
|
|
|
|
|
1. 问诊系统
|
|
|
|
|
2. 后端管理系统
|
|
|
|
|
3. nginx前端服务
|
|
|
|
|
4. rasa对话服务
|
|
|
|
|
5. mysql数据库
|
|
|
|
|
6. paddlespeech语音文字转换服务
|
|
|
|
|
7. minio对象存储服务
|
|
|
|
|
|
|
|
|
|
## 问诊服务部署
|
|
|
|
|
|
|
|
|
|
使用dockerfile的形式进行部署,端口号:8899
|
|
|
|
|
|
|
|
|
|
注意dockerfile中的virtual-patient-web-1.0-SNAPSHOT.jar路径正确
|
|
|
|
|
|
|
|
|
|
~~~dockerfile
|
|
|
|
|
# 设置基础镜像
|
|
|
|
|
FROM registry.cn-beijing.aliyuncs.com/longbei/jdk:latest
|
|
|
|
|
|
|
|
|
|
# 复制java jar 到容器中
|
|
|
|
|
COPY virtual-patient-web-1.0-SNAPSHOT.jar /data/vp/virtual-patient-web-1.0-SNAPSHOT.jar
|
|
|
|
|
|
|
|
|
|
# 暴漏服务端口
|
|
|
|
|
EXPOSE 8899
|
|
|
|
|
|
|
|
|
|
# 设置启动命令
|
|
|
|
|
ENTRYPOINT ["java","-Xms256m","-Xmx1g","-Dspring.profiles.active=prod","-Dfile.encoding=utf-8","-Duser.timezone=Asia/Shanghai","-jar","/data/vp/virtual-patient-rasa-1.0-SNAPSHOT.jar"]
|
|
|
|
|
~~~
|
|
|
|
|
|
|
|
|
|
构建镜像并启动
|
|
|
|
|
|
|
|
|
|
~~~shell
|
|
|
|
|
# 构建镜像
|
|
|
|
|
docker build -t virtual-patient-web:1.0.0 .
|
|
|
|
|
# 验证镜像是否存在
|
|
|
|
|
docker images
|
|
|
|
|
# 运行容器
|
|
|
|
|
docker run --name virtual-patient-web -p 8899:8899 -d virtual-patient-web
|
|
|
|
|
# 验证容器运行
|
|
|
|
|
docker ps
|
|
|
|
|
# 查看日志是否正常
|
|
|
|
|
docker logs -f virtual-patient-web
|
|
|
|
|
~~~
|
|
|
|
|
|
|
|
|
|
## 后端管理系统部署
|
|
|
|
|
|
|
|
|
|
使用dockerfile的形式进行部署,端口号:8891
|
|
|
|
|
|
|
|
|
|
注意dockerfile中的virtual-patient-manage-1.0-SNAPSHOT.jar路径正确
|
|
|
|
|
|
|
|
|
|
~~~dockerfile
|
|
|
|
|
# 设置基础镜像
|
|
|
|
|
FROM registry.cn-beijing.aliyuncs.com/longbei/jdk:latest
|
|
|
|
|
|
|
|
|
|
# 复制java jar 到容器中
|
|
|
|
|
COPY virtual-patient-manage-1.0-SNAPSHOT.jar /data/vp/virtual-patient-manage-1.0-SNAPSHOT.jar
|
|
|
|
|
|
|
|
|
|
# 暴漏服务端口
|
|
|
|
|
EXPOSE 8891
|
|
|
|
|
|
|
|
|
|
# 设置启动命令
|
|
|
|
|
ENTRYPOINT ["java","-Xms256m","-Xmx1g","-Dspring.profiles.active=prod","-Dfile.encoding=utf-8","-Duser.timezone=Asia/Shanghai","-jar","/data/vp/virtual-patient-manage-1.0-SNAPSHOT.jar"]
|
|
|
|
|
~~~
|
|
|
|
|
|
|
|
|
|
进入virtual-patient-manage文件夹,依次执行命令
|
|
|
|
|
|
|
|
|
|
~~~shell
|
|
|
|
|
# 构建镜像
|
|
|
|
|
docker build -t virtual-patient-manage:1.0.0 .
|
|
|
|
|
# 验证镜像是否存在
|
|
|
|
|
docker images
|
|
|
|
|
# 运行容器
|
|
|
|
|
docker run --name virtual-patient-manage -p 8891:8891 -d virtual-patient-manage
|
|
|
|
|
# 验证容器运行
|
|
|
|
|
docker ps
|
|
|
|
|
# 查看日志是否正常
|
|
|
|
|
docker logs -f virtual-patient-manage
|
|
|
|
|
~~~
|
|
|
|
|
|
|
|
|
|
## Nginx前端服务
|
|
|
|
|
|
|
|
|
|
使用dockerfile的形式进行部署
|
|
|
|
|
|
|
|
|
|
~~~dockerfile
|
|
|
|
|
# 设置基础镜像
|
|
|
|
|
FROM nginx:1.25
|
|
|
|
|
|
|
|
|
|
# 复制文件到容器中
|
|
|
|
|
COPY nginx/html /usr/share/nginx/html
|
|
|
|
|
COPY nginx/logs /var/log/nginx
|
|
|
|
|
COPY nginx/conf.d /etc/nginx/conf.d
|
|
|
|
|
COPY nginx/ssl /data/vp/nginx/ssl
|
|
|
|
|
|
|
|
|
|
# 暴漏服务端口
|
|
|
|
|
EXPOSE 80
|
|
|
|
|
|
|
|
|
|
# 设置容器的默认入口点
|
|
|
|
|
ENTRYPOINT [ "/docker-entrypoint.sh" ]
|
|
|
|
|
|
|
|
|
|
# 设置默认的 CMD 参数
|
|
|
|
|
CMD [ "nginx", "-g", "daemon off;" ]
|
|
|
|
|
~~~
|
|
|
|
|
|
|
|
|
|
进入nginx文件夹,依次执行命令
|
|
|
|
|
|
|
|
|
|
~~~shell
|
|
|
|
|
# 构建镜像
|
|
|
|
|
docker build -t virtual-patient-nginx:1.0.0 .
|
|
|
|
|
# 验证镜像是否存在
|
|
|
|
|
docker images
|
|
|
|
|
# 运行容器
|
|
|
|
|
docker run --name virtual-patient-nginx -p 80:80 -d virtual-patient-nginx
|
|
|
|
|
# 验证容器运行
|
|
|
|
|
docker ps
|
|
|
|
|
# 查看日志是否正常
|
|
|
|
|
docker logs -f virtual-patient-nginx
|
|
|
|
|
~~~
|
|
|
|
|
|
|
|
|
|
## RASA对话服务
|
|
|
|
|
|
|
|
|
|
~~~shell
|
|
|
|
|
# 加载镜像
|
|
|
|
|
docker load -i virtual-patient-rasa-manager.tar.gz
|
|
|
|
|
# 验证镜像是否存在
|
|
|
|
|
docker images
|
|
|
|
|
# 运行容器
|
|
|
|
|
docker run --name virtual-patient-rasa-manager -p 5050:5050 -p 8990:8890 -d virtual-patient-rasa-manager
|
|
|
|
|
# 验证容器运行
|
|
|
|
|
docker ps
|
|
|
|
|
# 查看日志是否正常
|
|
|
|
|
docker logs -f virtual-patient-rasa-manager
|
|
|
|
|
~~~
|
|
|
|
|
|
|
|
|
|
## mysql数据库
|
|
|
|
|
|
|
|
|
|
~~~shell
|
|
|
|
|
# 首先创建本地文件夹
|
|
|
|
|
mkdir /var/lib/mysql
|
|
|
|
|
# 拉取镜像
|
|
|
|
|
docker pull mysql:5.7
|
|
|
|
|
# 启动服务
|
|
|
|
|
docker run -d -p 3306:3306 -v /var/lib/mysql:/var/lib/mysql --name mysql -e MYSQL_ROOT_PASSWORD=123456 mysql:5.7
|
|
|
|
|
~~~
|
|
|
|
|
|
|
|
|
|
启动mysql后,执行数据库初始化脚本
|
|
|
|
|
|
|
|
|
|
## paddlespeech语音文字转换服务
|
|
|
|
|
|
|
|
|
|
~~~shell
|
|
|
|
|
# 加载镜像
|
|
|
|
|
docker load -i virtual-patient-paddlespeech.tar.gz
|
|
|
|
|
# 验证镜像是否存在
|
|
|
|
|
docker images
|
|
|
|
|
# 运行容器
|
|
|
|
|
docker run --name virtual-patient-paddlespeech -p 8090:8090 -d virtual-patient-paddlespeech
|
|
|
|
|
# 验证容器运行
|
|
|
|
|
docker ps
|
|
|
|
|
# 查看日志是否正常
|
|
|
|
|
docker logs -f virtual-patient-paddlespeech
|
|
|
|
|
~~~
|
|
|
|
|
|
|
|
|
|
## MINIO对象存储服务
|
|
|
|
|
|
|
|
|
|
~~~shell
|
|
|
|
|
# 首先创建文件夹
|
|
|
|
|
mkdir /data/vp/minio/data
|
|
|
|
|
# 将文件mv到对应的文件夹
|
|
|
|
|
mv virtual-patient-bucket-prod /data/vp/minio/data
|
|
|
|
|
# 拉最新版本
|
|
|
|
|
docker pull minio/minio
|
|
|
|
|
# 启动
|
|
|
|
|
docker run -it --name minio -p 9002:9000 -p 9001:9001 -d \
|
|
|
|
|
-v /data/vp/minio/data:/data \
|
|
|
|
|
-e 'MINIO_ROOT_USER=admin' \
|
|
|
|
|
-e 'MINIO_ROOT_PASSWORD=12345678' \
|
|
|
|
|
minio/minio server /data --console-address ":9001"
|
|
|
|
|
~~~
|
|
|
|
|
|