ITADN
FriendsOfShopware/shopware-demo-environment
FriendsOfShopware/shopware-demo-environment · 文件 下载 ZIP
文件最后提交记录最后更新时间
README.md
以下内容由 AI 翻译,如有问题请点此提交 issue 反馈

Shopware 演示环境

本仓库包含一个用于运行 Shopware 6 环境的 Docker 镜像。它基于官方的 Shopware 6 Docker 镜像,并向数据库添加了一些演示数据。

用法

要启动 Shopware 6 环境,请运行以下命令:

docker run \
    --rm \
    # External reachable URL, aka sales channel URL in shopware
    -e APP_URL=http://localhost:8000 \
    -p 8000:8000 \
    ghcr.io/friendsofshopware/shopware-demo-environment:6.5.8

在此处查看所有可用镜像

此外,您可以设置 SHOPWARE_ADMIN_PASSWORD 以设置不同的管理员密码。

Varnish HTTP 缓存

要启用 Varnish HTTP 缓存支持,请将 SHOPWARE_HTTP_CACHE_ENABLE_VARNISH 环境变量设置为 1

docker run \
    --rm \
    -e APP_URL=http://localhost:8000 \
    -e SHOPWARE_HTTP_CACHE_ENABLE_VARNISH=1 \
    -p 8000:8000 \
    ghcr.io/friendsofshopware/shopware-demo-environment:6.5.8

您可以使用 SHOPWARE_VARNISH_HOSTS 环境变量来配置 Varnish 主机:

docker run \
    --rm \
    -e APP_URL=http://localhost:8000 \
    -e SHOPWARE_HTTP_CACHE_ENABLE_VARNISH=1 \
    -e SHOPWARE_VARNISH_HOSTS="http://varnish.example.com" \
    -p 8000:8000 \
    ghcr.io/friendsofshopware/shopware-demo-environment:6.5.8

如果未指定 SHOPWARE_VARNISH_HOSTS,则默认值为 http://varnish

有关使用 Shopware 配置 Varnish 的更多信息,请参阅官方文档

要安装 Shopware 6 扩展,您需要设置 EXTENSIONS 环境变量。该变量应为以空格分隔的 composer 包列表。例如:

docker run \
    --rm \
    -e APP_URL=http://localhost:8000 \
    -e EXTENSIONS="frosh/tools" \
    -p 8000:8000 \
    ghcr.io/friendsofshopware/shopware-demo-environment:6.5.8

对于 Shopware Store 插件,您需要传递由 Wildcard 环境生成的 SHOPWARE_PACKAGIST_TOKEN 环境变量。

示例:

docker run \
    --rm \
    -e APP_URL=http://localhost:8000 \
    -e EXTENSIONS="store.shopware.com/froshtools store.shopware.com/froshplatformsharebasket" \
    -e SHOPWARE_PACKAGIST_TOKEN=your-token \
    -p 8000:8000 \
    ghcr.io/friendsofshopware/shopware-demo-environment:6.5.8

对于托管在 packages.fos.gg 上的插件,请传递 FOS_PACKAGIST_TOKEN 环境变量。

示例:

docker run \
    --rm \
    -e APP_URL=http://localhost:8000 \
    -e EXTENSIONS="..." \
    -e FOS_PACKAGIST_TOKEN=your-token \
    -p 8000:8000 \
    ghcr.io/friendsofshopware/shopware-demo-environment:6.5.8

运行多个容器

如果您希望运行多个容器,应在容器之前部署一个 Traefik。这将允许您通过不同的子域名访问这些容器。

请参阅 compose.yml 文件作为示例

自定义 Fixtures

您可以向 /var/www/html 注入一个 fixture.php,以在 Shopware DI 容器上运行自定义命令,从而使用自定义数据填充数据库。

示例:

docker run \
    --rm \
    -e APP_URL=http://localhost:8000 \
    -e EXTENSIONS="frosh/tools" \
    -v $(pwd)/fixture.php:/var/www/html/fixture.php \
    -p 8000:8000 \
    ghcr.io/friendsofshopware/shopware-demo-environment:6.5.8
<?php

$kernel = require '/opt/shopware/boot.php';

var_dump($kernel->getContainer()->get('product.repository')->getDefinition()->getEntityName());

此脚本在任何容器启动时执行,因此您可以使用它向数据库填充自定义数据。此脚本中可使用所有 DI 服务。

感谢 Namespace.so

感谢 namespace.so 赞助其支持多架构的快速 Docker 构建器。如果您需要更好的 GitHub 运行器或 Docker 远程构建器,请访问 namespace.so