NOTO

docker上のpostgresqlにユーザを作成

 Date:2019-02-11 20:47:53 +0900
 Categories: TECHNOLOGY

概要

ただハマっただけの記録です。
仕事用のPCで仕事用の開発環境が入っているんですが、postgresqlはdockerで動いておりlocalhostが使われているので、そのdocker上に別ユーザで別データベースを作ろうとしたときにdockerがわからなかったためハマった記録です。

dockerのコンソールに入る

$ docker exec -ti CONTAINER_NAME bash

ユーザを作成

u postgres # postgresユーザで操作する

$ whoami

postgres

$ psql -U postgres

(postgresql console)

postgres=# \du

List of roles

Role name | Attributes | Member of

-----------+------------------------------------------------+-----------

postgres | Superuser, Create role, Create DB, Replication | {}

postgres=# \q # 一回出る

$ createdb NAME -P # パスワード付き

Enter password for new role:

Enter it again:

$ psql -U postgres

postgres=# \du

List of roles

Role name | Attributes | Member of

-----------+------------------------------------------------+-----------

postgres | Superuser, Create role, Create DB, Replication | {}

NAME | | {}

DB作成の権限を付与する

postgres=# ALTER ROLE NAME CREATEDB;

ALTER ROLE

postgres=# \du

List of roles

Role name | Attributes | Member of

-----------+------------------------------------------------+-----------

postgres | Superuser, Create role, Create DB, Replication | {}

NAME | Create DB | {}

railsで使用していたんですが、これでようやくスタートライン...はまった。

Tweet