こんな画面が見れるやつ。
インストール
version: "2"
services:
pgweb:
image: sosedoff/pgweb
container_name: "pgweb"
ports:
- "8081:8081"
depends_on:
- db
db:
image: postgres:11.1-alpine
environment:
POSTGRES_USER: postgres
POSTGRES_PASSWORD: pgweb
ports:
- "5432:5432"
container_name: postgres
volumes:
- "./postgres-data:/var/lib/postgresql/data"
- postgresの公式イメージによってPOSTGRES_USERにしたDBも作られる。ライブラリ/ postgres - Docker Hub
docker-compose up
pgweb | Pgweb v0.9.12 (git: 9af721176bf7b41366f0de8251fff0b47da8fce3)
postgres | selecting dynamic shared memory implementation ... posix
postgres | creating configuration files ... ok
pgweb | Starting server...
pgweb | To view database open http://0.0.0.0:8081/ in browser
- 正常に起動できれば、8081で待受が始まる。
データの投入
wget http://www.postgresqltutorial.com/wp-content/uploads/2017/10/dvdrental.zip
unzip dvdrental.zip
mv dvdrental.tar postgres-data/
docker-compose exec db bash
cd var/lib/postgresql/data/
psql -U postgres -c "CREATE DATABASE dvdrental;"
pg_restore -U postgres -d dvdrental dvdrental.tar
pg_restore: [archiver (db)] Error while PROCESSING TOC:
pg_restore: [archiver (db)] Error from TOC entry 6; 2615 2200 SCHEMA public postgres
pg_restore: [archiver (db)] could not execute query: ERROR: schema "public" already exists
Command was: CREATE SCHEMA public;
WARNING: errors ignored on restore: 1
exit
pgwebへアクセス
<ホスト名orIP>:8081 でブラウザでアクセスするとpgwebの画面が開く。
schemeタブへ移動して
postgres://postgres:pgweb@<ホスト名orIP>:5432/postgres?sslmode=disable
を入力
参考
CentOS 用 Docker CE の入手 — Docker-docs-ja 17.06.Beta ドキュメント
Docker Compose — Docker-docs-ja 17.06.Beta ドキュメント
Compose CLI リファレンス — Docker-docs-ja 17.06.Beta ドキュメント
Compose ファイル・リファレンス — Docker-docs-ja 17.06.Beta ドキュメント
Docker入門(第二回)~Dockerセットアップ、コンテナ起動~ | さくらのナレッジ
Docker入門(第六回)〜Docker Compose〜 | さくらのナレッジ
curl -L https://github.com/docker/compose/releases/download/1.23.1/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose
docker-compose でよく使いそうなコマンドおぼえがき - kasei_sanのブログ
docker-composeでマウント先を間違えると大変なことになる。 - Qiita
docker-composeでホストとコンテナのIPアドレスを同じにする
docker-composeで起動したコンテナにbashで入ったりコマンドを渡す - Qiita
docker-compose exec app bash
CentOS 7 firewalld よく使うコマンド - Qiita
firewall-cmd --add-port=80/tcp --zone=public --permanent
firewall-cmd --add-port=443/tcp --zone=public --permanent
firewall-cmd --reload
firewall-cmd --list-all
コマンドライン補完 — Docker-docs-ja 17.06.Beta ドキュメント
curl -L https://raw.githubusercontent.com/docker/compose/$(docker-compose version --short)/contrib/completion/bash/docker-compose > /etc/bash_completion.d/docker-compose
OS起動時に起動するには
docker-composeでOS起動時にコンテナを自動起動する方法 - Qiita
Docker Compose restart の挙動 - 技術備忘記
Systemdとdocker-composeでカジュアルにdockerを運用する - Qiita
restart: always
でも可能、systemdを使うことで細かい制御もできる
docker-composeでPostgreSQL + Web GUIを立ち上げ | 酒と涙とRubyとRailsと
Docker で使えるデータベースの Web GUI まとめ - Qiita
serverあれこれ: Dockerでpgweb、PostgreSQL 10.4がインストールされたコンテナ(Alpine 3.7)を構築する
Go PostgreSQLにつないでみる - Qiita
『Docker』docker-composeで開発用PostgreSQLを手に入れる(ver.01) - Qiita
PostgreSQLのサンプルデータを簡単につくる - 理系学生日記
PostgreSQL Sample Database