Bitbucket Pipelines で一般的なデータベースを実行する方法

robotsnoindex

このページでは、次のデータベース インスタンスに接続するための bitbucket-pipelines.yml ファイルの例を示しています。

Cassandra

pipelines: 
  default: 
    - step: 
        image: node 
        script: 
          - npm install 
          - sleep 10 # wait for cassandra 
          - npm test 
        services: 
          - cassandra 
definitions: 
  services: 
    cassandra: 
      image: cassandra 
      variables: 
        MAX_HEAP_SIZE: 512M # Need to restrict the heapsize or else Cassandra will OOM 
        HEAP_NEWSIZE: 128M

Cassandra は localhost:9042 で利用できます。


MongoDB

pipelines: 
  default: 
    - step: 
      image: node 
      script: 
        - npm install 
        - npm test 
      services: 
        - mongo 
definitions: 
  services: 
    mongo: 
      image: mongo

MongoDB は localhost:27017 で認証なしで利用できます。データベースに接続すると、MongoDB が代理で作成します。


MS SQL

image: fabiang/sqlcmd # image that provides the sqlcmd cli
pipelines:
 default:
    - step:
        script:
          # might need to wait for sqlserver to start properly here
          - sqlcmd -S localhost,1433 -U SA -P '<YourStrong!Passw0rd>' -i sqlserver.sql
        services:
          - sqlserver
definitions:
  services:
    sqlserver: 
      image: mcr.microsoft.com/mssql/server:2017-latest
      variables: 
        ACCEPT_EULA: Y
        SA_PASSWORD: <YourStrong!Passw0rd>

MySQL は localhost:1433 で利用できます。ユーザー SA (システム管理者)、パスワード <YourStrong!Passw0rd> が リポジトリの sqlserver.sql ファイルに含まれるコマンドを実行します。データベースにテーブルやスキームを入力する必要があります。基盤となるデータベース エンジンをさらに構成する必要がある場合、詳細について公式の Docker Hub イメージをご参照ください。

MySQL – テスト ユーザー

pipelines: 
  default: 
    - step: 
      image: node 
      script: 
        - npm install 
        - npm test 
      services: 
        - mysql 
definitions: 
  services: 
    mysql: 
      image: mysql 
      variables: 
        MYSQL_DATABASE: pipelines 
        MYSQL_RANDOM_ROOT_PASSWORD: yes 
        MYSQL_USER: test_user 
        MYSQL_PASSWORD: test_user_password

MySQL は localhost:3306 で、既定データベース "pipelines"、ユーザー "test_user"、パスワード "test_user_password" で利用できます。MySQL の root ユーザーにアクセスすることはできません。pipelines データベースにテーブルやスキームを入力する必要があります。基盤となるデータベースをさらに構成する必要がある場合、詳細について公式の Docker Hub イメージをご参照ください。


MySQL – root ユーザー

pipelines: 
  default: 
    - step: 
      image: node 
      script: 
        - npm install 
        - npm test 
      services: 
        - mysql 
definitions: 
  services: 
    mysql: 
      image: mysql 
      variables: 
        MYSQL_DATABASE: pipelines 
        MYSQL_ROOT_PASSWORD: let_me_in

MySQL は localhost:3306 で、既定データベース "pipelines"、ユーザー "root"、パスワード "let_me_in" で利用できます。pipelines データベースにテーブルやスキームを入力する必要があります。基盤となるデータベースをさらに構成する必要がある場合、詳細について公式の Docker Hub イメージをご参照ください。


PostgreSQL – 既定ユーザー

pipelines: 
  default: 
    - step: 
      image: node 
      script: 
        - npm install 
        - npm test 
      services: 
        - postgres 
definitions: 
  services: 
    postgres: 
      image: postgres

PostgreSQL は localhost:5432 で、既定データベース "postgres"、ユーザー "postgres"、パスワードはなしで利用できます。postgres データベースにテーブルやスキーマのデータを入力するか、使用するデータベースを新しく作成する必要があります。基盤となるデータベースをさらに構成する必要がある場合、詳細について公式の Docker Hub イメージをご参照ください。


PostgreSQL – テスト ユーザー

pipelines: 
  default: 
    - step: 
      image: node 
      script: 
        - npm install 
        - npm test 
      services: 
        - postgres 
definitions: 
  services: 
    postgres: 
      image: postgres 
      variables: 
        POSTGRES_DB: pipelines 
        POSTGRES_USER: test_user 
        POSTGRES_PASSWORD: test_user_password

PostgreSQL は localhost:5432 で、既定データベース "pipelines"、ユーザー "test_user"、パスワード "test_user_password" で利用できます。pipelines データベースにテーブルやスキームを入力する必要があります。基盤となるデータベースをさらに構成する必要がある場合、詳細について公式の Docker Hub イメージをご参照ください。


Redis

pipelines: 
  default: 
    - step: 
      image: node 
      script: 
        - npm install 
        - npm test 
      services: 
        - redis 
definitions: 
  services: 
    redis: 
      image: redis

Redis は localhost:6379 で認証なしで利用できます。

最終更新日 2020 年 6 月 24 日

この内容はお役に立ちましたか?

はい
いいえ
この記事についてのフィードバックを送信する
Powered by Confluence and Scroll Viewport.