Skip to content

Commit

Permalink
Merge pull request #14 from eolinker/V2.0
Browse files Browse the repository at this point in the history
修改docker自动打包脚本
  • Loading branch information
Dot-Liu authored Mar 20, 2023
2 parents c695455 + 1869ed9 commit 5c7f446
Show file tree
Hide file tree
Showing 3 changed files with 61 additions and 30 deletions.
22 changes: 17 additions & 5 deletions .github/workflows/release.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,9 @@ jobs:
name: frontend-builder
runs-on: ubuntu-latest
steps:
- name: SetOutput
id: vars
run: echo "tag=${GITHUB_REF#refs/*/v}" >> $GITHUB_OUTPUT
- name: Checkout #Checkout代码
uses: actions/checkout@v3
- name: Set up Node
Expand Down Expand Up @@ -60,17 +63,26 @@ jobs:
args: release --rm-dist
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

- name: print file
run: |
echo v${{ steps.vars.outputs.tag }}
ls -l apinto-build/
- name: upload release
uses: actions/upload-artifact@v2
with:
name: apinto-dashboard-release
path: apinto-build/apserver_${GITHUB_REF#refs/*/v}_linux_amd64.tar.gz
path: apinto-build/apserver_v${{ steps.vars.outputs.tag }}_linux_amd64.tar.gz
docker-push:
needs: [release]
name: docker-push
runs-on: ubuntu-latest
steps:
- name: SetOutput
id: vars
run: echo "tag=${GITHUB_REF#refs/*/v}" >> $GITHUB_OUTPUT
- uses: actions/checkout@v3

- name: Login Docker #登录docker
uses: docker/login-action@v1
with:
Expand All @@ -80,12 +92,12 @@ jobs:
uses: actions/download-artifact@v2
with:
name: apinto-dashboard-release
path: scripts/apinto-dashboard.tar.gz
path: scripts/apserver_v${{ steps.vars.outputs.tag }}_linux_amd64.tar.gz
- name: build
run: docker build -t ${{ secrets.DOCKER_USERNAME }}/apinto-dashboard:${GITHUB_REF#refs/*/v} scripts/
run: cd scripts && docker build --build-arg Version=${{ steps.vars.outputs.tag }} -t ${{ secrets.DOCKER_USERNAME }}/apinto-dashboard:${{ steps.vars.outputs.tag }} ./

- name: push image
run: |
docker push ${{ secrets.DOCKER_USERNAME }}/apinto-dashboard:${GITHUB_REF#refs/*/v}
docker tag ${{ secrets.DOCKER_USERNAME }}/apinto-dashboard:${GITHUB_REF#refs/*/v} ${{ secrets.DOCKER_USERNAME }}/apinto-dashboard:latest
docker push ${{ secrets.DOCKER_USERNAME }}/apinto-dashboard:${{ steps.vars.outputs.tag }}
docker tag ${{ secrets.DOCKER_USERNAME }}/apinto-dashboard:${{ steps.vars.outputs.tag }} ${{ secrets.DOCKER_USERNAME }}/apinto-dashboard:latest
docker push ${{ secrets.DOCKER_USERNAME }}/apinto-dashboard:latest
32 changes: 7 additions & 25 deletions scripts/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -3,42 +3,24 @@
FROM centos:7.9.2009
MAINTAINER apinto-dashboard

ENV TZ=Asia/Shanghai
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone

#声明端口
EXPOSE 8080

ARG Version

#定义数据卷
VOLUME /var/lib/apinto-dashboard

#设置环境变量
ENV APP=apinto-dashboard


RUN mkdir "apinto-dashboard"

RUN ls


COPY apinto-dashboard.tar.gz /apinto-dashboard

WORKDIR /apinto-dashboard

RUN pwd

RUN tar -zxvf apinto-dashboard.tar.gz && rm -rf apinto-dashboard.tar.gz

WORKDIR /apinto-dashboard/apinto-dashboard

RUN pwd

RUN ls

ENV TZ=Asia/Shanghai
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
COPY apserver_v${Version}_linux_amd64.tar.gz /apinto-dashboard

#修改脚本权限以及复制程序默认配置文件
RUN chmod 777 docker_run.sh
RUN cd /apinto-dashboard && tar -zxvf apserver_v${Version}_linux_amd64.tar.gz && rm -rf apserver_v${Version}_linux_amd64.tar.gz && ln -sfT apserver_v${Version} apserver

WORKDIR /apinto-dashboard/apserver

#容器启动命令
CMD sh docker_run.sh
37 changes: 37 additions & 0 deletions scripts/resource/docker_run.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
#!/bin/sh

set -e


redisAddr=${REDIS_ADDR}
OLD_IFS="$IFS"
IFS=","
arr=($redisAddr)
IFS="$OLD_IFS"


echo "" > config.yml

echo -e "mysql:" > config.yml
echo -e " user_name: ${MYSQL_USER_NAME}" >> config.yml
echo -e " password: ${MYSQL_PWD}" >> config.yml
echo -e " ip: ${MYSQL_IP}" >> config.yml
echo -e " port: ${MYSQL_PORT}" >> config.yml
echo -e " db: ${MYSQL_DB}" >> config.yml
echo -e "redis:" >> config.yml
echo -e " user_name: ${REDIS_USER_NAME}" >> config.yml
echo -e " password: ${REDIS_PWD}" >> config.yml
echo -e " addr: " >> config.yml
for s in ${arr[@]}
do
echo -e " - $s" >> config.yml
done
echo -e "port: 8080" >> config.yml
echo -e "error_log:" >> config.yml
echo -e " dir: ${ERROR_DIR}" >> config.yml
echo -e " file_name: ${ERROR_FILE_NAME}" >> config.yml
echo -e " log_level: ${ERROR_LOG_LEVEL}" >> config.yml
echo -e " log_expire: ${ERROR_EXPIRE}" >> config.yml
echo -e " log_period: ${ERROR_PERIOD}" >> config.yml

./apserver

0 comments on commit 5c7f446

Please sign in to comment.