Mise à jour de 'Doc Docker/Postgres'

master
Audric SABATIER 3 years ago
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…
Cancel
Save