Bitbucket Pipelines で一般的なデータベースを実行する方法
このページでは、次のデータベース インスタンスに接続するための 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 で認証なしで利用できます。