Як встановити pgAdmin 4 в режимі робочого столу на Ubuntu


107

Як встановити pgAdmin 4 в режимі робочого столу? Документація деталі тільки в режимі сервера.


Версія докера впевнено була набагато простішим та швидшим способом встановлення PGAdmin4. Я витратив багато часу, щоб зробити це по старому способу, який був у файлі readme. Тоді спосіб отримати доступ до нього знаходиться у вікні браузера, вкажіть його на 0,0.0,0:5050, і він дійсно хороший. Він завантажується досить швидко, але коли я намагаюся створити з ним сервер, він постійно говорить, що Postgresql НЕ працює, однак у PGAdmin3 Postgresql працює нормально. Прочитав багато коментарів, які говорять, який поганий продукт це так використовувати на свій страх і ризик !!!
Джеральд Браун


2
На apt доступний лише pgadmin3 (ubuntu 16.04). Будь-яка ідея, як відкрити запит на Canonical, щоб включити pgadmin4 в підходящі пакети? Який процес запиту "програми" бути включеним до менеджера пакунків?
AlikElzin-kilaka

@ AlikElzin-kilaka - перевір мою відповідь нижче щодо правильного підходу.
Мухаммед Гусейнбашич

Якщо хтось просто хоче pgAdmin3, ви можете просто встановити його за допомогою програми Ubuntu Software, що є у всіх установах Ubuntu.
Кайл Бріденстін

Відповіді:


154

Для pgAdmin 4 v4.12 на Ubuntu , відповідно до сторінки завантаження :

Встановіть залежності, створіть віртуальне середовище, завантажте, встановіть та налаштуйте

Використання Python2.x

sudo apt-get install virtualenv python-pip libpq-dev python-dev

cd
virtualenv pgadmin4
cd pgadmin4
source bin/activate

pip install https://ftp.postgresql.org/pub/pgadmin/pgadmin4/v4.12/pip/pgadmin4-4.12-py2.py3-none-any.whl

Використання Python3.6 (бажано уникати проблем, що стосуються кодування)

sudo apt-get install virtualenv python3-pip libpq-dev python3-dev

cd
virtualenv -p python3 pgadmin4
cd pgadmin4
source bin/activate

pip3 install https://ftp.postgresql.org/pub/pgadmin/pgadmin4/v4.12/pip/pgadmin4-4.12-py2.py3-none-any.whl

Налаштувати

Замініть контури за замовчуванням та встановіть його в режимі однокористувача у локальному файлі конфігурації :

nano lib/python2.7/site-packages/pgadmin4/config_local.py

Для Python3.x:

nano lib/python3.6/site-packages/pgadmin4/config_local.py

Написати:

import os
DATA_DIR = os.path.realpath(os.path.expanduser(u'~/.pgadmin/'))
LOG_FILE = os.path.join(DATA_DIR, 'pgadmin4.log')
SQLITE_PATH = os.path.join(DATA_DIR, 'pgadmin4.db')
SESSION_DB_PATH = os.path.join(DATA_DIR, 'sessions')
STORAGE_DIR = os.path.join(DATA_DIR, 'storage')
SERVER_MODE = False

Біжи

python lib/python2.7/site-packages/pgadmin4/pgAdmin4.py

Для Python3.x:

python3 lib/python3.6/site-packages/pgadmin4/pgAdmin4.py

Доступ

Доступ за адресою http: // localhost: 5050

Вхід

Вийдіть за допомогою Ctrl-C

Біжи знову

cd ~/pgadmin4
source bin/activate
python lib/python2.7/site-packages/pgadmin4/pgAdmin4.py

Для Python3.6

#!/bin/bash
cd ~/pgadmin4
source bin/activate
python3 lib/python3.6/site-packages/pgadmin4/pgAdmin4.py

Зробіть ярлик

touch ~/pgadmin4/pgadmin4
chmod +x ~/pgadmin4/pgadmin4
nano ~/pgadmin4/pgadmin4

Написати:

#!/bin/bash
cd ~/pgadmin4
source bin/activate
python lib/python2.7/site-packages/pgadmin4/pgAdmin4.py

Для Python3.6

