Postgres構成の例

Updated 2 years ago by Admin

このガイドでは、Postgresに依存するプロジェクトの継続的インテグレーションパイプラインの構成について説明します。Droneを初めて使用する場合は、最初にチュートリアルとビルド構成ガイドをお読みください。


基本例

以下の例では、Postgresサービスコンテナを起動するパイプラインを示しています。データベースサーバーは、ホスト名がサービスコンテナ名と一致するdatabase:5432で利用可能になります。

1   kind: pipeline
2 name: default
3
4 steps:
5 - name: test
6 image: postgres:9-alpine
7 commands:
8 - psql -U postgres -d test -h database
9
10 services:
11 - name: database
12 image: postgres:9-alpine
13 environment:
14 POSTGRES_USER: postgres
15 POSTGRES_DB: test


データベース設定

公式のPostgresイメージは、デフォルトのユーザー名、パスワード、データベースなどを作成するために起動時に使用される環境変数を提供します。詳細については、公式の画像ドキュメントを参照してください。

10  services:
11 - name: database
12 image: postgres
13 environment:
14 POSTGRES_USER: postgres
15 POSTGRES_DB: test


一般的な問題

初期化

Postgresコンテナに接続できない場合は、Postgresに接続の初期化と受け入れを開始するための十分な時間を与えていることを確認してください。

1   kind: pipeline
2 name: default
3
4 steps:
5 - name: test
6 image: postgres
7 commands:
8 - sleep 15
9 - psql -U postgres -d test -h database

ホスト名が正しくありません

127.0.0.1またはlocalhostを使用してPostgresコンテナに接続することはできません。 Postgresコンテナに接続できない場合は、postgresサービスコンテナの名前に対応する正しいホスト名を使用していることを確認してください。

悪い:

steps:
- name: test
image: postgres
commands:
- sleep 15
- psql -U postgres -d test -h localhost

良い:

steps:
- name: test
image: postgres
commands:
- sleep 15
- psql -U postgres -d test -h database


How did we do?