From 0ce47b9a81310cacf5299ab870a0e6b6a5535d3a Mon Sep 17 00:00:00 2001 From: fanxb Date: Thu, 10 Mar 2022 14:30:01 +0800 Subject: [PATCH] =?UTF-8?q?deploy:=E4=BF=AE=E6=94=B9=E9=83=A8=E7=BD=B2?= =?UTF-8?q?=E8=84=9A=E6=9C=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .env | 31 ++++++++++++++++++++++++++++ DEPLOY.md | 11 +++++----- build.sh | 10 +++++++++ start.sh | 62 ------------------------------------------------------- 4 files changed, 47 insertions(+), 67 deletions(-) create mode 100644 .env create mode 100644 build.sh delete mode 100755 start.sh diff --git a/.env b/.env new file mode 100644 index 0000000..c90b3d9 --- /dev/null +++ b/.env @@ -0,0 +1,31 @@ +#Mysql地址 +MYSQL_ADDRESS=mysql:3306 +#Mysql密码 +MYSQL_PASSWORD=123456 +#redis地址 +REDIS_HOST=redis +#redis端口 +REDIS_PORT=6379 +# smtp地址 +SMTP_HOST= +# smtp用户名 +SMTP_USERNAME= +# smtp密码 +SMTP_PASSWORD= +# 外网访问域名 +BOOKMARK_HOST=localhost +# 文件存储地址(比如用户上传的icon文件) +BOOKMARK_FILE_SAVE_PATH=./data/files +# jwt密钥 +JWT_SECRET=123456 +# http网络代理ip(github api调用可能需要) +PROXY_IP= +# http网络代理端口 +PROXY_PORT= +# 如果要支持github登陆需要配置以下两个参数 +# github clientId +GITHUB_CLIENT_ID= +# github secret +GITHUB_SECRET= +# 管理员用户id +MANAGE_USER_ID=-1 \ No newline at end of file diff --git a/DEPLOY.md b/DEPLOY.md index a7610fc..0ed4bc8 100644 --- a/DEPLOY.md +++ b/DEPLOY.md @@ -1,9 +1,10 @@ -本程序基于 docker 来进行部署,使用docker-compose管理服务。 +本程序基于 docker 来进行部署,使用 docker-compose 管理服务。 部署过程如下: -**注意,仅在x86环境下测试,不保证能在arm环境下使用** +**注意,仅在 x86 环境下测试** -1. 安装新版的docker和docker-compose -2. 修改start.sh中的参数 -3. root权限运行 `start.sh` 启动服务。 \ No newline at end of file +1. 安装新版的 docker 和 docker-compose(注意:以下操作均在项目根目录下执行) +2. 执行`build.sh`编译前后端代码 +3. 修改.env 文件中的参数,改为你的实际配置 +4. root 权限运行 `docker-compose up -d` 启动服务。 diff --git a/build.sh b/build.sh new file mode 100644 index 0000000..adcc712 --- /dev/null +++ b/build.sh @@ -0,0 +1,10 @@ +#!/bin/bash +base=$(cd "$(dirname "$0")";pwd) +echo $base +cd $base + + +# 前端打包 +docker run -it --rm --user ${UID} -v $base/bookmark_front:/opt/front node:lts-buster-slim bash -c "cd /opt/front && yarn --registry https://registry.npm.taobao.org && yarn build" +# 后端打包 +docker run -it --rm --user ${UID} -v $base/data/maven/mavenRep:/var/maven/.m2: -v $base/data/maven/settings.xml:/usr/share/maven/conf/settings.xml -v $base/bookMarkService:/code maven:3-openjdk-11-slim bash -c "cd /code && mvn clean install" \ No newline at end of file diff --git a/start.sh b/start.sh deleted file mode 100755 index 4ac7dab..0000000 --- a/start.sh +++ /dev/null @@ -1,62 +0,0 @@ -#!/bin/bash -base=$(cd "$(dirname "$0")";pwd) -echo $base -cd $base - -#Mysql地址 -export MYSQL_ADDRESS=mysql:3306 -#Mysql密码 -export MYSQL_PASSWORD=123456 -#redis地址 -export REDIS_HOST=redis -#redis端口 -export REDIS_PORT=6379 -# smtp地址 -export SMTP_HOST= -# smtp用户名 -export SMTP_USERNAME= -# smtp密码 -export SMTP_PASSWORD= -# 外网访问域名 -export BOOKMARK_HOST=localhost -# 文件存储地址(比如用户上传的icon文件) -export BOOKMARK_FILE_SAVE_PATH=./data/files -# jwt密钥 -export JWT_SECRET=123456 -# http网络代理ip(github api调用可能需要) -export PROXY_IP= -# http网络代理端口 -export PROXY_PORT= -# 如果要支持github登陆需要配置以下两个参数 -# github clientId -export GITHUB_CLIENT_ID= -# github secret -export GITHUB_SECRET= -# 管理员用户id -export MANAGE_USER_ID=-1 - - -# 前端打包 -docker run -it --rm --user ${UID} -v $base/bookmark_front:/opt/front node:lts-buster-slim bash -c "cd /opt/front && yarn --registry https://registry.npm.taobao.org && yarn build" -# 后端打包 -docker run -it --rm --user ${UID} -v $base/data/maven/mavenRep:/var/maven/.m2: -v $base/data/maven/settings.xml:/usr/share/maven/conf/settings.xml -v $base/bookMarkService:/code maven:3-openjdk-11-slim bash -c "cd /code && mvn clean install" - -start="start" -stop="stop" -restart="restart" -delete="delete" - -if [ -z $1 ] || [ $1 == $start ];then - echo "start" - docker-compose down - docker-compose up -d -elif [ $1 == $stop ];then - echo "stop" - docker-compose stop -elif [ $1 == $restart ];then - echo "restart" - docker-compose restart -elif [ $1 == $delete ];then - echo "delete" - docker-compose down -fi