Question Comment installer pgAdmin 4 en mode bureau sur Ubuntu


Comment installer pgAdmin 4 en mode bureau? le Documentation ne détaille que le mode serveur.


85
2017-09-29 16:48


origine


La version de docker était certainement un moyen beaucoup plus facile et rapide d'installer PGAdmin4. J'ai passé beaucoup de temps à le faire à l'ancienne, comme dans le fichier Lisez-moi. La façon d'y accéder est dans une fenêtre de navigateur, pointez-la sur 0.0.0.0:5050 et cela se passe vraiment bien. Il se charge assez rapidement, MAIS quand j'essaie de créer un serveur, il continue à dire que Postgresql ne fonctionne PAS, mais dans PGAdmin3, Postgresql fonctionne correctement. Avoir lu de nombreux commentaires en disant quel produit pauvre il est si utiliser à vos risques et périls !!! - Gerald Brown
kiahosseini.github.io/help/2016/10/18/… - Dave Jarvis
Seul pgadmin3 est disponible sur apt (Ubuntu 16.04). Une idée de comment ouvrir une requête à Canonical pour inclure pgadmin4 dans les paquets apt? Quel est le processus de demande d'une "application" à inclure dans un gestionnaire de paquets? - AlikElzin-kilaka
@ AlikElzin-kilaka - vérifiez ma réponse ci-dessous pour l'approche appropriée. - Muhamed Huseinbašić


Réponses:


Pour pgAdmin 4 v3.3 sur Ubuntu, selon le page de téléchargement:

Installer des dépendances, créer un environnement virtuel, télécharger, installer et configurer

Utiliser 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/v3.3/pip/pgadmin4-3.3-py2.py3-none-any.whl

Utiliser Python3.6 (Préféré pour éviter les problèmes liés au codage)

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/v3.3/pip/pgadmin4-3.3-py2.py3-none-any.whl

Configurer

Remplacez les chemins par défaut et définissez-le en mode mono-utilisateur dans le fichier de configuration local:

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

Pour Python3.x:

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

Écrire:

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

Courir

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

Pour Python3.x:

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

Accès

Accès à http: // localhost: 5050

Sortie

Quitter avec Ctrl-C

Courir encore

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

Pour Python3.6

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

Faire un raccourci

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

Écrire:

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

Pour Python3.6

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

Maintenant, vous pouvez simplement l'exécuter avec une commande plus simple:

~/pgadmin4/pgadmin4

Utilisateurs Python3

Remplacez [x] dans Python3.6 par votre version respective.

Conflit avec la configuration de pgAdmin 3

pgAdmin 4 ne commencera pas dans l'environnement où pgAdmin 3 a été précédemment installé et utilisé en raison de la configuration incompatible dans le .pgadmin annuaire. La solution la plus simple consiste à effacer ce répertoire ou à modifier config_local.py pointer vers une nouvelle .pgadmin4 annuaire.


127
2017-09-29 16:54



Ok, en suivant les instructions de Victor et en modifiant pour Python 3, j'ai pgadmin4 opérationnel. Cependant, les utilisateurs doivent savoir que ce produit présente de nombreuses dépendances supplémentaires. Vous pouvez donc prendre au sérieux la suggestion de mettre cela dans sa propre virtualenv, plutôt que dans une version existante. Mes sqlparse, SQLAlchemy, six et jinja2 ont tous été mis à jour avec les nouvelles versions. Je ne pense pas que ce sera un problème pour moi, mais je ne m'attendais pas à cela, alors je pensais que les gens devraient savoir si cela les affecterait. - Malik A. Rumi
@Dave Je voudrais prendre le crédit pour une avancée avancée et hautement sophistiquée, mais tout ce que j'ai fait, c'est échanger python2.7 pour python3.5 dans les chemins d'installation et pgAdmin4. :-) Créez la base de données de configuration python lib / python3.5 / sites-packages / pgadmin4 / setup.py Exécutez python lib / python3.5 / site-packages / pgadmin4 / pgAdmin4.py - Malik A. Rumi
Je voudrais ajouter cela pour que je puisse l'exécuter rapidement, j'ai ajouté ceci à mon ~ / .bashrc: alias pgadmin = "source ~ / pgadmin4 / bin / activate && python ~ / pgadmin4 / lib / python2.7 / site- packages / pgadmin4 / pgAdmin4.py "De cette façon, je peux simplement taper pgadmin et le lancer, comme il devrait sortir de la boîte. Vous écoutez pgadmin? - light24bulbs
Voici le lien correct pour FTP v2.1: ftp.postgresql.org/pub/pgadmin/pgadmin4/v2.1/pip/… - Aïssa Ghouti
La liaison matérielle à la dépendance de python3.6 dans le python3 lib/python3.6/site-packages/pgadmin4/pgAdmin4.py être enlevé / remplacé? De cette façon, la réponse serait plus pérenne. - paul23


Une autre option consiste à utiliser docker et une image de docker fournie par thaJeztah - https://github.com/thaJeztah/pgadmin4-docker

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

Ensuite, pour accéder à une instance de base de données PostgreSQL depuis pgadmin4, vous devez utiliser l'adresse IP de hôte au lieu de localhost et 127.0.0.1 puisque Docker les mappera sur le conteneur lui-même.

L'IP d'une instance de base de données dockerisée peut être trouvée en 2 étapes:

  • trouver l'ID du conteneur de votre base de données avec:

    docker ps

  • inspecter le container_name pour trouver son adresse IP avec:

    docker inspect <ID from previous step>

vous cherchez quelque chose comme "IPAddress": "172.18.0.3"


44
2018-01-04 12:36



Comment pouvez-vous lui faire voir un postgres dockerized? L'identifiant localhost / 127.0.0.1 / container n'a pas fonctionné pour moi. - ampofila
Pouvons-nous définir l'IP statique, c'est-à-dire que nous n'avons pas besoin de mettre à jour notre application pour pointer vers une nouvelle adresse IP du conteneur docker à chaque redémarrage - Nam G VU
Oui, mec. Vous avez sauvé la journée. - Mazhar Ahmed
Agréable! fonctionne comme un charme - Wouter
Nice, a ajouté un raccourci d'application chrome, et c'est presque comme avoir le retour de l'application réelle - chrismarx


Je ne suis pas sûr si quelque chose me manque (laissez-moi savoir si je le fais), mais cela semble beaucoup plus simple:

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

Je l'ai testé le 16.04.

source pour l'approche ci-dessus


18
2018-05-30 13:29



Cela a très bien fonctionné sur mon ordinateur portable avec 16.04. Même avec pgAdmin 3 installé. - THelper
Fonctionne très bien le 18.04! - divided
Fonctionne bien! Mais je pense qu'il n'est pas nécessaire d'utiliser «mise à niveau de sudo apt» parce que vous pouvez casser quelque chose - Max Gabderakhmanov
Vous avez tout à fait raison, la mise à niveau n'a absolument rien à voir avec cette installation. Je voulais supprimer cette ligne auparavant, mais je l'ai oublié. Juste mis à jour ma réponse, merci! :RÉ - Muhamed Huseinbašić
Ok, une autre chose je veux savoir comment je commence si je l'ai installé sur le serveur. - Akhilendra yadav