GitHub 操作和 Docker-compose

Tom*_*est 3 docker docker-compose github-actions

伙计们!我需要你的帮助来运行 docker-compose build on github 操作。我有一个 docker-compose 文件,除了通过 ssh 复制 docker-compose 并在那里运行脚本之外,我无法理解如何以正确的方式构建和部署它。有docker/build-push-action@v2,但它不能与 docker-compose.yml 一起使用。

Krz*_*tof 5

这很大程度上取决于您想将图像推送到哪里。但例如,如果您使用 Azure ACR,则可以使用此操作

on: [push]

name: AzureCLISample

jobs:

  build-and-deploy:
    runs-on: ubuntu-latest
    steps:
    
    - name: Azure Login
      uses: azure/login@v1
      with:
        creds: ${{ secrets.AZURE_CREDENTIALS }}
    
    - name: Azure CLI script
      uses: azure/CLI@v1
      with:
        azcliversion: 2.0.72
        inlineScript: |
          az acr login --name <acrName>
          docker-compose up
          docker-compose push

Run Code Online (Sandbox Code Playgroud)

然后构建并推送您的图像。但这只是一个例子。如果你使用 ECR,我猜它会类似。

对于 DigitalOcean 来说,它会是这样的:

steps:
      - uses: actions/checkout@v2
      - name: Build image
        run: docker-compose up

      - name: Install doctl                 # install the doctl on the runner
        uses: digitalocean/action-doctl@v2
        with:
            token: ${{ secrets.DIGITALOCEAN_ACCESS_TOKEN }}

      - name: push image to digitalocean
        run: |
          doctl registry login
          docker-compose push
Run Code Online (Sandbox Code Playgroud)

您可以在此处找到有关此内容的更多详细信息