diff --git a/.gitea/workflows/main.yaml b/.gitea/workflows/main.yaml new file mode 100644 index 0000000..f931502 --- /dev/null +++ b/.gitea/workflows/main.yaml @@ -0,0 +1,35 @@ +name: Docker Image CI +on: + push: + branches: + - main + +jobs: + build: + runs-on: gitea-runner-group-myplayer + container: + image: ${{ vars.HARBOR_URL }}/candlelight/action_builder:v0.0.1 + steps: + - name: Checkout code + uses: actions/checkout@v4 + - name: docker login + env: + HARBOR_USERNAME: ${{ secrets.HARBOR_ROBOT }} + HARBOR_PASSWORD: ${{ secrets.HARBOR_ROBOT_SECRET }} + HARBOR_URL: ${{ vars.HARBOR_URL }} + run: docker login ${HARBOR_URL} -u ${HARBOR_USERNAME} -p ${HARBOR_PASSWORD} + - name: Build and push Docker images + env: + HARBOR_URL: ${{ vars.HARBOR_URL }} + TAG: ${{ github.sha }} + REPOSITORY: ${{ github.repository }} + run: | + ROOT_DIR=$(pwd) + IMAGE_NAME="${HARBOR_URL}/testing/$REPOSITORY:${TAG}" + echo "Building image: ${IMAGE_NAME}" + docker build -t ${IMAGE_NAME} . + echo "Pushing image: ${IMAGE_NAME}" + docker push ${IMAGE_NAME} + echo "Successfully pushed: ${IMAGE_NAME}" + docker rmi ${IMAGE_NAME} + echo "cleaned up local image" diff --git a/.gitea/workflows/tag.yaml b/.gitea/workflows/tag.yaml new file mode 100644 index 0000000..950500a --- /dev/null +++ b/.gitea/workflows/tag.yaml @@ -0,0 +1,34 @@ +name: Docker Image CI +on: + push: + tags: + - '*' + +jobs: + build: + runs-on: gitea-runner-group-myplayer + container: + image: ${{ vars.HARBOR_URL }}/candlelight/action_builder:v0.0.1 + steps: + - name: Checkout code + uses: actions/checkout@v4 + - name: docker login + env: + HARBOR_USERNAME: ${{ secrets.HARBOR_ROBOT }} + HARBOR_PASSWORD: ${{ secrets.HARBOR_ROBOT_SECRET }} + HARBOR_URL: ${{ vars.HARBOR_URL }} + run: docker login ${HARBOR_URL} -u ${HARBOR_USERNAME} -p ${HARBOR_PASSWORD} + - name: Build and push Docker images + env: + HARBOR_URL: ${{ vars.HARBOR_URL }} + REPOSITORY: ${{ github.repository }} + run: | + ROOT_DIR=$(pwd) + IMAGE_NAME="${HARBOR_URL}/$REPOSITORY:$GITHUB_REF_NAME" + echo "Building image: ${IMAGE_NAME}" + docker build -t ${IMAGE_NAME} . + echo "Pushing image: ${IMAGE_NAME}" + docker push ${IMAGE_NAME} + echo "Successfully pushed: ${IMAGE_NAME}" + docker rmi ${IMAGE_NAME} + echo "cleaned up local image" diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..5d0e4a6 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,17 @@ +FROM registry.merlin.xin/library/node:20-bullseye AS build + +WORKDIR /app + +COPY package*.json ./ + +RUN --mount=type=cache,target=/root/.npm \ + npm install + +COPY . . + +RUN npm run build + + +FROM registry.merlin.xin/mirrors/nginxinc/nginx-unprivileged:stable + +COPY --from=build /app/dist /app/dist \ No newline at end of file diff --git a/src/views/room/index.vue b/src/views/room/index.vue index c5e3b25..f864773 100644 --- a/src/views/room/index.vue +++ b/src/views/room/index.vue @@ -25,7 +25,8 @@