Marlock Homes Diary

備忘録。忘れないように書きます。

pgAdmin4 インストール手順 CentOS 7

「pgAdmin 4」がリリースされてしばらく時間がたったので、
CentOS 7上にインストールし、試したい考えています。
まずはインストールです。

環境情報は下記の通りです。

# cat /etc/redhat-release
CentOS Linux release 7.3.1611 (Core)
# uname -r
3.10.0-514.2.2.el7.x86_64
# python --version
Python 2.7.5

yumコマンドを利用した手順

1.SELinuxの無効化確認(Permissive)

# getenforce
Permissive


2.PostgreSQLレポジトリRPMダウンロード

# cd /usr/local/src/
# wget https://download.postgresql.org/pub/repos/yum/9.6/redhat/rhel-7-x86_64/pgdg-redhat96-9.6-3.noarch.rpm
# ls -l /usr/local/src/pgdg-redhat96-9.6-3.noarch.rpm
-rw-r--r--. 1 root root 4816  9月 27 15:59 /usr/local/src/pgdg-redhat96-9.6-3.noarch.rpm

3.PostgreSQLレポジトリ追加

# rpm -ivh /usr/local/src/pgdg-redhat96-9.6-3.noarch.rpm
準備しています...              ################################# [100%]
更新中 / インストール中...
   1:pgdg-redhat96-9.6-3              ################################# [100%

4.EPELレポジトリの追加

# yum install epel-release -y
[省略]
# rpm -qa | grep epel
epel-release-7-8.noarch

5.pgAdmin4用ユーザの作成

# useradd pgadmin
# passwd pgadmin
ユーザー pgadmin のパスワードを変更。
新しいパスワード:[任意の文字列]
新しいパスワードを再入力してください:[任意の文字列]
passwd: すべての認証トークンが正しく更新できました。

6.pgAdmin4のインストール

# yum install pgadmin4-v1-web -y
[省略]
# yum list installed pgadmin4-v1-web 
pgadmin4-v1-web.noarch                    1.1-5.rhel7                    @pgdg96

7.pgAdmin4の設定変更

# vi /usr/lib/python2.7/site-packages/pgadmin4-web/config_distro.py

#SERVER_MODE = False # 修正箇所
MINIFY_HTML = False
HELP_PATH = '/usr/share/doc/pgadmin4-v1-docs/en_US/html'

8.pgAdminのセットアップ

# su - pgadmin
$ python /usr/lib/python2.7/site-packages/pgadmin4-web/setup.py
pgAdmin 4 - Application Initialisation
======================================


The configuration database - '/home/pgadmin/.pgadmin/pgadmin4.db' does not exist.
Entering initial setup mode...
NOTE: Configuring authentication for SERVER mode.


    Enter the email address and password to use for the initial pgAdmin user     account:

Email address: [管理者のメールアドレス]
Password:[管理者のパスワード]
Retype password:[管理者のパスワード]

The configuration database has been created at /home/pgadmin/.pgadmin/pgadmin4.db

9.Apache httpdの設定変更
※ 必要に応じて下記ファイル修正を実施

1. /usr/lib/python3.5/ → /usr/lib/python2.7/
2. アクセス可能なサーバの制御

# cp -p /etc/httpd/conf.d/pgadmin4-v1.conf.sample /etc/httpd/conf.d/pgadmin4-v1.conf
# vi /etc/httpd/conf.d/pgadmin4-v1.conf


10.サービスファイルの修正

# cp -p /usr/lib/systemd/system/pgadmin4-v1.service /etc/systemd/system/
# vi /etc/systemd/system/pgadmin4-v1.service
[下記箇所を修正]

#User=root
#Group=root

User=pgadmin
Group=pgadmin

# systemctl daemon-reload

11.pgAdmin4の起動

# systemctl start pgadmin4-v1.service
# systemctl status pgadmin4-v1.service
[省略]
   Active: active (running) since 日 2016-12-18 02:07:58 JST; 1s ago
[省略]


12.Apache httpdの起動

# systemctl start httpd.service
# systemctl status httpd.service
[省略]
   Active: active (running) since 日 2016-12-18 02:11:24 JST; 9s ago
[省略]

13.pgAdmin4へアクセス

下記URLにアクセスし、pgAdmin4にログインできることを確認
http://サーバのIPアドレス/pgadmin4

※ 80ポートをアクセス可能な状態にしておいてください。
fiwarewalld利用時のコマンド例

# firewall-cmd --add-port=80/tcp
success
# firewall-cmd --permanent --add-port=80/tcp
success

下記の画面が表示されますので、メールアドレスとパスワードを入力してログインします。
f:id:masanori19871105:20161218022650p:plain

ログイン後、PostgreSQLが動作するサーバに接続すると下記のような画面が表示されます。
f:id:masanori19871105:20161218032123p:plain


■ EDB社が提供するインストーラを利用
EDB社が提供するPostgreSQL 9.6のインストーラを利用し、
PostgreSQLをインストールするとpgAdmin4も同時にインストールされ利用することが可能です。下記URLよりダウンロード可能です。

www.enterprisedb.com


以上です、インストールが完了しのたでpgAdmin4の機能を試していきます。