インストール
$ docker pull postgres
確認
$ docker images postgres
REPOSITORY TAG IMAGE ID CREATED SIZE
postgres latest c3fe76fef0a6 6 days ago 313MB
$ docker inspect postgres
[
{
"Id": "sha256:c3fe76fef0a611a53dfc8d3ca21fa51bf8ba03cf84c593e50dfe6cc830c69de6",
"RepoTags": [
"postgres:latest"
],
....
起動
初回起動
$ docker run -d --name postgres -p 5432:5432 postgres
2回目以降
$ docker start postgres
起動確認
$ docker ps
もしくは
$docker container ls
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
f44a3f9f944a postgres "docker-entrypoint.s…" 13 minutes ago Up 5 seconds 0.0.0.0:5432->5432/tcp postgres
Macからホスト:0.0.0.0 で接続可能となる
Mac の psql コマンドを利用
psqlコマンドを直接利用するために、HomeBrewでPostgreSQLをインストール
$ brew install postgresql
<h3class="h3">確認
$ psql --host 0.0.0.0 -l --user postgres
List of databases
Name | Owner | Encoding | Collate | Ctype | Access privileges
-----------+----------+----------+------------+------------+-----------------------
postgres | postgres | UTF8 | en_US.utf8 | en_US.utf8 |
....
Docker の psql コマンドを利用
Dockerにログイン
$ docker exec -ti postgres bash
Docker上で操作
# su -u postgres
$ psql --version
psql (PostgreSQL) 11.5 (Debian 11.5-1.pgdg90+1)
postgres@f44a3f9f944a:/$ psql -l
List of databases
Name | Owner | Encoding | Collate | Ctype | Access privileges
-----------+----------+----------+------------+------------+-----------------------
postgres | postgres | UTF8 | en_US.utf8 | en_US.utf8 |
...