Loading compose.dev.yml +32 −10 Original line number Diff line number Diff line Loading @@ -6,7 +6,7 @@ networks: driver: bridge services: ###################################################################### # POSTGRESQL oscar-dev-postgres: container_name: oscar-dev-postgres Loading @@ -22,7 +22,7 @@ services: # env_file: # TODO # - .env.docker.dev ports: - 6543:5432 - "6543:5432" volumes: - ./docker/dev/volumes/databases/oscar_dev_data:/var/lib/postgresql/data - ./docker/dev/postgresql/docker-entrypoint-initdb.d/:/docker-entrypoint-initdb.d Loading @@ -30,6 +30,8 @@ services: context: ./docker/dev/postgresql dockerfile: Dockerfile ###################################################################### ### APACHE oscar-dev-apache: container_name: oscar-dev-apache Loading @@ -46,8 +48,10 @@ services: context: ./docker/dev/apache/ dockerfile: Dockerfile ports: - 8888:80 - "8888:80" ###################################################################### ### GEARMAN oscar-dev-gearman: container_name: oscar-dev-gearman Loading @@ -57,6 +61,8 @@ services: tty: true restart: "unless-stopped" ###################################################################### ### ELASTICSEARCH oscar-dev-elasticsearch: container_name: oscar-dev-elasticsearch Loading @@ -74,13 +80,14 @@ services: volumes: - ./docker/dev/volumes/elasticsearch:/usr/share/elasticsearch/data # ports: # - 9200:9200 # - "9200:9200" networks: - oscar-dev-network tty: true restart: "always" ###################################################################### ### WORKER oscar-dev-worker: container_name: oscar-dev-worker Loading @@ -97,29 +104,44 @@ services: context: ./docker/dev/worker dockerfile: Dockerfile ###################################################################### ### VITE oscar-dev-vite: container_name: oscar-dev-vite volumes: - ./:/var/application networks: - oscar-dev-network build: context: ./docker/dev/vite dockerfile: Dockerfile ports: - 5173:5173 - "5173:5173" ###################################################################### # KIBANA kibana: image: docker.elastic.co/kibana/kibana:7.16.1 container_name: oscar-dev-kibana depends_on: - oscar-dev-elasticsearch networks: - oscar-dev-network environment: - ELASTICSEARCH_HOSTS=http://oscar-dev-elasticsearch:9200 # Connexion à Elasticsearch ports: - "5601:5601" # Port Kibana No newline at end of file - "5601:5601" ###################################################################### # MAILHOG (capture les mails envoyés depuis Oscar) mailhog: image: mailhog/mailhog container_name: oscar-dev-mailhog networks: - oscar-dev-network ports: - "8025:8025" # Interface web MailHog - "1025:1025" # Port SMTP pour envoyer les mails No newline at end of file config/autoload/local.docker.php.dist +14 −8 Original line number Diff line number Diff line Loading @@ -56,6 +56,14 @@ return array( // gearman 'gearman-job-server-host' => $param_gearman_host, 'vite' => [ 'mode' => 'dev', 'src' => __DIR__ . '/../../ui', 'dest' => __DIR__ . '/../../public/js/oscar/vite/dist', 'base_url_dev' => 'http://127.0.0.1:5173', 'base_url_prod' => '/js/oscar/vite/dist', ], //////////////////////////////////////////////////////////////////////// // ! EXPERIMENTAL ! Loading Loading @@ -305,21 +313,19 @@ return array( 'urlAbsolute' => 'http://localhost:8080', 'mailer' => [ /**** TRANSPORT (smtp) /**** TRANSPORT (smtp) ***/ 'transport' => [ 'type' => 'smtp', 'host' => 'smtp.domain.tld', 'port' => 465, 'username' => 'smithagent', 'password' => '@m4S!n9 P4$VV0rd', 'security' => 'ssl', 'host' => 'oscar-dev-mailhog', 'port' => 1025, 'security' => false ], /****/ /**** TRANSPORT (sendmail) /**** TRANSPORT (sendmail) **** 'transport' => [ 'type' => 'sendmail', 'cmd' => '/usr/sbin/sendmail -bs', 'cmd' => '/usr/local/bin/mhsendmail -bs oscar-dev-mailhog:1025', ], /**** Loading doc/index.md +1 −1 Original line number Diff line number Diff line Loading @@ -11,7 +11,7 @@ S'adresse aux gestionnaires d'application souhaitant installer et configurer une - [Procédure d'installation](install-prod.md) : Installation détaillée d'une instance Oscar - [Procédure de mise à jour](update.md) : Procédure à appliquer lors d'une mise à jour - [Version DOCKER](../dockerize/README.md) : Déployer une instance via *Docker* - [Version DOCKER (développement)](../docker/README.md) : Déployer une instance via *Docker* (pour le développement) ## Documentation complémentaire Loading docker/README.md +10 −10 Original line number Diff line number Diff line Loading @@ -48,17 +48,17 @@ Mdp : administrateur ## Architecture Il y'a X containers : - **oscar-dev-apache** : L'application principale (Port: 8888) Il y'a 8 containers : - **oscar-dev-apache** : L'application principale (http://localhost:8888) - **oscar-dev-posgres** : Base de donnée (Port: 6543) - **oscar-dev-elasticsearch** : L'index de recherche - **oscar-dev-gearman** : Serveur de tâche - **oscar-dev-worker** : Executeur de tâche Oscar - **oscar-dev-vite** : Serveur Vite (Port: 5173) TODO : - **oscar-dev-kibana** : Pour les tests Elasticsearch via l'UI - **oscar-dev-mailhog** : Pour les mails - **oscar-dev-elasticsearch** : L'index de recherche (Ports non-exposé) - **oscar-dev-gearman** : Serveur de tâche (Ports non-exposé) - **oscar-dev-worker** : Tâche de fond Oscar - **oscar-dev-vite** : Serveur Vite (http://localhost:5173) - **oscar-dev-kibana** : Kibana (http://localhost:5101) - **oscar-dev-mailhog** : Un mail catcher (http://localhost:8025) TODO/Idée d'évolution : - **oscar-dev-php** : Regrouper le Worker dans un PHPFPM, et brancher le apache dessus (à voir) - Utiliser les fichiers .env avec Dotenc (???) Loading docker/dev/apache/Dockerfile +9 −7 Original line number Diff line number Diff line Loading @@ -2,10 +2,6 @@ FROM php:8.2-apache-bookworm LABEL authors="Stéphane BOUVRY<stephane.bouvry@unicaen.fr>" ENV APACHE_DOCUMENT_ROOT /var/application/public/ RUN sed -ri -e 's!/var/www/html!${APACHE_DOCUMENT_ROOT}!g' /etc/apache2/sites-available/*.conf RUN sed -ri -e 's!/var/www/!${APACHE_DOCUMENT_ROOT}!g' /etc/apache2/apache2.conf /etc/apache2/conf-available/*.conf # RUN apt-get update && apt-get -y install php8.2-gearman RUN apt update && apt install -y \ wget \ Loading @@ -14,9 +10,6 @@ RUN apt update && apt install -y \ libgearman-dev \ gearman-job-server # Configuration PHP COPY ./php.ini /usr/local/etc/php/conf.d/999-application.ini RUN pecl install gearman \ && docker-php-ext-enable gearman \ # XDebug Loading Loading @@ -55,6 +48,7 @@ RUN apt install -y libbz2-dev \ && docker-php-ext-install bz2 RUN apt install -y apache2-suexec-custom sudo git RUN apt install -y sendmail RUN a2enmod rewrite #RUN a2enmod suexec Loading @@ -64,6 +58,14 @@ RUN a2enmod rewrite #RUN useradd -m -s /bin/bash -g app app ## RUN chown -R app:app /var/application # Configuration PHP COPY ./php.ini /usr/local/etc/php/conf.d/999-application.ini ## Mail rerouté var mailhog avec mhsendmail RUN wget https://github.com/mailhog/mhsendmail/releases/download/v0.2.0/mhsendmail_linux_amd64 RUN chmod +x mhsendmail_linux_amd64 RUN mv mhsendmail_linux_amd64 /usr/local/bin/mhsendmail WORKDIR /var/application # Copier le script d'entrée Loading Loading
compose.dev.yml +32 −10 Original line number Diff line number Diff line Loading @@ -6,7 +6,7 @@ networks: driver: bridge services: ###################################################################### # POSTGRESQL oscar-dev-postgres: container_name: oscar-dev-postgres Loading @@ -22,7 +22,7 @@ services: # env_file: # TODO # - .env.docker.dev ports: - 6543:5432 - "6543:5432" volumes: - ./docker/dev/volumes/databases/oscar_dev_data:/var/lib/postgresql/data - ./docker/dev/postgresql/docker-entrypoint-initdb.d/:/docker-entrypoint-initdb.d Loading @@ -30,6 +30,8 @@ services: context: ./docker/dev/postgresql dockerfile: Dockerfile ###################################################################### ### APACHE oscar-dev-apache: container_name: oscar-dev-apache Loading @@ -46,8 +48,10 @@ services: context: ./docker/dev/apache/ dockerfile: Dockerfile ports: - 8888:80 - "8888:80" ###################################################################### ### GEARMAN oscar-dev-gearman: container_name: oscar-dev-gearman Loading @@ -57,6 +61,8 @@ services: tty: true restart: "unless-stopped" ###################################################################### ### ELASTICSEARCH oscar-dev-elasticsearch: container_name: oscar-dev-elasticsearch Loading @@ -74,13 +80,14 @@ services: volumes: - ./docker/dev/volumes/elasticsearch:/usr/share/elasticsearch/data # ports: # - 9200:9200 # - "9200:9200" networks: - oscar-dev-network tty: true restart: "always" ###################################################################### ### WORKER oscar-dev-worker: container_name: oscar-dev-worker Loading @@ -97,29 +104,44 @@ services: context: ./docker/dev/worker dockerfile: Dockerfile ###################################################################### ### VITE oscar-dev-vite: container_name: oscar-dev-vite volumes: - ./:/var/application networks: - oscar-dev-network build: context: ./docker/dev/vite dockerfile: Dockerfile ports: - 5173:5173 - "5173:5173" ###################################################################### # KIBANA kibana: image: docker.elastic.co/kibana/kibana:7.16.1 container_name: oscar-dev-kibana depends_on: - oscar-dev-elasticsearch networks: - oscar-dev-network environment: - ELASTICSEARCH_HOSTS=http://oscar-dev-elasticsearch:9200 # Connexion à Elasticsearch ports: - "5601:5601" # Port Kibana No newline at end of file - "5601:5601" ###################################################################### # MAILHOG (capture les mails envoyés depuis Oscar) mailhog: image: mailhog/mailhog container_name: oscar-dev-mailhog networks: - oscar-dev-network ports: - "8025:8025" # Interface web MailHog - "1025:1025" # Port SMTP pour envoyer les mails No newline at end of file
config/autoload/local.docker.php.dist +14 −8 Original line number Diff line number Diff line Loading @@ -56,6 +56,14 @@ return array( // gearman 'gearman-job-server-host' => $param_gearman_host, 'vite' => [ 'mode' => 'dev', 'src' => __DIR__ . '/../../ui', 'dest' => __DIR__ . '/../../public/js/oscar/vite/dist', 'base_url_dev' => 'http://127.0.0.1:5173', 'base_url_prod' => '/js/oscar/vite/dist', ], //////////////////////////////////////////////////////////////////////// // ! EXPERIMENTAL ! Loading Loading @@ -305,21 +313,19 @@ return array( 'urlAbsolute' => 'http://localhost:8080', 'mailer' => [ /**** TRANSPORT (smtp) /**** TRANSPORT (smtp) ***/ 'transport' => [ 'type' => 'smtp', 'host' => 'smtp.domain.tld', 'port' => 465, 'username' => 'smithagent', 'password' => '@m4S!n9 P4$VV0rd', 'security' => 'ssl', 'host' => 'oscar-dev-mailhog', 'port' => 1025, 'security' => false ], /****/ /**** TRANSPORT (sendmail) /**** TRANSPORT (sendmail) **** 'transport' => [ 'type' => 'sendmail', 'cmd' => '/usr/sbin/sendmail -bs', 'cmd' => '/usr/local/bin/mhsendmail -bs oscar-dev-mailhog:1025', ], /**** Loading
doc/index.md +1 −1 Original line number Diff line number Diff line Loading @@ -11,7 +11,7 @@ S'adresse aux gestionnaires d'application souhaitant installer et configurer une - [Procédure d'installation](install-prod.md) : Installation détaillée d'une instance Oscar - [Procédure de mise à jour](update.md) : Procédure à appliquer lors d'une mise à jour - [Version DOCKER](../dockerize/README.md) : Déployer une instance via *Docker* - [Version DOCKER (développement)](../docker/README.md) : Déployer une instance via *Docker* (pour le développement) ## Documentation complémentaire Loading
docker/README.md +10 −10 Original line number Diff line number Diff line Loading @@ -48,17 +48,17 @@ Mdp : administrateur ## Architecture Il y'a X containers : - **oscar-dev-apache** : L'application principale (Port: 8888) Il y'a 8 containers : - **oscar-dev-apache** : L'application principale (http://localhost:8888) - **oscar-dev-posgres** : Base de donnée (Port: 6543) - **oscar-dev-elasticsearch** : L'index de recherche - **oscar-dev-gearman** : Serveur de tâche - **oscar-dev-worker** : Executeur de tâche Oscar - **oscar-dev-vite** : Serveur Vite (Port: 5173) TODO : - **oscar-dev-kibana** : Pour les tests Elasticsearch via l'UI - **oscar-dev-mailhog** : Pour les mails - **oscar-dev-elasticsearch** : L'index de recherche (Ports non-exposé) - **oscar-dev-gearman** : Serveur de tâche (Ports non-exposé) - **oscar-dev-worker** : Tâche de fond Oscar - **oscar-dev-vite** : Serveur Vite (http://localhost:5173) - **oscar-dev-kibana** : Kibana (http://localhost:5101) - **oscar-dev-mailhog** : Un mail catcher (http://localhost:8025) TODO/Idée d'évolution : - **oscar-dev-php** : Regrouper le Worker dans un PHPFPM, et brancher le apache dessus (à voir) - Utiliser les fichiers .env avec Dotenc (???) Loading
docker/dev/apache/Dockerfile +9 −7 Original line number Diff line number Diff line Loading @@ -2,10 +2,6 @@ FROM php:8.2-apache-bookworm LABEL authors="Stéphane BOUVRY<stephane.bouvry@unicaen.fr>" ENV APACHE_DOCUMENT_ROOT /var/application/public/ RUN sed -ri -e 's!/var/www/html!${APACHE_DOCUMENT_ROOT}!g' /etc/apache2/sites-available/*.conf RUN sed -ri -e 's!/var/www/!${APACHE_DOCUMENT_ROOT}!g' /etc/apache2/apache2.conf /etc/apache2/conf-available/*.conf # RUN apt-get update && apt-get -y install php8.2-gearman RUN apt update && apt install -y \ wget \ Loading @@ -14,9 +10,6 @@ RUN apt update && apt install -y \ libgearman-dev \ gearman-job-server # Configuration PHP COPY ./php.ini /usr/local/etc/php/conf.d/999-application.ini RUN pecl install gearman \ && docker-php-ext-enable gearman \ # XDebug Loading Loading @@ -55,6 +48,7 @@ RUN apt install -y libbz2-dev \ && docker-php-ext-install bz2 RUN apt install -y apache2-suexec-custom sudo git RUN apt install -y sendmail RUN a2enmod rewrite #RUN a2enmod suexec Loading @@ -64,6 +58,14 @@ RUN a2enmod rewrite #RUN useradd -m -s /bin/bash -g app app ## RUN chown -R app:app /var/application # Configuration PHP COPY ./php.ini /usr/local/etc/php/conf.d/999-application.ini ## Mail rerouté var mailhog avec mhsendmail RUN wget https://github.com/mailhog/mhsendmail/releases/download/v0.2.0/mhsendmail_linux_amd64 RUN chmod +x mhsendmail_linux_amd64 RUN mv mhsendmail_linux_amd64 /usr/local/bin/mhsendmail WORKDIR /var/application # Copier le script d'entrée Loading