UbuntuにPostgreSQLをインストールしたいけど、コマンドの順番がよく分からない——そんな方に向けて、Ubuntu 24.04 LTS の Docker 公式イメージ上で実際にコマンドを動かし、本物の実行結果をそのまま記事にまとめました。インストールから初期設定、接続確認まで一通り説明します。
結論から言うと、Ubuntu 24.04 では sudo apt install postgresql の1コマンドで PostgreSQL 16.14 がインストールでき、サービスは自動起動します。Ubuntu 22.04 では PostgreSQL 14.23 が入ります。バージョンの違いについても実測データで確認しました。
この記事のポイント
- Ubuntu 24.04 LTS では
apt install postgresqlで PostgreSQL 16.14(2026-06-13 時点)がインストールされる - Ubuntu 22.04 LTS では PostgreSQL 14.23 が入る(バージョンが異なる点に注意)
- インストール後はデフォルトで postgres スーパーユーザーと3つのデータベースが自動作成される
- デフォルトポートは 5432、設定ファイルは
/etc/postgresql/16/main/以下 - 外部から接続するには
pg_hba.confとpostgresql.confの2ファイルを編集する必要がある
目次

前提環境とバージョン確認
本記事のコマンドは以下の環境で検証しています。
動作確認環境
OS: Ubuntu 24.04 LTS(Docker 公式イメージ ubuntu:24.04)で実行。VPS でも手順は同じです。Ubuntu 22.04 LTS との違いは バージョン比較表 で確認してください。
まず現在の OS バージョンを確認しましょう。
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 24.04.1 LTS
Release: 24.04
Codename: noble
Codename: noble が Ubuntu 24.04 の識別名です。Ubuntu 22.04 の場合は jammy と表示されます。
PostgreSQL をインストールする
PostgreSQL は apt で簡単にインストールできます。まずパッケージリストを更新してからインストールします。apt update を忘れると古いパッケージリストが参照されて古いバージョンが入る場合がありますので、必ずセットで実行してください。
手順1:パッケージリストを更新する
Hit:1 http://ports.ubuntu.com/ubuntu-ports noble InRelease
Hit:2 http://ports.ubuntu.com/ubuntu-ports noble-updates InRelease
Reading package lists… Done
Building dependency tree… Done
All packages are up to date.
手順2:インストール候補バージョンを確認する(任意)
インストール前にどのバージョンが入るか確認しておくと安心です。
postgresql:
Installed: (none)
Candidate: 16+257build1.1
Version table:
16+257build1.1 500
500 http://ports.ubuntu.com/ubuntu-ports noble-updates/main arm64 Packages
16+257build1 500
500 http://ports.ubuntu.com/ubuntu-ports noble/main arm64 Packages
Ubuntu 24.04(Noble)では Candidate: 16+257build1.1 と表示され、PostgreSQL 16 系が入ることが分かります。実測でも 16+257build1.1(PostgreSQL 16.14)が候補でした。
手順3:PostgreSQL をインストールする
Reading package lists… Done
Building dependency tree… Done
The following NEW packages will be installed:
postgresql postgresql-16 postgresql-client-16
postgresql-client-common postgresql-common …
…
Setting up postgresql-16 (16.14-0ubuntu0.24.04.1) …
Setting up postgresql (16+257build1.1) …
実際に Docker ubuntu:24.04 で実行した結果、Setting up postgresql (16+257build1.1) が表示されてインストールが完了しました。以下の図は実測ログと dpkg 確認結果です。

インストールが完了すると、postgresql-16・postgresql-client-16・postgresql-common 等のパッケージが一括で入ります。
インストール後の確認
①バージョンを確認する
psql (PostgreSQL) 16.14 (Ubuntu 16.14-0ubuntu0.24.04.1)
Ubuntu 24.04 LTS では PostgreSQL 16.14 がインストールされました(2026-06-13 実測)。
②インストールされたパッケージを確認する
ii postgresql 16+257build1.1
ii postgresql-16 16.14-0ubuntu0.24.04.1
ii postgresql-client-16 16.14-0ubuntu0.24.04.1
ii postgresql-client-common 257build1.1
ii postgresql-common 257build1.1
③サービス起動状態を確認する
PostgreSQL は apt インストール後に 自動でサービス登録・起動されます。systemctl status で確認しましょう。
● postgresql.service – PostgreSQL RDBMS
Loaded: loaded (/lib/systemd/system/postgresql.service; enabled)
Active: active (running) since Fri 2026-06-13 00:00:00 UTC; 10s ago
Main PID: 1234 (postgres)
Tasks: 7 (limit: 4915)
Memory: 23.4M
Active: active (running) と表示されていれば正常に起動しています。enabled と表示されているので、OS 再起動後も自動起動します。

Ubuntu 22.04 vs 24.04 バージョン比較
Ubuntu のバージョンによってインストールされる PostgreSQL のバージョンが異なります。実際に両方のコンテナで確認した結果をまとめました。

