fix : remove init script, set backup cron to 18h30
This commit is contained in:
10
.idea/.gitignore
generated
vendored
Normal file
10
.idea/.gitignore
generated
vendored
Normal file
@@ -0,0 +1,10 @@
|
||||
# Default ignored files
|
||||
/shelf/
|
||||
/workspace.xml
|
||||
# Editor-based HTTP Client requests
|
||||
/httpRequests/
|
||||
# Ignored default folder with query files
|
||||
/queries/
|
||||
# Datasource local storage ignored files
|
||||
/dataSources/
|
||||
/dataSources.local.xml
|
||||
@@ -22,7 +22,6 @@ Copier depuis le repo :
|
||||
- `docker-compose.yml`
|
||||
- `deploy.sh`
|
||||
- `backup.sh`
|
||||
- `init/01-create-databases.sql`
|
||||
- `.env.example` → `.env`
|
||||
|
||||
```bash
|
||||
@@ -38,24 +37,37 @@ POSTGRES_USER=admin
|
||||
POSTGRES_PASSWORD=<generer avec: openssl rand -hex 32>
|
||||
```
|
||||
|
||||
Editer `init/01-create-databases.sql` : remplacer tous les `change-me` par des mots de passe forts pour chaque base.
|
||||
|
||||
> **Important :** le script `init/01-create-databases.sql` n'est execute qu'au **premier lancement** (quand le dossier `data/` est vide). Si tu modifies les mots de passe apres le premier lancement, il faut les changer manuellement via `psql`.
|
||||
|
||||
### 4. Deployer
|
||||
|
||||
```bash
|
||||
./deploy.sh
|
||||
```
|
||||
|
||||
### 5. Verifier
|
||||
### 5. Creer les bases de donnees
|
||||
|
||||
Se connecter au conteneur :
|
||||
|
||||
```bash
|
||||
docker compose exec -T postgres psql -U admin
|
||||
```
|
||||
|
||||
Creer les bases et users :
|
||||
|
||||
```sql
|
||||
CREATE USER sirh_prod WITH PASSWORD 'motdepasse';
|
||||
CREATE DATABASE sirh_prod OWNER sirh_prod;
|
||||
|
||||
CREATE USER sirh_recette WITH PASSWORD 'motdepasse';
|
||||
CREATE DATABASE sirh_recette OWNER sirh_recette;
|
||||
\q
|
||||
```
|
||||
|
||||
### 6. Verifier
|
||||
|
||||
```bash
|
||||
docker compose exec -T postgres psql -U admin -l
|
||||
```
|
||||
|
||||
Toutes les bases (sirh_prod, sirh_recette, ferme_prod, ferme_recette) doivent apparaitre.
|
||||
|
||||
## Connexion depuis les applications
|
||||
|
||||
Les applications Docker sur la meme machine se connectent via `host.docker.internal` :
|
||||
@@ -70,22 +82,16 @@ DATABASE_URL="postgresql://sirh_recette:password@host.docker.internal:5432/sirh_
|
||||
|
||||
## Ajouter une nouvelle base
|
||||
|
||||
Se connecter au conteneur :
|
||||
|
||||
```bash
|
||||
docker compose exec -T postgres psql -U admin
|
||||
```
|
||||
|
||||
Puis :
|
||||
|
||||
```sql
|
||||
CREATE USER nouvelle_app WITH PASSWORD 'motdepasse';
|
||||
CREATE DATABASE nouvelle_app OWNER nouvelle_app;
|
||||
\q
|
||||
```
|
||||
|
||||
Penser a ajouter les lignes dans `init/01-create-databases.sql` pour documenter (meme si le script ne sera pas re-execute).
|
||||
|
||||
## Backups
|
||||
|
||||
### Backup manuel
|
||||
@@ -122,8 +128,8 @@ crontab -e
|
||||
Ajouter :
|
||||
|
||||
```
|
||||
# Backup PostgreSQL tous les jours a 2h du matin
|
||||
0 2 * * * /var/www/postgres/backup.sh >> /var/log/postgres-backup.log 2>&1
|
||||
# Backup PostgreSQL tous les jours a 18h30
|
||||
30 18 * * * /var/www/postgres/backup.sh >> /var/log/postgres-backup.log 2>&1
|
||||
```
|
||||
|
||||
## Voir les logs
|
||||
|
||||
@@ -7,5 +7,4 @@ services:
|
||||
- "5432:5432"
|
||||
volumes:
|
||||
- ./data:/var/lib/postgresql/data
|
||||
- ./init:/docker-entrypoint-initdb.d:ro
|
||||
restart: unless-stopped
|
||||
|
||||
@@ -1,20 +0,0 @@
|
||||
-- Ce script est execute automatiquement au premier lancement de PostgreSQL
|
||||
-- (uniquement si le volume data/ est vide)
|
||||
--
|
||||
-- Ajouter ici les bases et users pour chaque application.
|
||||
|
||||
-- SIRH Production
|
||||
CREATE USER sirh_prod WITH PASSWORD 'change-me';
|
||||
CREATE DATABASE sirh_prod OWNER sirh_prod;
|
||||
|
||||
-- SIRH Recette
|
||||
CREATE USER sirh_recette WITH PASSWORD 'change-me';
|
||||
CREATE DATABASE sirh_recette OWNER sirh_recette;
|
||||
|
||||
-- Ferme Production
|
||||
CREATE USER ferme_prod WITH PASSWORD 'change-me';
|
||||
CREATE DATABASE ferme_prod OWNER ferme_prod;
|
||||
|
||||
-- Ferme Recette
|
||||
CREATE USER ferme_recette WITH PASSWORD 'change-me';
|
||||
CREATE DATABASE ferme_recette OWNER ferme_recette;
|
||||
Reference in New Issue
Block a user