From 568ceea3a072f36cd8216bc6476d8ce27034aaa5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=87=8E=E5=8E=9F=E5=B0=8F=E7=89=9B?= Date: Mon, 3 Mar 2025 11:11:39 +0800 Subject: [PATCH 1/3] =?UTF-8?q?docker=E7=BC=96=E8=AF=91=E6=80=A7=E8=83=BD?= =?UTF-8?q?=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .dockerignore | 6 ++++++ .gitea/workflows/docker-image.yml | 36 +++++++++++++++++++++++++++++++ Dockerfile | 15 ++++++++++--- 3 files changed, 54 insertions(+), 3 deletions(-) create mode 100644 .dockerignore create mode 100644 .gitea/workflows/docker-image.yml diff --git a/.dockerignore b/.dockerignore new file mode 100644 index 00000000..0ed9090f --- /dev/null +++ b/.dockerignore @@ -0,0 +1,6 @@ +.git +__pycache__ +*.pyc +*.pyo +*.pyd +.DS_Store \ No newline at end of file diff --git a/.gitea/workflows/docker-image.yml b/.gitea/workflows/docker-image.yml new file mode 100644 index 00000000..a5ac9277 --- /dev/null +++ b/.gitea/workflows/docker-image.yml @@ -0,0 +1,36 @@ +name: Docker Build and Push + +on: + push: + branches: + - aijiang # 推送到main分支时触发 + tags: + - "*" # 推送v开头的tag时触发(例如v1.0.0) + workflow_dispatch: # 允许手动触发 + +jobs: + build-and-push: + runs-on: ubuntu-latest + steps: + - name: Checkout code + uses: https://gitea.neppure.vip/actions/actions/checkout@v4 + + - name: Set up Docker Buildx + uses: https://gitea.neppure.vip/actions/docker/setup-buildx-action@v3 + + - name: Login to Docker Hub + uses: https://gitea.neppure.vip/actions/docker/login-action@v3 + with: + username: ${{ secrets.DOCKERHUB_USERNAME }} + password: ${{ secrets.DOCKERHUB_TOKEN }} + + - name: Build and Push Docker Image + uses: https://gitea.neppure.vip/actions/docker/build-push-action@v5 + with: + context: . # Docker构建上下文路径 + file: ./Dockerfile # Dockerfile路径 + platforms: linux/amd64,linux/arm64 # 支持arm架构 + tags: | + gitea.neppure.vip/NepPure/maimbot:${{ github.ref_name }} + gitea.neppure.vip/NepPure/maimbot:latest + push: true diff --git a/Dockerfile b/Dockerfile index 225a90a1..8f2b88f6 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,8 +1,17 @@ FROM nonebot/nb-cli:latest -WORKDIR / -COPY . /MaiMBot/ + +# 设置工作目录 WORKDIR /MaiMBot + +# 先复制依赖列表 +COPY requirements.txt . + +# 安装依赖(这层会被缓存直到requirements.txt改变) RUN pip install --upgrade -r requirements.txt + +# 然后复制项目代码 +COPY . . + VOLUME [ "/MaiMBot/config" ] EXPOSE 8080 -ENTRYPOINT [ "nb","run" ] +ENTRYPOINT [ "nb","run" ] \ No newline at end of file From ed74a6ec0f890297d04cfe44f38446b3e0a42975 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=87=8E=E5=8E=9F=E5=B0=8F=E7=89=9B?= Date: Mon, 3 Mar 2025 11:15:16 +0800 Subject: [PATCH 2/3] del more --- .gitea/workflows/docker-image.yml | 36 ------------------------------- 1 file changed, 36 deletions(-) delete mode 100644 .gitea/workflows/docker-image.yml diff --git a/.gitea/workflows/docker-image.yml b/.gitea/workflows/docker-image.yml deleted file mode 100644 index a5ac9277..00000000 --- a/.gitea/workflows/docker-image.yml +++ /dev/null @@ -1,36 +0,0 @@ -name: Docker Build and Push - -on: - push: - branches: - - aijiang # 推送到main分支时触发 - tags: - - "*" # 推送v开头的tag时触发(例如v1.0.0) - workflow_dispatch: # 允许手动触发 - -jobs: - build-and-push: - runs-on: ubuntu-latest - steps: - - name: Checkout code - uses: https://gitea.neppure.vip/actions/actions/checkout@v4 - - - name: Set up Docker Buildx - uses: https://gitea.neppure.vip/actions/docker/setup-buildx-action@v3 - - - name: Login to Docker Hub - uses: https://gitea.neppure.vip/actions/docker/login-action@v3 - with: - username: ${{ secrets.DOCKERHUB_USERNAME }} - password: ${{ secrets.DOCKERHUB_TOKEN }} - - - name: Build and Push Docker Image - uses: https://gitea.neppure.vip/actions/docker/build-push-action@v5 - with: - context: . # Docker构建上下文路径 - file: ./Dockerfile # Dockerfile路径 - platforms: linux/amd64,linux/arm64 # 支持arm架构 - tags: | - gitea.neppure.vip/NepPure/maimbot:${{ github.ref_name }} - gitea.neppure.vip/NepPure/maimbot:latest - push: true From e991a27ed49525f0b38d72fe66812fbca44cd314 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=87=8E=E5=8E=9F=E5=B0=8F=E7=89=9B?= Date: Mon, 3 Mar 2025 11:17:05 +0800 Subject: [PATCH 3/3] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E6=8C=82=E8=BD=BD?= =?UTF-8?q?=E7=82=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Dockerfile | 1 + 1 file changed, 1 insertion(+) diff --git a/Dockerfile b/Dockerfile index 8f2b88f6..c4aedc94 100644 --- a/Dockerfile +++ b/Dockerfile @@ -13,5 +13,6 @@ RUN pip install --upgrade -r requirements.txt COPY . . VOLUME [ "/MaiMBot/config" ] +VOLUME [ "/MaiMBot/data" ] EXPOSE 8080 ENTRYPOINT [ "nb","run" ] \ No newline at end of file