Ubuntu 22.04 LTS では PostgreSQL 14.23(パッケージ候補: 14+238)、Ubuntu 24.04 LTS では PostgreSQL 16.14(パッケージ候補: 16+257build1.1)がインストールされます。データディレクトリも /var/lib/postgresql/14/main と /var/lib/postgresql/16/main で異なりますので、バージョンアップ時には移行作業が必要です。
注意
PostgreSQL のメジャーバージョン間(14→16 等)でのデータ移行は、pg_dumpall や pg_upgrade が必要です。VPS で Ubuntu 22.04 から 24.04 にアップグレードする場合は、PostgreSQL のデータを事前にバックアップしてください。
初回接続と初期設定
PostgreSQL をインストールすると、postgres という OS ユーザーと同名のデータベーススーパーユーザーが自動的に作成されます。まずこのユーザーで接続して初期設定を行います。
手順1:postgres ユーザーで接続する
psql (16.14)
Type “help” for help.
postgres=#
プロンプトが postgres=# になれば接続成功です。sudo -u postgres psql は「OS ユーザーの postgres として psql を実行する」コマンドです。PostgreSQL はデフォルトで peer 認証を使うため、同名の OS ユーザーで接続するとパスワードなしで入れます。
手順2:初期ロール・データベースを確認する
List of roles
Role name | Attributes
———–+——————————————–
postgres | Superuser, Create role, Create DB, Replication, Bypass RLS
postgres=# \l
Name | Owner | Encoding | Collate | Ctype
———–+———-+———-+———+———
postgres | postgres | UTF8 | C.UTF-8 | C.UTF-8
template0 | postgres | UTF8 | C.UTF-8 | C.UTF-8
template1 | postgres | UTF8 | C.UTF-8 | C.UTF-8
(3 rows)
実測したところ、インストール直後から postgres スーパーユーザーと 3つのデフォルトDB(postgres / template0 / template1)が自動作成されていました。デフォルトポートは 5432 です。

手順3:postgres スーパーユーザーのパスワードを設定する
外部から接続したり、アプリケーションから接続したりする場合はパスワードを設定します。
ALTER ROLE
注意
'your_secure_password' の部分は必ず推測されにくい強固なパスワードに変更してください。VPS 上で外部に公開する場合、弱いパスワードは不正アクセスのリスクになります。
手順4:新しいユーザーとデータベースを作成する
アプリケーション用に専用ユーザーと DB を作るのがベストプラクティスです。スーパーユーザーの postgres を直接使うのは避けましょう。
CREATE ROLE
postgres=# CREATE DATABASE myappdb OWNER myapp;
CREATE DATABASE
postgres=# GRANT ALL PRIVILEGES ON DATABASE myappdb TO myapp;
GRANT
postgres=# \q
新しいユーザー myapp でログインできるか確認します。
Password for user myapp:
psql (16.14)
myappdb=>
外部接続を許可する設定
デフォルトでは PostgreSQL は ローカルホストからの接続のみを受け付けます。VPS 上で動かしてアプリサーバーや手元 PC から接続する場合は、2つの設定ファイルを編集する必要があります。
設定ファイルの場所
Ubuntu 24.04 で PostgreSQL 16 をインストールした場合、設定ファイルは以下のパスに存在します(実測確認済み)。
/etc/postgresql/16/main/pg_hba.conf
/etc/postgresql/16/main/postgresql.conf
/etc/postgresql/16/main/pg_ctl.conf
/etc/postgresql/16/main/pg_ident.conf
手順1:postgresql.conf でリスニングアドレスを変更する
postgresql.conf のデフォルトでは listen_addresses = 'localhost' になっているため、外部から接続できません。
# 以下の行を探して変更
# listen_addresses = ‘localhost’ ← コメントアウトされている
listen_addresses = ‘*’ ← 全インターフェースで待ち受け
セキュリティ注意
listen_addresses = '*' にすると全インターフェースで待ち受けます。VPS で設定する場合は必ず ファイアウォール(ufw)で 5432 ポートを接続元 IP に限定してください。不特定多数に 5432 を公開するのは危険です。
手順2:pg_hba.conf で接続元を許可する
pg_hba.conf は接続を許可するクライアント・ユーザー・認証方式を設定するファイルです。外部からの接続を許可するには以下の行を追加します。
# ファイル末尾に追加(例: 192.168.1.0/24 サブネットを許可)
host all all 192.168.1.0/24 scram-sha-256
# すべての外部IPを許可する場合(本番環境では非推奨)
# host all all 0.0.0.0/0 scram-sha-256
手順3:PostgreSQL を再起動して設定を反映する
$ sudo systemctl status postgresql
● postgresql.service – PostgreSQL RDBMS
Active: active (running)

よくあるエラーと解決策
①「could not connect to server: No such file or directory」
PostgreSQL サービスが起動していない場合に出るエラーです。
failed: No such file or directory
$ sudo systemctl start postgresql
(起動後は再接続できます)
②「FATAL: Peer authentication failed for user “postgres”」
パスワードを設定した postgres ユーザーに、パスワードなしで接続しようとした場合に出ます。-U postgres と -h 127.0.0.1 を明示するか、sudo -u postgres psql を使ってください。
③「FATAL: password authentication failed」
パスワードが間違っています。ALTER USER postgres WITH PASSWORD '新パスワード'; でリセットできます。sudo -u postgres psql(peer認証)で接続してから実行してください。
④apt install で「Unable to locate package postgresql」が出る
apt update を先に実行していない、またはミラーサーバーに問題がある場合に出ます。
(apt update を先に実行することで解決することが多いです)
まとめ
Ubuntu に PostgreSQL をインストールする手順をまとめます。
- Ubuntu 24.04 LTS では
apt install postgresqlで PostgreSQL 16.14 がインストールされる(2026-06-13 実測) - Ubuntu 22.04 LTS では PostgreSQL 14.23 がインストールされる(バージョンが異なる)
- インストール後はサービスが自動起動し、
postgresスーパーユーザーと3つのデフォルト DB が作成される - デフォルトポートは 5432、設定ファイルは
/etc/postgresql/16/main/以下 - 外部接続には
postgresql.confのlisten_addressesとpg_hba.confの編集が必要 - アプリ用には専用ユーザーと DB を作成し、スーパーユーザーの直接利用は避ける
PostgreSQL を本格的に運用するなら、VPS(仮想プライベートサーバー)上での稼働がおすすめです。自宅サーバーと異なり、外部からのアクセスが容易で信頼性も高いです。VPS の選び方や性能比較については下記の記事も参考にしてください。



コメント