parent
6cbdd9609f
commit
e95d9556db
@ -0,0 +1,64 @@
|
||||
# Mise en place d'un serveur PostgreSql
|
||||
|
||||
## Mise en place du conteneur docker :
|
||||
|
||||
Nous allons mettre notre instance Postgres dans un conteneur Docker.
|
||||
|
||||
Pour ce faire il faut récupérer une image PostgreSql.
|
||||
|
||||
```
|
||||
docker run --name NomDuContainer -p Host_Port:Container_Port -e POSTGRES_PASSWORD=Mdp_Postgres -d postgres
|
||||
```
|
||||
|
||||
* -p : Relie (mapping) le port du conteneur sur un port de la machine hôte. Pour plus de practicité, Host_Port = Container_Port
|
||||
* -e : Crée une variable d'environnemment
|
||||
* -d : Démarre le container en mode background
|
||||
|
||||
Verification du lancement du container :
|
||||
|
||||
```
|
||||
docker ps -a
|
||||
```
|
||||
|
||||
|
||||
### Connexion locale :
|
||||
|
||||
|
||||
```
|
||||
psql -h 127.0.0.1 -p Container_Port -U postgres
|
||||
```
|
||||
|
||||
### Connexion distante :
|
||||
|
||||
#### Connexion dans un même réseau :
|
||||
|
||||
Il faut autoriser toutes les connections, pour cela, il faut modifier les adresse d'écoute dans le ficheir de configuration du serveur.
|
||||
|
||||
> Fichier : /var/lib/postgresql/data/postgresql.conf
|
||||
|
||||
Modifier la ligne suivante :
|
||||
|
||||
> listen_addresses = 'localhost'
|
||||
|
||||
> listen_adresses = '*'
|
||||
|
||||
Maintenant, n'importe quelle machine du même réseau ayant l'adresse ip de la machine hôte ainsi que le port peut se connecter au serveur.
|
||||
|
||||
On peut tester :
|
||||
|
||||
```
|
||||
psql -h Ip_Machine_Hôte_Privée -p Container_Port -U postgres
|
||||
```
|
||||
|
||||
#### Connexion dans des réseaux distincts :
|
||||
|
||||
Pour laisser l'accès depuis l'exterieur (Internet), il faut établir une règle **PAT** du firewall du routeur (box).
|
||||
Pour cela, il faut rediriger ce qui arrive sur le port **Host_Port** du routeur vers le port **Host_Port** de la machine hebergeant docker ayant pour IP **Ip_Machine_Hôte**.
|
||||
|
||||
Ainsi les utilisateurs peuvent se connecter à distance en utilisant :
|
||||
|
||||
```
|
||||
psql -h Ip_Routeur_Publique -p Container_Port -U postgres
|
||||
```
|
||||
|
||||
|
Loading…
Reference in new issue