Publier une application Laravel sur Kubernetes dans Google Cloud
Publier une application Laravel sur Kubernetes dans Google Cloud
- Créer un cluster Kubernetes dans Google Cloud : Accédez à votre compte Google Cloud Console et créez un cluster Kubernetes en utilisant le panneau de contrôle Kubernetes Engine.
- Configurer l'environnement Laravel : Assurez-vous que l'environnement Laravel est configuré pour s'exécuter dans un conteneur Docker. Vous pouvez utiliser l'image Docker officielle de Laravel pour configurer votre environnement.
- Créer des fichiers de déploiement Kubernetes : Vous devez créer des fichiers de déploiement Kubernetes pour déployer votre application Laravel. Les fichiers YAML spécifient les ressources de votre cluster Kubernetes, y compris les pods, les services et les volumes. Par exemple :
apiVersion: apps/v1 kind: Deployment metadata: name: laravel-app spec: replicas: 3 selector: matchLabels: app: laravel template: metadata: labels: app: laravel spec: containers: - name: laravel image: laravel-app:latest ports: - containerPort: 80
- Configurer les fichiers de déploiement Kubernetes : Vous devez configurer les fichiers YAML pour spécifier les paramètres de votre application Laravel, tels que les variables d'environnement, les secrets, les noms de conteneurs, les ports, etc.
- Déployer l'application Laravel : Utilisez kubectl pour déployer votre application Laravel sur le cluster Kubernetes. Le déploiement de l'application se fait via la commande `kubectl apply`. Par exemple :
kubectl apply -f deployment.yaml
- Exposer l'application Laravel : Pour rendre l'application accessible à l'extérieur du cluster, vous devez exposer le service en utilisant un équilibreur de charge. Vous pouvez utiliser l'équilibreur de charge de Google Cloud Platform pour exposer le service. Par exemple :
apiVersion: v1 kind: Service metadata: name: laravel-app-service spec: selector: app: laravel ports: - name: http port: 80 targetPort: 80 type: LoadBalancer
- Vérifier que l'application Laravel est en cours d'exécution : Utilisez la commande `kubectl get services` pour afficher la liste des services exposés. Trouvez l'IP externe de l'équilibreur de charge pour accéder à votre application Laravel.
FROM php:7.4-fpm RUN apt-get update && \ apt-get install -y \ curl \ git \ unzip \ libpq-dev && \ docker-php-ext-install pdo_mysql pdo_pgsql && \ curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer WORKDIR /var/www/html COPY . /var/www/html RUN chown -R www-data:www-data /var/www/html && \ chmod -R 775 /var/www/html && \ composer install && \ php artisan key:generate && \ php artisan config:cache EXPOSE 9000