docker PostgreSQLを起動してアクセスする

dockerでPostgreSQLのコンテンをコンテナイメージから起動します。

PostgreSQLのコンテナイメージを取得

docker pull postgres

タグを指定しない場合、デフォルトの”latest”が設定されます。

コンテナイメージの確認

❯ docker images 
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
postgres            latest              adf2b126dda8        8 days ago          313MB
ubuntu              latest              1d622ef86b13        4 weeks ago         73.9MB

上記の”postgres”が取得したPostgreSQLのコンテナイメージです。

コンテナ起動

# create dir
mkdir /data/postgres
# docker run
docker run -d \
    --name postgres \
    -e POSTGRES_PASSWORD=postgres \
    -p 5432:5432 \
    -v /data/postgres:/var/lib/postgresql/data \
    postgres

PostgreSQLを起動するには、”-e”オプションを指定して環境変数の”POSTGRES_PASSWORD”に初期パスワードを設定します。※起動だけなら、このパスワードの設定でOKです。

その他オプションでは、”-v”オプションを指定して、PostgreSQLのデータ保存先としてホストマシンの”/data/postgres”を指定しており、”-p”オプションを指定してホストマシンとのポート接続を指定しています。

クライアントからアクセス

以下の初期設定でPostgreSQLへアクセスします。

HOST:コンテナのIPアドレス
PORT:5432
DATABASE:postgres
USER:postgres
PASSWORD:postgres

※パスワードは、コンテナ起動時に環境変数に指定した値となります