首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何定义.cro.yml中每个服务的端口?

如何定义.cro.yml中每个服务的端口?
EN

Stack Overflow用户
提问于 2020-03-23 08:33:04
回答 1查看 92关注 0票数 7

在使用cro存根http测试测试创建存根服务之后,我在TEST_PORT .cro.yml中定义了环境变量。

代码语言:javascript
复制
---
id: test
cro: 1
name: "test"
endpoints: 
  - 
    id: http
    name: HTTP
    protocol: http
    host-env: TEST_HOST
    port-env: TEST_PORT
links:  []
entrypoint: service.p6
env:
  - name: TEST_PORT
    value: "3001"
...

尽管如此,Cro仍然使用默认的20000端口。亚历克斯·施罗德导出环境变量以在另一个端口启动Cro。命令"export TEST_PORT=“3001 && cro run”仍然使用默认端口。

在Cro中定义服务端口的正确形式是什么?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-03-23 11:08:16

cro run工具会自动为它启动的所有服务分配端口。这是为了确保他们得到一个自由的端口,不被使用的其他东西。因此,它将用它选择的端口注入环境变量。在使用cro run时,您不能选择端口。

要在所选的端口上运行服务,不使用cro run,也就是说,只需导出环境变量并调用类似于raku -Ilib service.p6的服务(如果您有较早的安装,则使用perl6 -Ilib service.p6 )。这样,服务将看到包含您选择的端口的环境变量。默认的Dockerfile也被设置为这样做。

请注意,cro开发工具仅作为开发时间辅助工具,不适合于生产部署(这是选择端口的主要情况)。

票数 10
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60810116

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档