このガイドでは、Dockerを使用してPostgreSQL 14のデータベースをセットアップするプロセスを詳しく説明します。このプロセスは、作業ディレクトリの準備から始まり、設定ファイルの作成、Dockerコンテナの実行、データベース接続のテスト、および必要に応じてコンテナ設定の変更までを含みます。
ステップ1: 作業ディレクトリの準備
まず、プロジェクトに必要な作業ディレクトリを作成します。これにより、関連するすべてのファイルが一箇所に保管され、整理されます。
# 作業フォルダを作成してカレントディレクトリに移動
mkdir -p docker_work/postgres14
cd docker_work/postgres14
ステップ2: docker-compose.yml
の作成
docker-compose.yml
ファイルは、Dockerコンテナの設定を定義します。以下の内容を使用してファイルを作成し、必要なサービスと設定を指定します。
version: '3.8'
services:
db:
image: postgres:14
environment:
TZ: Asia/Tokyo
ports:
- "55432:5432"
env_file:
- .env-dev
ステップ3: .env-dev
ファイルの作成
.env-dev
ファイルでは、環境変数を定義して、Dockerコンテナ内で使用します。これには、データベースのユーザー名、パスワード、およびデータベース名が含まれます。
POSTGRES_PASSWORD=your_password
POSTGRES_USER=postgres
POSTGRES_DB=app_development
※ your_password
は、セキュアなパスワードに置き換えてください。
ステップ4: Docker コンテナの実行
設定が完了したら、以下のコマンドを使用してDockerコンテナを起動します。
docker compose up -d
ステップ5: データベースへの接続確認
データベースへの接続をテストするには、PostgreSQLのクライアントツールをインストールし、接続を試みます。
sudo apt install postgresql-client-14
psql -h localhost -p 55432 -U postgres -d app_development
ステップ6: ポート開放
外部からのアクセスを許可するために、ファイアウォールでポートを開放する必要がある場合があります。これは、以下のコマンドを使用して行います。
sudo ufw allow 55432/tcp
sudo ufw status