Установка pgadmin4 на Linux

12 марта 2021 г. 1:06

Окунись в чувственную атмосферу

Открой

Твоя скидка 10% по промокоду: VIVAZZI

Эстетика
Яркие эмоции
Телесные практики
Зажигательное шоу
Новосибирск
18 марта 2023
sacral.club

Установка pgadmin через docker

Docker позволяет легко запустить контейнер pgadmin. Возможно, это самый лёгкий способ установки pgadmin.

На мой взгляд ещё проще устанавливать сразу связку postgresql вместе с pgadmin, используя Docker. Вы можете взглянуть на мой репозиторий, в котором содержится инструкция по запуску postgresql и pgadmin: https://github.com/vivazzi/docker_pg_admin

Если вы решили отдельно поставить pgAdmin через Docker, то сначала нужно скачать образ:

docker pull dpage/pgadmin4

Затем уже можно запустить контейнер:

docker run -p 80:80 \
    -e 'PGADMIN_DEFAULT_EMAIL=mail@mail.com' \
    -e 'PGADMIN_DEFAULT_PASSWORD=my_password' \
    -d dpage/pgadmin4

Теперь в браузере по адресу localhost запустится pgadmin.

Установка через pipenv

Для более лёгкой установки pgAdmin через pipenv я написал инсталятор py_pg_admin, который устанавливает pgAdmin, создаёт короткую команду терминала и добавляет иконку в Меню Линукса.
Инсталятор py_pg_admin находится на гитхабе: https://github.com/vivazzi/py_pg_admin

Внимание: Для начала убедитесь, что у вас актуальная версия pip и pipenv:
Установка и обновление pip и pipenv
Иначе pipenv может пропустить ошибку несовместимости пакетов или не установить требуемые пакеты и pgAdmin может не запуститься.

Установка pgAdmin через pipenv, используя py_pg_admin

Прежде всего удалите pgadmin3 или pgadmin4, если вы пытались установить его через исходный код или apt:

sudo apt purge pgadmin3 pgadmin4
sudo apt autoremove

Теперь выполните следующие шаги:

1. Откройте терминал и склонируйте репозиторий куда-нибудь в свою домашнюю папку.

git clone https://github.com/vivazzi/py_pg_admin.git
cd py_pg_admin

2. (Опционально) Скопируйте local_settings_sample.py в local_settings.py и установите желаемые параметры. Установщик содержит несколько сохранённых конфигураций Pipfile-ов. Чтобы посмотреть доступные, введите:

python3 pre_install.py --help

3. Запустите pre_install.py и следуйте инструкциям:

python3 pre_install.py

Эта команда создаёт папку .venv в папке проекта для того, чтобы pipenv установил виртуальное окружение рядом с проектом. Также команда попытается добавить Pipfile, указанной версии в local_settings.py, если вы сами его не создавали.

4. Убедитесь, что у вас установлен pipenv >= 2020.11.15 (более старые версии могут пропускать требуемые зависимые пакеты). Проверьте ваш Pipfile (создайте ваш Pipfile, если хотите использовать другую версию pgAdmin) и установите пакеты:

pipenv sync

5. Запустите в терминале:

sudo python3 post_install.py

Теперь вы можете запускать pgAdmin в терминале: pgAdmin[major version]. Например:

pgadmin4

Для удобства вы можете использовать иконку в Меню Линукса в разделе Программирование, например: Меню\Программирование\pgAdmin 4

После запуска иконки будет открыт терминал со следующей инструкцией:

Starting pgAdmin 4. Please navigate to http://127.0.0.1:5050 in your browser.
Using production server...

Теперь вы можете открыть pgAdmin на странице http://127.0.0.1:5050 в вашем браузере.

Решение ошибок

Репозиторий https://ftp.postgresql.org/pub/pgadmin/pgadmin4/apt/ не содержит файла Release

pgAdmin4-5.0 можно установить через apt. Следуя инструкции вы должны добавить репозиторий:

sudo sh -c 'echo "deb https://ftp.postgresql.org/pub/pgadmin/pgadmin4/apt/$(lsb_release -cs) pgadmin4 main" > /etc/apt/sources.list.d/pgadmin4.list

Но при этом может возникнуть ошибка отсутствия apt для вашей версии Линукс. Например, как это было с моим Linux Mint версии ulyssa:

Репозиторий «https://ftp.postgresql.org/pub/pgadmin/pgadmin4/apt/ulyssa pgadmin4 Release» не содержит файла Release

