Fedora36 で Postgresql の pgadmin4 を起動できない

Fedora36 で Postgresql の pgadmin4 を起動できない

Fedora36 に pgadmin4-desktop をインストールしたところ、最初は動作していたものの、突然停止してしまいました。私が実行した手順は、こちらに記載されています。https://www.pgadmin.org/download/pgadmin-4-rpm/

今はGnomeやコマンドラインから起動できません。例:

$ pwd
/usr/pgadmin4/bin 
$ ./pgadmin4
[0623/155920.067580:ERROR:zip_reader.cc(153)] Cannot open ZIP from file handle 3
[0623/155920.067718:ERROR:zip.cc(202)] Cannot open ZIP from file handle 3 Opening in existing browser session. 
$

Gnome Shell から起動する場合、journalctl の出力は次のようになります。

Jun 24 09:09:31 rh-brbaker systemd[1908]: Started app-glib-pgadmin4-5600.scope - Application launched by gnome-shell.
Jun 24 09:09:31 rh-brbaker systemd[1908]: Started app-gnome-pgadmin4-5600.scope - Application launched by gnome-shell.
Jun 24 09:09:31 rh-brbaker pgadmin4.desktop[5600]: [0624/090931.654802:ERROR:zip_reader.cc(153)] Cannot open ZIP from file handle 3
Jun 24 09:09:31 rh-brbaker pgadmin4.desktop[5600]: [0624/090931.654863:ERROR:zip.cc(202)] Cannot open ZIP from file handle 3
Jun 24 09:09:31 rh-brbaker gnome-keyring-daemon[1935]: asked to register item /org/freedesktop/secrets/collection/login/1, but it's already registered
Jun 24 09:09:31 rh-brbaker pgadmin4.desktop[5600]: Opening in existing browser session.

最後のエントリでブラウザ セッションを開くことについて言及しているかどうかはわかりません。デスクトップ バージョンをインストールしたからです。(おそらく、これが注意をそらす要因です。)

「yum list installed」からのインストールの詳細は次のとおりです。

pgadmin4-desktop.x86_64                              6.10-1.fc35                         @pgAdmin4              
pgadmin4-fedora-repo.noarch                          2-1                                 @System                
pgadmin4-server.x86_64                               6.10-1.fc35                         @pgAdmin4  

これを調査しているときに、Ubuntu で同じ問題を抱えている他の人を見つけましたが、答えはありませんでした。https://askubuntu.com/questions/1414609/run-pgadmin-4-on-ubuntu-22-04したがって、これは明らかに Fedora 固有の問題ではありません。

これを解決する方法について何か提案はありますか? よろしくお願いします

答え1

私は代わりにコンテナとしてデプロイすることで問題を回避しました。このための bash スクリプトは次のとおりです (必要に応じて podman を docker に置き換えることができます)。

#! /bin/bash

[email protected]
ADMIN_PWD=password
PGADMIN_PORT=8089

echo "Starting pgadmin4"
podman run -d --rm --name pgadmin4 -p $PGADMIN_PORT:80 -e PGADMIN_DEFAULT_PASSWORD=$ADMIN_PWD -e PGADMIN_DEFAULT_EMAIL=$ADMIN_EMAIL docker.io/dpage/pgadmin4:latest

echo
echo "Postgresql Admin Console access details:"
echo "========================================"
echo "Pgadmin URL: http://localhost:8089"
echo "DB Admin email: " $ADMIN_EMAIL
echo "DB Admin password: "$ADMIN_PWD
echo
echo "Database connection details:"
echo "============================"
echo "Database server url is: " $HOSTNAME
echo "Database connection port: 5432"

pgadmin4 が起動するまでに約 30 秒かかりますので、URL が機能するまでしばらくお待ちください。

ホスト マシン上のデータベースにアクセスする場合は、localhost ではなく、ホスト マシンのマシン名をサーバーに使用する必要があることに注意してください。

関連情報