PostgreSQLの環境構築
ゼロからはじめるデータベース操作を進めるためにPostgreSQLの環境構築を進めた。本の中ではWindowsの説明があったけど、せっかくなのでさくらVPSで立てたサーバで環境を構築してみました。
最近はDockerで環境構築するのがめっちゃ楽と思っているので、debianサーバにDockerを入れて、コンテナとしてPostgreSQLの環境構築をしました。
Docker Engine インストール(Debian 向け)
公式を参考に、Dockerをインストールする。
リポジトリのセットアップ
HTTPS経由でリポジトリにアクセスしパッケージをインストールできるようにする
sudo apt-get update sudo apt-get install \ ca-certificates \ curl \ gnupg \ lsb-release
Docker の公式 GPG 鍵を追加
curl -fsSL https://download.docker.com/linux/debian/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
安定版(stable)リポジトリをセットアップ
echo \ "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/debian \ $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
Docker Engine のインストール
最新版の Docker Engine、containerd、Docker Compose をインストール
sudo apt-get update sudo apt-get install docker-ce docker-ce-cli containerd.io docker-compose-plugin
Docker Engine が正しくインストールされているかの確認
sudo docker run hello-world
Docker Composeを入れる
Docker Composeでコンテナを作るためにdocker-compose
を使えるようにする。
Docker Compose 最新版をダウンロード
sudo curl -L https://github.com/docker/compose/releases/download/1.16.1/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
実行権限を付与
sudo chmod +x /usr/local/bin/docker-compose
インストールを確認
docker-compose --version
コンテナを立てる
【Docker】postgresqlの構築を参考に、下記のようにdocker-compose.yml
を記述。
version: '3' services: db: image: postgres:latest container_name: postgres ports: - 5432:5432 volumes: - db-store:/var/lib/postgresql/data environment: - POSTGRES_PASSWORD=password volumes: db-store:
コンテナを立てる。
sudo docker-compose up -d
コンテナを起動して、接続確認をする。
sudo docker exec -it postgres bash #コンテナへ接続 psql -h localhost -U postgres #psqlで接続確認