Чтобы исправить это, сначала выберите доступную версию дистрибутива https://ftp.postgresql.org/pub/pgadmin/pgadmin4/apt/. Например, для себя я выбрал groovy.

Затем откройте файл /etc/apt/sources.list.d/pgadmin4.list:

nano /etc/apt/sources.list.d/pgadmin4.list

И впишите вместо вашей версии Linux выбранную версию. Например, в моём случае я сделал так:

# Было
deb https://ftp.postgresql.org/pub/pgadmin/pgadmin4/apt/ulyssa pgadmin4 main

# Стало
deb https://ftp.postgresql.org/pub/pgadmin/pgadmin4/apt/groovy pgadmin4 main

ModuleNotFoundError: No module named 'cheroot'

При ошибке:

pgAdmin Command: "/usr/pgadmin4/venv/bin/python3 /usr/pgadmin4/web/pgAdmin4.py"
Traceback (most recent call last):
  File "../web/pgAdmin4.py", line 16, in <module>
    from cheroot.wsgi import Server as CherootServer
ModuleNotFoundError: No module named 'cheroot'

Установите cheroot:

pipenv install cheroot

Command 'krb5-config --libs gssapi' returned non-zero exit

При ошибке:

subprocess.CalledProcessError: Command 'krb5-config --libs gssapi' returned non-zero exit status 1

Нужно установить libkrb5-dev и gssapi:

$ sudo ln -s /usr/bin/krb5-config.mit /usr/bin/krb5-config
$ sudo ln -s /usr/lib/x86_64-linux-gnu/libgssapi_krb5.so.2 /usr/lib/libgssapi_krb5.so
$ sudo apt-get install python-pip libkrb5-dev
$ sudo pip install gssapi

ValueError: User model must contain fs_uniquifier as of 4.0.0

При установке pgAdmin4-4.29 через pip или pipenv может возникнуть ошибка:

ValueError: User model must contain fs_uniquifier as of 4.0.0

Дело в том, что устанавливается версия Flask-Security несовместимая с версией Flask 1.0.2. Добавьте в requirements.txt или Pipfile подходящую версию Flask-Security, например, так:

[[source]]
url = "https://pypi.org/simple"
verify_ssl = true
name = "pypi"

[packages]
pgadmin4 = {file = "https://ftp.postgresql.org/pub/pgadmin/pgadmin4/v4.29/pip/pgadmin4-4.29-py3-none-any.whl"}
flask-security-too = "==3.4.5"

[dev-packages]

[requires]
python_version = "3.8"

Оцените статью

5 из 5 (всего 2 оценки)

captcha
Отмеченные звёздочкой поля ( * ) являются обязательными для заполнения.

Спасибо за ваш отзыв!

После нажатия кнопки "Отправить" ваше сообщение будет доставлено мне на почту.

Автор статьи

Артём Мальцев

Веб-разработчик, владеющий знаниями языка программирования Python, фреймворка Django, системы управления содержимым сайта Django CMS, платформы для создания интернет-магазина Django Shop и многих различных приложений, использующих эти технологии.

Права на использование материала, расположенного на этой странице https://vivazzi.pro/ru/it/install-pgadmin4-linux/:

Разрешается копировать материал с указанием её автора и ссылки на оригинал без использования параметра rel="nofollow" в теге <a>. Использование:

Автор статьи: Артём Мальцев
Ссылка на статью: <a href="https://vivazzi.pro/ru/it/install-pgadmin4-linux/">https://vivazzi.pro/ru/it/install-pgadmin4-linux/</a>

Больше: Правила использования сайта

Представляю вашему вниманию книгу, написанную моим близким другом Максимом Макуриным: Секреты эффективного управления ассортиментом.

Книга предназначается для широкого круга читателей и, по мнению автора, будет полезна специалистам отдела закупок и логистики, категорийным и финансовым менеджерам, менеджерам по продажам, аналитикам, руководителям и директорам, в компетенции которых принятие решений по управлению ассортиментом.

Комментарии: 0

Вы можете оставить комментарий как незарегистрированный пользователь.

Но зарегистрировавшись, вы сможете:

  • получать оповещения об ответах
  • просматривать свои комментарии
  • иметь возможность использовать все функции разработанных сервисов

Для комментирования от своего имени войдите или зарегистрируйтесь на сайте Vuspace

Отправить

На данный момент нет специального поиска, поэтому я предлагаю воспользоваться обычной поисковой системой, например, Google, добавив "vivazzi" после своего запроса.

Попробуйте

Выберите валюту для отображения денежных единиц