emakinafr/docker-proximis

满足Proximis要求的Docker环境

安装次数: 18,349

依赖项: 0

建议者: 0

安全性: 0

星标: 2

关注者: 8

分支: 4

公开问题: 1

语言:Makefile

v7.1.1 2023-10-27 08:25 UTC

README

此仓库允许创建满足Proximis Omnichannel要求的Docker环境。

要求

安装

此过程假定Docker EngineDocker Compose已正确安装。否则,在继续之前,您应该查看安装文档

将软件包添加到开发需求

此Docker环境作为Composer包提供,因此可以像PHP依赖项一样检索。要将环境作为开发需求添加,只需在项目目录内输入以下命令。

# Add the package to your development dependencies
composer require --dev emakinafr/docker-proximis

# Move several configuration files into your project directory
composer exec docker-local-install

第二个命令将复制多个文件到您的项目中,以便您可以在不修改vendor文件的情况下自定义环境。

Nginx服务器

默认的Nginx配置位于docker/local/nginx.conf。您可以根据需要修改它,例如配置您自己的本地域名。默认情况下,此配置使用域名来检索和使用正确的配置文件,以供CHANGE_CONFIG_NAME环境变量使用。例如,如果您的域名app是proximis-demo-fr.localhost,则CHANGE_CONFIG_NAME的值将是proximis-demo-fr.local

启动环境

make env-start

这就完成了!🚀

Proximis项目的配置

此操作可以通过PHP-FPM容器完成。

make env-php

一旦进入容器,官方文档将解释所有剩余的步骤。

环境变量

docker/local/.env文件中描述了多个环境变量。

DOCKER_PHP_IMAGE

定义用于php容器的镜像。有三个可能的值:proximis_php(默认值),proximis_php_blackfireproximis_php_xdebug

BLACKFIRE_*

定义本地分析应用程序所需的凭据。您可以在官方文档中找到更多详细信息。

MYSQL_*

定义本地设置MySQL服务器所需的凭据。您可以在官方文档中找到更多详细信息。

Makefile

在仓库中提供了一个Makefile,以简化Docker环境的用法。为了使用它,您必须处于其目录中。但是,由于此文件非常有用,并且我们经常使用相同的命令,您项目中的Makefile也可能存在。

为了避免需要移动到执行正确的文件,您可以将在环境目录中找到的Makefile包含在项目目录中的Makefile中。

───────┼───────────────────────────────────────────────────────────────────────
       │ File: ~/www/myproject/Makefile
───────┼───────────────────────────────────────────────────────────────────────
   1   │ # Project specific variables
   2   │ DOCKER_PATH := ./vendor/emakinafr/docker-proximis
   3   │ MAKEFILE_DIRECTORY := $(dir $(abspath $(lastword $(MAKEFILE_LIST))))
   4   │
   5   │ # Retrieve the Makefile used to manage the Docker environment
   6   │ export COMPOSE_FILE := $(DOCKER_PATH)/docker-compose.yml
   7   │ include $(DOCKER_PATH)/Makefile
   8   │
   9   │ [...]

使用这种结构,您可以直接从项目执行环境目标,如env-startenv-php,而无需将环境添加到您的仓库中。