Refactor Coolify configuration: update documentation to clarify port exposure and remove external port binding in docker-compose. Enhance README with instructions for local usage and emphasize automatic port management by Traefik.
Some checks failed
Docker Build / build (push) Has been cancelled

This commit is contained in:
jletienne 2025-10-20 17:49:54 +02:00
parent 89da43b706
commit 0df9cd69f8
3 changed files with 21 additions and 20 deletions

View File

@ -10,23 +10,24 @@ Dans Coolify, ajoutez ces variables d'environnement :
NEXTCLOUD_URL=https://votre-serveur-nextcloud.com
NEXTCLOUD_USERNAME=votre_username
NEXTCLOUD_PASSWORD=votre_password
APP_HOST=0.0.0.0
APP_PORT=8000
```
### 2. Configuration du projet
- **Build Pack** : Dockerfile
- **Port** : 8000
- **Build Pack** : Dockerfile (ou Docker Compose)
- **Port** : 8000 (port interne exposé)
- **Health Check Path** : `/health`
- **Health Check Interval** : 30s
**Important :** Ne configurez PAS de port externe manuellement. Coolify gère automatiquement les ports via Traefik.
### 3. Déploiement automatique
Coolify détectera automatiquement :
- ✅ `Dockerfile` pour construire l'image
- ✅ `docker-compose.yml` pour la configuration
- ✅ Health check configuré
- ✅ Port 8000 exposé (sans binding externe)
### 4. Branches et CI/CD

View File

@ -74,18 +74,25 @@ Une fois le serveur démarré, accédez à :
Copy-Item env.example .env
notepad .env
# 2. Construire et lancer le conteneur
# 2. Modifier temporairement le docker-compose.yml pour exposer le port
# Ajoutez dans la section pynextcloud :
# ports:
# - "8000:8000"
# 3. Construire et lancer le conteneur
docker-compose up -d
# 3. Voir les logs
# 4. Voir les logs
docker-compose logs -f
# 4. Arrêter le conteneur
# 5. Arrêter le conteneur
docker-compose down
```
L'API sera accessible sur `http://localhost:8000`
**Note :** Le `docker-compose.yml` est optimisé pour Coolify (pas de port binding). Pour un usage local, ajoutez temporairement `ports: - "8000:8000"` dans la configuration.
### Déploiement sur Coolify 🚀
**Configuration Coolify :**
@ -97,19 +104,20 @@ L'API sera accessible sur `http://localhost:8000`
NEXTCLOUD_URL=https://votre-serveur-nextcloud.com
NEXTCLOUD_USERNAME=votre_username
NEXTCLOUD_PASSWORD=votre_password
APP_HOST=0.0.0.0
APP_PORT=8000
```
3. **Coolify détectera automatiquement** le `Dockerfile` et le `docker-compose.yml`
4. **Port à exposer :** 8000
4. **Port à exposer :** 8000 (port interne)
5. **Health check :** `/health` (déjà configuré dans le docker-compose.yml)
6. **⚠️ Important :** Ne configurez PAS de port externe dans Coolify. Le reverse proxy Traefik gère automatiquement le routage.
**Build automatique :**
- Coolify construira automatiquement l'image à chaque push sur la branche configurée
- Le conteneur redémarrera automatiquement en cas d'échec grâce au health check
- Accédez à l'API via le domaine configuré dans Coolify (ex: `https://pynextcloud.votre-domaine.com`)
### Construire l'image Docker manuellement

View File

@ -4,8 +4,8 @@ services:
pynextcloud:
build: .
container_name: pynextcloud-api
ports:
- "${APP_PORT:-8000}:8000"
expose:
- "8000"
environment:
# Configuration Nextcloud (à définir dans .env)
- NEXTCLOUD_URL=${NEXTCLOUD_URL}
@ -14,8 +14,6 @@ services:
# Configuration de l'application
- APP_HOST=0.0.0.0
- APP_PORT=8000
env_file:
- .env
restart: unless-stopped
healthcheck:
test: ["CMD-SHELL", "python -c \"import urllib.request; urllib.request.urlopen('http://localhost:8000/health')\""]
@ -23,10 +21,4 @@ services:
timeout: 10s
retries: 3
start_period: 40s
networks:
- pynextcloud-network
networks:
pynextcloud-network:
driver: bridge