#!/bin/bash
cd ~/pgadmin4
source bin/activate
python3 lib/python3.6/site-packages/pgadmin4/pgAdmin4.py

Тепер ви можете просто запустити його за допомогою більш простої команди:

~/pgadmin4/pgadmin4

Користувачі Python3

Замініть [x] в Python3.6 відповідною версією.

Конфлікт із конфігурацією pgAdmin 3

pgAdmin 4не запускатиметься в середовищі, де pgAdmin 3раніше було встановлено та використано через несумісну конфігурацію в .pgadminкаталозі. Найпростіше рішення - або очистити цей каталог, або налаштувати, config_local.pyщоб вказати на чистий новий .pgadmin4каталог.


404 на цьому wget.
Черепахи милі

5
Я хотів би додати це, щоб я міг швидко запустити його, я додав це до свого ~ / .bashrc: alias pgadmin = "source ~ / pgadmin4 / bin / activate && python ~ / pgadmin4 / lib / python2.7 / site- пакети / pgadmin4 / pgAdmin4.py "Таким чином я можу просто ввести pgadmin, і він запускається, як і ПОТРІБНО. Ви слухаєте pgadmin?
light24bulbs

1
Ось правильне посилання на FTP v2.1: ftp.postgresql.org/pub/pgadmin/pgadmin4/v2.1/pip/…
Aïssa Ghouti

1
Чи може жорстке посилання на залежність python3.6 у python3 lib/python3.6/site-packages/pgadmin4/pgAdmin4.pyвидаленні / заміні? Таким чином відповідь буде більш підтвердженим у майбутньому.
paul23

1
На Ubuntu 19.04, що постачається з Python 3.7, поміняйте кожну появу 3.6 та 3.7 в інструкціях Python 3.x.
Карл Ріхтер

49

Інший варіант - використовувати зображення докера та докера, надані thaJeztah - https://github.com/thaJeztah/pgadmin4-docker

$ docker run --rm -p 5050:5050 thajeztah/pgadmin4

Потім для доступу до екземпляра DB PostgreSQL зсередини pgadmin4 слід використовувати IP- хост замість localhost та 127.0.0.1, оскільки Docker буде відображати їх у сам контейнер.

IP-адресу докерізованого екземпляра БД можна знайти за допомогою 2 кроків:

  • знайдіть ідентифікатор контейнера вашого db за допомогою:

    docker ps

  • огляньте ім'я контейнера, щоб знайти його ip за допомогою:

    docker inspect <ID from previous step>

ви шукаєте щось на зразок "IPAddress": "172.18.0.3"


1
Як ви можете змусити його бачити докерізовані постгреси? localhost / 127.0.0.1 / ідентифікатор контейнера для мене не працював.
ampofila

1
Чи можемо ми встановити статичну IP-адресу, тобто нам не потрібно оновлювати додаток, щоб вказувати на новий IP-контейнер докер кожного разу, коли ми його перезапускаємо
Nam G VU

Приємно, додали ярлик додатка для хрому, і це майже як
повернення

Інший спосіб підключення хоста бази даних: stackoverflow.com/questions/24319662 / ...
qmn1711

46

В Ubuntu 16.04 можна встановити pgadmin4з

sudo sh -c 'echo "deb http://apt.postgresql.org/pub/repos/apt/ $(lsb_release -cs)-pgdg main" >> /etc/apt/sources.list.d/pgdg.list'
sudo apt install wget ca-certificates
wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add 
sudo apt update
sudo apt install pgadmin4

Я перевірив це 16.04.

джерело для вищезазначеного підходу


Гаразд, ще одна річ, я хочу знати, як мені запустити, якщо я встановив його на сервері.
Ахілендра

1
Для дистрибутивів на основі Ubuntu, таких як Mint, ви можете замінити $(lsb_release -cs)версію Ubuntu, на якій базується. Наприклад, Mint Sarah (версія 18) заснований на дружньому і виглядає наступним чином :sudo sh -c 'echo "deb http://apt.postgresql.org/pub/repos/apt/ xenial-pgdg main" >> /etc/apt/sources.list.d/pgdg.list'
aggregate1166877

2
Це виглядає як остаточне рішення, принаймні для Ubuntu + 16.xx. Дякую !
Луїб
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.