🐙

PostgreSQLをローカル環境でDockerで作成し、CLIで接続する

2023/10/26に公開

記事の内容

PostgreSQLをDockerで立ち上げて、そのDBに対してCLIで接続する方法を紹介します。

対象読者

  • PostgreSQLをローカルで立ち上げたい人
  • Dockerで立ち上げたい人

記事の長さ

1分で読めます

docker-compose.yamlの作成

今回は、Dockerコマンドではなく、docker-compose.yamlファイルを利用して、PostgreSQLを立ち上げます。

docker-compose.yaml

version: '3.9'

services:
  db:
    image: postgres:15
    container_name: postgres
    restart: always
    ports: 
      - 5432:5432
    volumes:
      - db-store:/var/lib/postgresql/data
    environment:
      POSTGRES_DB: test
      POSTGRES_USER: postgres
      POSTGRES_PASSWORD: postgres

volumes:
  db-store:

postgres:15イメージをもとに、環境変数でログインユーザーとパスワード、データベースを指定しています。
また、ローカル環境から接続できるように、ローカルの5432ポートをバインドしています。

このファイルが配置されているディレクトリで以下のコマンドを実行します。

$ docker compose up

すると、postgresqlのコンテナが立ち上がることが確認できます。

$ docker ps
CONTAINER ID   IMAGE                  COMMAND                  CREATED       STATUS          PORTS                       NAMES
a1c8125475bc   postgres:15            "docker-entrypoint.s…"   3 days ago    Up 15 minutes   0.0.0.0:5432->5432/tcp      postgres

postgresql clientで接続する

Dockerコンテナが立ち上がったら、CLIで接続を試みます。

$ psql -h localhost -p 5432 -U postgres -d test
Password for user postgres: <postgresと入力>
psql (14.9, server 15.4 (Debian 15.4-2.pgdg120+1))

test=#

上記コマンドで接続が可能です。

これで、ローカル上でPostgreSQLをDockerで立ち上げて、CLIで接続することができました。

note

勉強法やキャリア構築法など、エンジニアに役立つ記事をnoteで配信しています。

https://note.com/ring_belle/membership

Discussion