LoginSignup
2
1

More than 5 years have passed since last update.

2rep - Azure DevOps Azure Pipelines docker-compose build編

Posted at

前回 3分でできるAzure DevOps Azure Pipelines編 ~を書きましたがその延長で、docker-composeのファイルの場合のものをやっていなかったなぁと思いメモ。

Azure DevOpsとは
「最新の一連の開発サービスを利用して、よりスマートに計画を立て、より効率的に共同作業を行い、より迅速に公開しましょう。」
(Github + Zenhub + 開発グループウェア + circleci が一つになったような感じです。)

公式サイト引用:https://azure.microsoft.com/ja-jp/services/devops/https://azure.microsoft.com/ja-jp/services/devops/

その中でも、Azure Pipelines(CI/CD)とDockerfileを使い簡単に、ビルドを自動化してみましょう。
(類似するサービスで、circleci codeshipなどがあります。)

1.前回同様リポジトリにdocker-composeのファイルをアップ

PHP Paravelとなっております。
スクリーンショット 2018-12-29 3.01.56.png

2.Pipelinesに移動 New pipelineをクリック

画像の通りに押して進む。
スクリーンショット 2018-12-29 3.04.09.png

スクリーンショット 2018-12-29 3.05.12.png

スクリーンショット 2018-12-29 3.05.26.png

スクリーンショット 2018-12-29 3.05.35.png

3.設定ファイル

スクリーンショット 2018-12-29 3.07.42.png

Dockerfile単体の場合

steps:
- script: docker build -f .docker/golang/Dockerfile -t $(imageName) .

docker-composeの場合

- script: |
    docker-compose -f docker-compose.yml --project-directory . -p docs up -d
    docker wait docs_sut_1
    docker-compose -f docker-compose.yml --project-directory . down

docker-compose.ymlのファイルが存在する箇所にパスを合わせてください。

結果

# Docker image
# Build a Docker image to deploy, run, or push to a container registry.
# Add steps that use Docker Compose, tag images, push to a registry, run an image, and more:
# https://docs.microsoft.com/azure/devops/pipelines/languages/docker

trigger:
- master

pool:
  vmImage: 'Ubuntu-16.04'

variables:
  imageName: 'php-laravel:$(build.buildId)'

steps:
- script: |
    docker-compose -f docker-compose.yml --project-directory . -p docs up -d
    docker wait docs_sut_1
    docker-compose -f docker-compose.yml --project-directory . down
  displayName: 'PHP-Laravel docker build'

4.いざ実行

スクリーンショット 2018-12-29 3.11.45.png

スクリーンショット 2018-12-29 3.14.02.png

無事ビルド完了〜!

Azure DevOps Azure Pipelines
Pipelinesは10個の無料並列ジョブをサポートされており、
先に使っている人をまたずテストが可能です。

2
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1