diff --git a/.github/workflows/docker-build.yml b/.github/workflows/docker-build.yml index 9d14585..fa70ed5 100644 --- a/.github/workflows/docker-build.yml +++ b/.github/workflows/docker-build.yml @@ -31,17 +31,25 @@ jobs: with: node-version: 20 - - name: Build Vue image + - name: Set up Docker Buildx if: steps.vue-changes.outputs.vue == 'true' - run: docker build -t bqlpfy/vue-frontend ./vue-frontend + uses: docker/setup-buildx-action@v2 - - name: Docker login + - name: Log in to DockerHub if: steps.vue-changes.outputs.vue == 'true' - run: echo "${{ secrets.DOCKER_HUB_TOKEN }}" | docker login -u "${{ secrets.DOCKER_HUB_USERNAME }}" --password-stdin + uses: docker/login-action@v2 + with: + username: ${{ secrets.DOCKER_HUB_USERNAME }} + password: ${{ secrets.DOCKER_HUB_TOKEN }} - - name: Push Vue image + - name: Build and push Vue multi-arch image if: steps.vue-changes.outputs.vue == 'true' - run: docker push bqlpfy/vue-frontend + run: | + docker buildx build \ + --platform linux/amd64,linux/arm64 \ + --push \ + -t bqlpfy/vue-frontend \ + ./vue-frontend build-java: if: contains(github.event.head_commit.message, '[skip java]') == false @@ -78,14 +86,22 @@ jobs: working-directory: ./springboot-backend run: mvn clean package -DskipTests - - name: Build Java Docker image + - name: Set up Docker Buildx if: steps.java-changes.outputs.java == 'true' - run: docker build -t bqlpfy/springboot-backend ./springboot-backend + uses: docker/setup-buildx-action@v2 - - name: Docker login + - name: Log in to DockerHub if: steps.java-changes.outputs.java == 'true' - run: echo "${{ secrets.DOCKER_HUB_TOKEN }}" | docker login -u "${{ secrets.DOCKER_HUB_USERNAME }}" --password-stdin + uses: docker/login-action@v2 + with: + username: ${{ secrets.DOCKER_HUB_USERNAME }} + password: ${{ secrets.DOCKER_HUB_TOKEN }} - - name: Push Java image + - name: Build and push Java multi-arch image if: steps.java-changes.outputs.java == 'true' - run: docker push bqlpfy/springboot-backend + run: | + docker buildx build \ + --platform linux/amd64,linux/arm64 \ + --push \ + -t bqlpfy/springboot-backend \ + ./springboot-backend diff --git a/panel_install.sh b/panel_install.sh old mode 100644 new mode 100755 index 81d34aa..885f5e6 --- a/panel_install.sh +++ b/panel_install.sh @@ -1,11 +1,14 @@ #!/bin/bash set -e -# 先检查 docker-compose 或 docker compose 命令 +# 解决 macOS 下 tr 可能出现的非法字节序列问题 +export LANG=en_US.UTF-8 +export LC_ALL=C + +# 检查 docker-compose 或 docker compose 命令 if command -v docker-compose &> /dev/null; then DOCKER_CMD="docker-compose" elif command -v docker &> /dev/null; then - # docker 命令存在,再检查子命令 compose if docker compose version &> /dev/null; then DOCKER_CMD="docker compose" else @@ -25,7 +28,7 @@ curl -L -o gost.sql https://github.com/bqlpfy/forward-panel/raw/refs/heads/main/ echo "✅ 下载完成" generate_random() { - tr -dc A-Za-z0-9