部署配置
概述
了解如何在 Galaxy 上配置应用程序。
配置您的域名
您应该做的第一件事是验证部署是否成功。检查应用程序是否可以通过导航到其 URL 来访问。然后在 Galaxy 的 galaxy.meteor.com/app/<app_name>/logs 中检查应用程序日志,查看是否存在影响部署的任何错误。
应用程序成功部署后,请访问您的 Galaxy 仪表盘,通过添加自定义域名和启用 SSL 加密来配置应用程序。
在应用程序的设置中添加域名,并将您的 DNS 指向
- galaxy-ingress.meteor.com (适用于美国东部地区的应用程序)。
- eu-west-1.galaxy-ingress.meteor.com (适用于欧洲西部地区的应用程序)。
- ap-southeast-2.galaxy-ingress.meteor.com (适用于亚太地区的应用程序)。
如果您要部署到根域名(例如 mydomain.com),请按照高级说明 此处 操作。

启用加密 通过生成免费的 Let’s Encrypt 证书来保护敏感数据,方法是点击 生成证书 或上传您自己的自定义证书。

配置您的 MongoDB
如果您的 Meteor 应用程序包含需要 Mongo 的包,则需要为您的应用程序配置一个 Mongo 数据库。大多数用户希望使用托管数据库提供商,而不是自行运行,例如 MongoDB Atlas 或 ScaleGrid。
为了获得最佳性能,我们建议您在与应用程序部署相同的 AWS 区域中设置数据库。
许多 MongoDB 提供商希望您告知他们您的应用程序将从中连接的 IP 地址,并禁止来自这些地址之外的所有连接。为了在 Galaxy 上实现这一点,您需要 以 IP 白名单模式运行您的应用程序。
为 Galaxy 创建设置文件
创建一个 Meteor 设置文件,该文件将定义应用程序在 Galaxy 上部署和运行所需的配置集。至少,设置文件需要包含 MongoDB 数据库的连接 URL。
在您的应用程序目录中,创建一个名为 settings.json 的文件。将 Mongo URI 放入文件中,使用以下格式
{
"galaxy.meteor.com": {
"env": {
"MONGO_URL": "mongodb://<dbuser>:<dbpassword>@<dbserver>:<dbport>/<dbname>"
}
}
}
您可以联系支持人员隐藏您的 settings.json 文件。完成此操作后,所有应用程序设置都将在您的帐户中隐藏。拥有任何应用程序仪表盘访问权限的用户将无法在启用此功能后,从关联的仪表盘中查看 settings.json 文件中的信息。
环境变量
Galaxy 中的环境变量使用应用程序的 settings.json 文件进行管理。Galaxy 将 {"galaxy.meteor.com": {"env": { ... }} 部分中找到的键值对解释为环境变量。
请注意,您的整个 settings.json 文件的大小限制约为 32KB。如果您的设置文件大于此大小,则您的容器将无法成功运行。不幸的是,在这种情况下,不会有任何明确的错误消息指出问题的根本原因。
常见环境变量
以下环境变量通常用于 Galaxy 应用程序
- MONGO_URL:如果您有任何需要 Mongo 数据库的 Meteor 包,则必须设置此环境变量。请参阅您的数据库提供商说明以确定 URL 的正确格式和内容。示例格式为 "MONGO_URL": "mongodb://<db_username>:<db_password>@<db_server_host>:<db_server_port>/<db_name>"
- MONGO_OPLOG_URL:如果您正在为应用程序使用 MongoDB,则这是一个可选的环境变量。这是一个性能优化,我们建议在生产应用程序中使用。在我们的 详细文档 中了解更多信息。示例格式为 "MONGO_OPLOG_URL": "mongodb://<oplog_username>:<oplog_password>@<db_server_host>:<db_server_port>/<oplog_db_name>?authSource=admin"
- ROOT_URL:这是一个可选的环境变量。如果您有任何需要生成 URL 的 Meteor 包,则这些包将使用 ROOT_URL 来识别应用程序托管的 URL。此变量的默认值为应用程序部署到的主主机名。此变量连接到 Meteor.absoluteUrl() API。
- MAIL_URL:如果您在应用程序中使用了 email 包,则需要此变量。为了从应用程序发送电子邮件,需要设置 MAIL_URL 环境变量。示例格式为 "MAIL_URL": "smtp://postmaster%40your.mailserver.address.com:password@mailserver.smtp.address.com:587"
- GALAXY_NODE_OPTIONS:用于可以在命令行控制的任何 Node 设置。
- USER_LOG_DESTINATION:允许您配置 自定义日志存储。
如果您使用的是 MongoDB,则必须使用数据库提供商配置数据库和具有访问该数据库权限的用户帐户。
了解更多
- 了解如何 为 Galaxy 配置您的 MongoDB 提供商。
- 使用 Meteor.settings 进行部署特定的配置。
更新于:2024/05/07
谢谢!