brainsum/damopen-project

使用Composer创建DAMopen项目的模板。

5.0.2 2024-03-07 17:28 UTC

This package is auto-updated.

Last update: 2024-09-25 10:10:47 UTC


README

Composer模板,用于启动数字资产管理项目。

本模板基于以下内容

结构

  • app:实际的Drupal文件夹。这是唯一挂载到Docker容器的文件夹,安装Drupal、添加依赖项、使用drush等操作应从这里执行。
    • 注意,在容器化环境中,这是构建时应该对映像可用的唯一文件夹。
    • Git根目录应该是项目根目录。
  • docker:包含Dockerfile和一些构建映像的辅助工具

安装

注意:这些命令已在linux(ubuntu)上测试过,在其他系统上可能需要更改才能工作。

原生composer

对于最新版本

composer create-project brainsum/damopen-project my-damopen-project

对于特定版本

composer create-project brainsum/damopen-project=2.0.x-dev my-damopen-project

Docker中的Composer

对于最新版本

DAMOPEN_PROJECT_DIR=my-damopen-project; mkdir "${DAMOPEN_PROJECT_DIR}" && docker run --rm -u "$(id -u)":"$(id -g)" -w /app --mount type=bind,src="$(pwd)"/"${DAMOPEN_PROJECT_DIR}",dst=/app brainsum/damopen-php:7.4-dev-4.22.1 composer create-project brainsum/damopen-project .

对于特定版本

DAMOPEN_PROJECT_DIR=damopen; mkdir "${DAMOPEN_PROJECT_DIR}" && docker run --rm -u "$(id -u)":"$(id -g)" -w /app --mount type=bind,src="$(pwd)"/"${DAMOPEN_PROJECT_DIR}",dst=/app brainsum/damopen-php:8.1-dev-4.42.11 composer create-project brainsum/damopen-project=5.0.x-dev .

这会创建基本结构。项目安装后,您需要进入app文件夹并使用composer install

注意:Drupal发布了9.2版本,但damopen发行版应用了一个与该版本不兼容的补丁。如果composer install失败,您可以通过在app/composer.jsonextra中添加以下内容来解决此问题(参见:cweagans/composer-patches)并重新运行它

"patches": {
    "Implement a generic revision UI (Drupal 9.2)": "https://www.drupal.org/files/issues/2021-03-24/2350939-164.patch"
},
"patches-ignore": {
    "brainsum/damopen": {
        "drupal/core": {
            "Implement a generic revision UI": "https://www.drupal.org/files/issues/2021-02-04/2350939-156-9.1.x.patch"
        }
    }
},

设置

环境变量

默认情况下,项目依赖于一些环境变量。请参阅settings.php以及settings文件夹中的文件。

(可选)Docker-compose

如果您想使用docker-compose进行开发,您应根据需要更新.env(例如,将damopen替换为您项目的名称,添加哈希盐等)。

要启动和停止环境,您可以使用项目提供的辅助脚本(startup.shshutdown.sh)。这些脚本还会查找docker-compose.local.yml文件,因此您可以对通用配置文件进行版本控制并执行本地覆盖(例如端口、挂载)。

Drush

app/drush/example.drush.yml复制为app/drush/drush.yml,并根据需要更新其内容。

文件系统权限修复

例如,在linux上,您还必须修复文件和目录权限,例如对于“private_files”、“web/sites/default/files”、“tmp”等。

额外的设置文件

app/settings/example包含多个预定义的设置文件。将settings.local.php复制到settings以启动本地设置,如果存在,则web/sites/default/settings.php会自动包含它。这有助于避免主settings.php的文件权限问题。

安装

使用drush site-install --account-pass=somestrongpass --site-mail=mail@currentsite.com --site-name=DAMopen damopen -y

您可能还想添加--account-name--account-mail

使用方法

主站点

上传您的资产即可。您可以下载它们,图像可以用于社交媒体目的,可以添加徽标等。

API

JSON:API模块已启用,因此您可以通过它来提供服务。一个例子是使用FileField Sources JSON API模块,该模块允许您配置文件字段,以便可以通过API直接从DAMopen下载文件。

开发

有关开发信息,请参阅DEVELOPMENT.md文件。