Commit 423f0fd3 authored by Laurent Lecluse's avatar Laurent Lecluse
Browse files

Nouvelle config docker

parent e4eed643
Loading
Loading
Loading
Loading
Loading

Makefile

0 → 100644
+130 −0
Original line number Diff line number Diff line
# On s'appuie sur le .env
include .env

ifeq ($(APP_ENV),dev)
    PROFILS := --profile dev
else
    PROFILS := --profile prod
endif

ifeq ($(MAIL_ENABLED),true)
    ifeq ($(MAIL_SMTP_HOST),)
        # Si le MAIL_SMTP_HOST n'est pas renseigné, alors on va utiliser un mailer local pour récupérer les mails
        # S'il est renseigné, alors on considère qu'on va utiliser un serveur SMTP externe
        PROFILS += --profile mail
    endif
endif

ALL_PROFILS := --profile dev --profile prod --profile bdd --profile mail



# Commandes
help:
	@echo "Commandes disponibles:"
	@echo ""
	@awk 'BEGIN {FS = ":.*?## "} /^[a-zA-Z_-]+:.*?## / {printf "\033[36m%-20s\033[0m %s\n", $$1, $$2}' $(MAKEFILE_LIST)
	@echo ""
	@echo "Utilisez 'make <commande>' avec une des commandes ci-dessus."
.PHONY: help



install: ## Build des conteneurs de l'application
	docker compose $(PROFILS) up -d
.PHONY: install



uninstall: ## Désinstallation
	docker compose $(ALL_PROFILS) down --rmi all --volumes --remove-orphans
	docker network rm $(APP_NAME)-network -f
.PHONY: uninstall



start: ## Démarre les conteneurs de l'application
	docker compose $(PROFILS) start
.PHONY: start



stop: ## Stoppe les conteneurs de l'application
	docker compose $(PROFILS) stop
.PHONY: stop



bash: ## Entrer dans le bash du container php
	docker exec -it $(APP_NAME)-php /bin/bash
.PHONY: bash



bash-apache: ## Entrer dans le container Apache
	docker exec -it $(APP_NAME)-apache /bin/sh
.PHONY: bash-apache



bash-node: ## Entrer dans le container Node.js
	docker exec -it $(APP_NAME)-nodejs /bin/sh
.PHONY: bash-node



logs: ## Afficher les logs des containers docker
	docker compose $(PROFILS) logs -f --tail=100
.PHONY: logs



update-bdd: ## Mise à jour de la base de données
	docker exec -it $(APP_NAME)-php /var/www/html/bin/ose-code test6 update-bdd
.PHONY: update-bdd



update-ddl: ## Mise à jour des définitions de la base de données
	docker exec -it $(APP_NAME)-php /var/www/html/bin/ose update-ddl
	docker exec -it $(APP_NAME)-php chown -R $(DEV_HOST_USER_ID):$(DEV_HOST_USER_ID) *
.PHONY: update-bdd



clear-cache: ## Vide le cache de l'application
	docker exec -it $(APP_NAME)-php /var/www/html/bin/ose clear-cache
.PHONY: clear-cache



rebuild: ## Reconstruit tous les conteneurs
	docker compose $(ALL_PROFILS) down -v
	docker compose $(PROFILS) build --no-cache
	docker compose $(PROFILS) up -d
.PHONY: rebuild



clean: ## Vide les caches Docker
	@echo "==========================================================="
	@echo "  /!\ ATTENTION: DESTRUCTIVE Docker cleanup operation /!\  "
	@echo "==========================================================="
	@echo "Cette opération va supprimer tous les objets suivants de votre instance Docker:"
	@echo "  - Tous les containers non utilisés"
	@echo "  - Tous les réseaux non utilisés"
	@echo "  - Toutes les images dockers non utilisées"
	@echo "  - Tous les volumes non utilisés"
	@echo "  - Tous les caches seront vidés"
	@echo ""
	@echo "CETTE ACTION NE POURRA PAS ÊTRE ANNULÉE!"
	@echo ""
	@read -p "Confirmez-vous ce nettoyage complet ? [o/N] " confirm; \
	if [ "$$confirm" = "o" ] || [ "$$confirm" = "O" ]; then \
		docker compose $(PROFILS) down -v; \
		docker system prune -af --volumes; \
		echo "Ménage fait"; \
	else \
		echo "Ménage annulé"; \
	fi
.PHONY: clean
 No newline at end of file
+8 −1
Original line number Diff line number Diff line
@@ -271,14 +271,21 @@ return [

    /* Génération d'états de sortie avec Unoconv */
    'etats-sortie'       => [
        /* Serveur où se situe le service Unoconv */
        /* Serveur où se situe le service Unoconv ou odconv */
        'host'    => '127.0.0.1', // par défaut sur la même machine que OSE

        /* Port utilisé par odconv, si vous utilisez odconv */
        'port'    => 80, // par défaut sur la même machine que OSE

        /* Si vous souhaitez utiliser odconv, décommentez la ligne ci-dessous */
        //'command' => 'odconv',

        /* Répertoire de travail utilisé à la fois par OSE et par le service Unoconv */
        'tmp-dir' => __DIR__ . '/cache/', // par défaut dans le répertoire cache de OSE
    ],



    /* Fichiers */
    'fichiers'      => [
        /* file => dans le système de fichiers par défaut, bdd => en base de données par défaut */
+3 −0
Original line number Diff line number Diff line
@@ -32,10 +32,13 @@ return [
    'application'     => [
        'etats-sortie' => [
            'host'    => AppAdmin::config()['etats-sortie']['host'] ?? '127.0.0.1',
            'port'    => AppAdmin::config()['etats-sortie']['port'] ?? 80,
            'command' => AppAdmin::config()['etats-sortie']['command'] ?? \Unicaen\OpenDocument\Document::CONV_COMMAND_UNOCONV,
            'tmp-dir' => AppAdmin::config()['etats-sortie']['tmp-dir'] ?? 'cache/',
        ],
    ],


    'view_manager'    => [
        'display_not_found_reason' => AppAdmin::config()['global']['affichageErreurs'] ?? true, // display 404 reason in template
        'display_exceptions'       => AppAdmin::config()['global']['affichageErreurs'] ?? true,
+4 −2
Original line number Diff line number Diff line
<?php

$hostUrl = ($_ENV['REQUEST_SCHEME'] ?? 'http').'://'.($_ENV['APP_HOST'] ?? 'localhost').':'.($_ENV['APP_VITE_PORT'] ?? 5133);

return [
    'unicaen-vue' => [
        'host'        => 'http://localhost:5133',
        'host'        => $hostUrl,
        'hot-loading' => AppAdmin::inDev() ? (AppAdmin::config()['dev']['hot-loading'] ?? false) : false,
        'dist-path'   => 'public/dist',
        'dist-url'    => 'dist',
+6 −0
Original line number Diff line number Diff line
@@ -87,6 +87,12 @@ class EtatSortieService extends \Application\Service\AbstractEntityService
        if (isset($this->config['host'])) {
            $document->setHost($this->config['host']);
        }
        if (isset($this->config['port'])) {
            $document->setPort((int)$this->config['port']);
        }
        if (isset($this->config['command'])) {
            $document->setConvCommand($this->config['command']);
        }
        if (isset($this->config['tmp-dir'])) {
            $document->setTmpDir($this->config['tmp-dir']);
        }
Loading