merge pull request #31 from wehotel/modules-starter

This commit is contained in:
hongqiaowei
2021-04-25 11:20:40 +08:00
committed by GitHub
4 changed files with 58 additions and 14 deletions

View File

@@ -33,8 +33,10 @@ jobs:
uses: actions/setup-java@v1 uses: actions/setup-java@v1
with: with:
java-version: 1.8 java-version: 1.8
- name: Build with Maven - name: Build Modules
run: mvn -B clean package --file pom.xml run: mvn -B clean package --file pom.xml
- name: Build Bootstrap
run: mvn -B clean package --file fizz-bootstrap/pom.xml
- uses: bhowell2/github-substring-action@v1.0.0 - uses: bhowell2/github-substring-action@v1.0.0
if: startsWith(github.ref, 'refs/tags/') if: startsWith(github.ref, 'refs/tags/')
id: releaseVersion id: releaseVersion
@@ -59,4 +61,24 @@ jobs:
draft: true draft: true
files: ./fizz-gateway-community-${{ steps.releaseVersion.outputs.substring }}.zip files: ./fizz-gateway-community-${{ steps.releaseVersion.outputs.substring }}.zip
env: env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Set up QEMU
if: startsWith(github.ref, 'refs/tags/')
uses: docker/setup-qemu-action@v1
- name: Set up Docker Buildx
if: startsWith(github.ref, 'refs/tags/')
uses: docker/setup-buildx-action@v1
- name: Login to DockerHub
if: startsWith(github.ref, 'refs/tags/')
uses: docker/login-action@v1
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
- name: Build and push
if: startsWith(github.ref, 'refs/tags/')
uses: docker/build-push-action@v2
with:
file: ./fizz-bootstrap/Dockerfile
context: .
push: true
tags: fizzgate/fizz-gateway-community:${{ github.ref }}

17
fizz-bootstrap/Dockerfile Normal file
View File

@@ -0,0 +1,17 @@
FROM java:8
MAINTAINER fizzgate.com
ENV APP_HOME_PATH /opt/fizz-gateway-community
ADD target/fizz-bootstrap-*.jar ${APP_HOME_PATH}/fizz-gateway-community.jar
COPY sh/boot.sh ${APP_HOME_PATH}/boot.sh
COPY sh/docker-entrypoint.sh ${APP_HOME_PATH}/docker-entrypoint.sh
RUN chmod +x ${APP_HOME_PATH}/boot.sh
WORKDIR ${APP_HOME_PATH}
EXPOSE 8600
ENTRYPOINT ["/bin/bash", "./docker-entrypoint.sh"]

View File

@@ -39,9 +39,10 @@ fi
cd `dirname $0` cd `dirname $0`
#变量定义 #变量定义
APOLLO_META_SERVER=http://localhost:66 APOLLO_META_SERVER=${APOLLO_META_SERVER:-http://localhost:66}
#支持 prod/pre/test/dev 4个环境 APOLLO_ENV=${APOLLO_ENV:-prod}
ENV=prod #支持 prod/pre/test/dev 4个profiles
SPRING_PROFILES_ACTIVE=${SPRING_PROFILES_ACTIVE:-prod}
APP_NAME=fizz-gateway-community.jar APP_NAME=fizz-gateway-community.jar
APP_DEP_DIR="` pwd`" APP_DEP_DIR="` pwd`"
APP_LOG_DIR=${APP_DEP_DIR}'/logs' APP_LOG_DIR=${APP_DEP_DIR}'/logs'
@@ -49,11 +50,6 @@ JAVA_CMD=${JAVA_HOME}'/bin/java'
PID_FILE="${APP_LOG_DIR}/tpid" PID_FILE="${APP_LOG_DIR}/tpid"
CHECK_COUNT=3 CHECK_COUNT=3
# 远程执行shell脚本初始化环境变量
source '/etc/profile'
SERVER_IP="` ip a |egrep "brd" |grep inet|awk '{print $2}'|sed 's#/24##g'|head -1`"
#创建日志目录 #创建日志目录
mkdir -p ${APP_LOG_DIR} mkdir -p ${APP_LOG_DIR}
chmod 755 ${APP_LOG_DIR} chmod 755 ${APP_LOG_DIR}
@@ -61,9 +57,9 @@ chmod 755 ${APP_LOG_DIR}
#进入应用所在目录(虽然都是绝对路径,但有些应用需要进入应用目录才能启动成功) #进入应用所在目录(虽然都是绝对路径,但有些应用需要进入应用目录才能启动成功)
cd ${APP_DEP_DIR} cd ${APP_DEP_DIR}
JAVA_OPTS="-Xms256m -Xmx4096m \ DEFAULT_JAVA_MEM_OPTS="-Xms256m -Xmx4096m -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=256m"
-XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=256m \
-XX:+AggressiveOpts \ DEFAULT_JAVA_OPTS="-XX:+AggressiveOpts \
-XX:+UseBiasedLocking \ -XX:+UseBiasedLocking \
-XX:+UseG1GC \ -XX:+UseG1GC \
-XX:+HeapDumpOnOutOfMemoryError \ -XX:+HeapDumpOnOutOfMemoryError \
@@ -81,6 +77,10 @@ JAVA_OPTS="-Xms256m -Xmx4096m \
-Dio.netty.noPreferDirect=true \ -Dio.netty.noPreferDirect=true \
-Dio.netty.noUnsafe=true " -Dio.netty.noUnsafe=true "
MEM_OPTS=${JAVA_MEM_OPTS:-$DEFAULT_JAVA_MEM_OPTS}
JAVA_OPTS="$MEM_OPTS $DEFAULT_JAVA_OPTS"
#进程状态标识变量1为存在0为不存在 #进程状态标识变量1为存在0为不存在
PID_FLAG=0 PID_FLAG=0
@@ -106,7 +106,7 @@ start() {
else else
echo "starting $APP_NAME ..." echo "starting $APP_NAME ..."
rm -f ${PID_FILE} rm -f ${PID_FILE}
${JAVA_CMD} -jar ${JAVA_OPTS} -Denv=$ENV -Dspring.profiles.active=$ENV -Dapollo.meta=${APOLLO_META_SERVER} ${APP_DEP_DIR}/${APP_NAME} > ${APP_LOG_DIR}/${APP_NAME}.log 2>&1 & ${JAVA_CMD} -jar ${JAVA_OPTS} -Dspring.profiles.active=$SPRING_PROFILES_ACTIVE -Denv=$APOLLO_ENV -Dapollo.meta=${APOLLO_META_SERVER} ${APP_DEP_DIR}/${APP_NAME} > ${APP_LOG_DIR}/${APP_NAME}.log 2>&1 &
echo $! > ${PID_FILE} echo $! > ${PID_FILE}
fi fi
} }

View File

@@ -0,0 +1,5 @@
#!/bin/bash
# entrypoint for docker
/bin/bash ./boot.sh start && touch dummy.log && tail -f dummy.log