掌握docker图像管理与github动作:综合指南
>>朋友和同事经常问:“您如何如此高效地管理部署?” 我的秘密?自动执行重复任务并专注于真正重要的事情。这篇文章详细介绍了我如何使用GitHub操作和容器注册表进行无缝的Docker Image Management-您可以轻松复制的过程。
> 在当今的软件开发环境中,CI/CD不是奢侈品。这是必需的。想象一下在享用咖啡的同时毫不费力地部署代码 - 这是将github动作和容器注册表结合的能力。为什么github动作和容器注册表至关重要
github动作:您的CI/CD合作伙伴
>容器注册表:您的图像存储库
手动过程:
>在您的存储库中创建A 目录,并定义YAML Workflow文件。 此示例构建,标签和推动Docker映像:
.github/workflows
>步骤2:安全管理秘密
<code class="language-yaml">name: Build and Push Docker Image on: push: branches: - main jobs: build-and-push: runs-on: ubuntu-latest steps: - name: Checkout Code uses: actions/checkout@v4 - name: Log in to GitHub Container Registry # Securely authenticate with GHCR run: echo ${{ secrets.GITHUB_TOKEN }} | docker login ghcr.io -u ${{ github.actor }} --password-stdin - name: Build Docker Image # Build with 'latest' tag run: docker build -t ghcr.io/${{ github.repository }}/app:latest . - name: Push Docker Image to GHCR run: docker push ghcr.io/${{ github.repository }}/app:latest</code>
DOCKER_USERNAME
DOCKER_PASSWORD
秘密会自动提供并示为您的存储库。GITHUB_TOKEN
>和GITHUB_SHA
进行有效版本:GITHUB_REF
<code class="language-yaml">name: Build and Push Docker Image on: push: branches: - main jobs: build-and-push: runs-on: ubuntu-latest steps: - name: Checkout Code uses: actions/checkout@v4 - name: Log in to GitHub Container Registry # Securely authenticate with GHCR run: echo ${{ secrets.GITHUB_TOKEN }} | docker login ghcr.io -u ${{ github.actor }} --password-stdin - name: Build Docker Image # Build with 'latest' tag run: docker build -t ghcr.io/${{ github.repository }}/app:latest . - name: Push Docker Image to GHCR run: docker push ghcr.io/${{ github.repository }}/app:latest</code>
<code class="language-yaml">- name: Build Docker Image with Tags # Tag with 'latest' and unique commit SHA run: | IMAGE_NAME=ghcr.io/${{ github.repository }}/app docker build -t $IMAGE_NAME:latest -t $IMAGE_NAME:${{ github.sha }} . - name: Push Docker Images with Tags run: | docker push ghcr.io/${{ github.repository }}/app:latest docker push ghcr.io/${{ github.repository }}/app:${{ github.sha }}</code>
GITHUB_TOKEN
ACTIONS_STEP_DEBUG=true
在存储库中的详细记录中。>遵循以下步骤,您可以自动化Docker Image Management。 从今天开始,简化您的部署,并提高您的生产力。 如果您发现这个有用的话,请考虑支持我在KO-FI上的工作。
>
进一步阅读以上是使用GitHub操作和容器注册表来掌握Docker Image Management的详细内容。更多信息请关注PHP中文网其他相关文章!