CookBook

PostgreSQL の Docker を作成する。

投稿日:2018-07-11 更新日:

この CookBook では、PostgreSQL 検証用の Docker の作成手順について紹介しています。

レシピ

  1. ベースイメージの作成
  2. PostgreSQL の Docker イメージを作成します
  3. 実行します

1. ベースイメージの作成

CentOS 6.9 を使用します。

Dockerfile

ロケールを ja_JP, タイムゾーンを Asia/Tokyo に変更し、root/password で ssh 接続ができるように設定します。

mycentos:6.9 というタグでビルドします。

2. PostgreSQL の Docker イメージを作成します

先ほど作成したベースイメージを利用します。

Dockerfile

細かいセットアップはシェルスクリプトに逃がし、Dockerfile からはそれを実行するようにします。
これにより、Dockerfile をシンプルにでき、かつイメージ容量の削減にもつながります。

setup_postgresql.sh

以下のユーザを作成しています。

  • postgres/postgres
  • imart/imart

以下の名前の DB を作成しています。

  • imart
  • iap_db
  • default

以下の名前のスキーマを作成しています。

  • acceldocuments

以下の設定は小さすぎるためある程度拡張します。

  • max_connections
    • 100 -> 200
  • shared_buffers
    • 128MB -> 512MB

docker run 時に実行するスクリプトです。

run.sh

sshd と PostgreSQL を起動しています。

mypostgresql:9.6 というタグでビルドします。

3. 実行します

resin-web.xml

Resin で接続する場合次のように設定します。
localhost の部分は、docker run しているマシンの IP アドレスに置き換えてください。

root/password, postgres/postgres というユーザで ssh 接続が、postgres/postgres, imart/imart というユーザで pgAdmin で接続できるようになっています。
あくまで検証用の Docker としてこのように設定しているため、セキュリティにはご注意ください。

このように、Docker イメージ化するだけで、検証用の PostgreSQL をすぐに準備できます。
是非ご活用ください。

-CookBook

執筆者:


comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

関連記事

「ラベル〇にジャンプする」と「ラベル〇」の利用方法

intra-mart Accel Platform 2019 Summerで追加された以下のアクションアイテムについて紹介します。 ラベル〇へジャンプする ラベル〇 これらのアクションアイテムによって …

ワークフローの一覧を使い分けるには(スマートフォン版)

このCookbookでは、以前に公開した「ワークフローの一覧を使い分けるには(改訂版)」に関して、お問い合わせいただいた内容を追加してスマートフォン画面でワークフローの一覧の検索条件を付与する方法をご …

no image

スクリプト開発で利用できる close 関数のご紹介

この CookBook では、スクリプト開発で利用できる close 関数について紹介します。 スクリプト開発では作成した js ファイルの中に init と言う名前の関数を定義すると思いますが、この …

no image

物理マシン 1 台で Resin のクラスタリング環境を構築する

この CookBook では、物理マシン 1 台で Resin のクラスタリング環境を構築する手順について紹介しています。 Resin のクラスタリングを構築するには通常複数台のマシンが必要ですが、D …

案件一覧「My検索条件」の活用例

このCookbookでは、intra-mart Accel Platform 2019 Springから利用可能な、案件一覧画面にある「My検索条件」機能を活用し、任意の条件別にブックマークを作成する …