文章目录
我们可以借助github打包我们想要的镜像,而无需借助其他工具获取网络环境。
步骤一:注册Github
注册一个github账号,然后创建一个空的项目目录,之后我们会使用这个项目来执行GitHub Actions,用于执行我们的dockerfile
步骤二:推送夹带dockerfile的项目
然后我们需要一个项目来达到我们的目标,这个项目很简单:

-
根目录下放
Dockerfile文件和.github文件夹 -
.github文件夹下创建一个workflows文件夹 -
workflows文件夹下再创建一个docker.yml文件,这个docker.yaml文件内容如下:yamlname: Build Docker Image on: workflow_dispatch: permissions: contents: read packages: write jobs: docker: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - uses: docker/login-action@v3 with: registry: ghcr.io username: ${{ github.actor }} password: ${{ secrets.GITHUB_TOKEN }} - name: Set lowercase repository run: | echo "REPO_LC=${GITHUB_REPOSITORY,,}" >> $GITHUB_ENV - name: Set version run: | echo "VERSION=$(date +'%Y%m%d-%H%M%S')" >> $GITHUB_ENV echo "SHORT_SHA=${GITHUB_SHA::7}" >> $GITHUB_ENV - name: Build and Push uses: docker/build-push-action@v6 with: context: . push: true tags: | ghcr.io/${{ env.REPO_LC }}:latest ghcr.io/${{ env.REPO_LC }}:${{ env.VERSION }} ghcr.io/${{ env.REPO_LC }}:${{ env.SHORT_SHA }} - name: Build Local Image For Export run: | docker build -t pull_docker:latest . - name: Export Image run: | docker save pull_docker:latest -o pull_docker_${VERSION}.tar - name: Compress run: | gzip pull_docker_${VERSION}.tar - name: Upload Artifact uses: actions/upload-artifact@v4 with: name: docker-image-${{ env.VERSION }} path: pull_docker_${{ env.VERSION }}.tar.gz- 都准备好之后,通过git push推送到github上
步骤三:启动Actions
在项目如下页面,进入Actions页面,按照下图红框部分,点击按钮,即可开始执行dockerfile的打包!

执行完成之后,会有一个完成的任务,我们点进去任务详情,在最后即可直接下载打包好的文件,通过zip解压后,就可以直接使用docker加载了
