Skip to content

[apisix] README 启动了 MySQL,但当前 Nacos 配置似乎使用 Derby,建议说明用途或简化部署 #1087

@Harry33t

Description

@Harry33t

问题描述

我在本地测试 apisix sample 时,发现 README 中要求启动 MySQL:

docker compose -f apisix/deploy/mysql5.7-compose/docker-compose.yml up -d

但是查看 apisix/deploy/nacos2.0.3-compose/docker-compose.yml 后,当前 Nacos 配置看起来使用的是内嵌 Derby:

  • SPRING_DATASOURCE_PLATFORM=derby

而 MySQL 相关配置似乎是注释状态:

# - SPRING_DATASOURCE_PLATFORM=mysql
# - MYSQL_SERVICE_HOST=mysql

也就是说,当前 APISIX sample 的实际运行链路可能并不需要 MySQL。

README 中应该明确说明 MySQL 是否是当前 APISIX sample 的必要依赖。

如果 MySQL 不是必要依赖,建议从启动步骤中移除 MySQL,简化 demo。

如果 MySQL 是为后续扩展或可选配置准备的,建议 README 中明确说明:

MySQL is optional. The default Nacos setup uses embedded Derby in this sample.

建议修复方式

可以考虑两种方向:

方案一:简化 README,移除 MySQL 启动步骤

如果当前 demo 使用 Derby 即可正常运行,可以把 README 中的 MySQL 启动步骤去掉,只保留:

docker compose -f apisix/deploy/etcd-compose/docker-compose.yml up -d
docker compose -f apisix/deploy/nacos2.0.3-compose/docker-compose.yml up -d
docker compose -f apisix/deploy/apisix-compose/docker-compose.yml up -d

方案二:保留 MySQL,但说明其用途

如果项目希望展示 Nacos + MySQL 的部署方式,则建议启用 Nacos 中的 MySQL 配置,并在 README 中说明 MySQL 的作用。


- SPRING_DATASOURCE_PLATFORM=mysql
- MYSQL_SERVICE_HOST=mysql

影响

这不是阻塞性 bug,但会明显增加 APISIX sample 的运行复杂度。对于第一次接触该 sample 的用户来说,减少不必要的依赖可以显著降低跑通成本。如果这个方向可以接受,我可以继续提交 PR。

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions