- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试使用 Pulumi 在 aws fargate 上部署简单的 Flask python 应用程序。 python应用程序的dockerfile从容器公开端口8000。我如何使用 pulumi 设置负载均衡器?到目前为止,我已经使用index.ts(pulumi)尝试了以下操作:
import * as awsx from "@pulumi/awsx";
// Step 1: Create an ECS Fargate cluster.
const cluster = new awsx.ecs.Cluster("first_cluster");
// Step 2: Define the Networking for our service.
const alb = new awsx.elasticloadbalancingv2.ApplicationLoadBalancer(
"net-lb", { external: true, securityGroups: cluster.securityGroups });
const web = alb.createListener("web", { port: 80, external: true });
// Step 3: Build and publish a Docker image to a private ECR registry.
const img = awsx.ecs.Image.fromPath("app-img", "./app");
// Step 4: Create a Fargate service task that can scale out.
const appService = new awsx.ecs.FargateService("app-svc", {
cluster,
taskDefinitionArgs: {
container: {
image: img,
cpu: 102 /*10% of 1024*/,
memory: 50 /*MB*/,
portMappings: [{ containerPort: 8000, }],
},
},
desiredCount: 5,
});
// Step 5: Export the Internet address for the service.
export const url = web.endpoint.hostname;
当我 curl URL curl http://$(pulumi stack output url)
时,我得到:
<html>
<head><title>503 Service Temporarily Unavailable</title></head>
<body bgcolor="white">
<center><h1>503 Service Temporarily Unavailable</h1></center>
</body>
</html>
如何将负载均衡器端口映射到容器端口 8000?
最佳答案
您可以在应用程序负载均衡器上指定目标端口:
const atg = alb.createTargetGroup(
"app-tg", { port: 8000, deregistrationDelay: 0 });
然后您可以简单地将监听器传递给服务端口映射:
const appService = new awsx.ecs.FargateService("app-svc", {
// ...
taskDefinitionArgs: {
container: {
// ...
portMappings: [web],
},
},
});
这是一个带有公共(public) docker 容器的完整重现,以便任何人都可以从工作示例开始:
import * as awsx from "@pulumi/awsx";
const cluster = new awsx.ecs.Cluster("first_cluster");
const alb = new awsx.elasticloadbalancingv2.ApplicationLoadBalancer(
"app-lb", { external: true, securityGroups: cluster.securityGroups });
const atg = alb.createTargetGroup(
"app-tg", { port: 8080, deregistrationDelay: 0 });
const web = atg.createListener("web", { port: 80 });
const appService = new awsx.ecs.FargateService("app-svc", {
cluster,
taskDefinitionArgs: {
container: {
image: "gcr.io/google-samples/kubernetes-bootcamp:v1",
portMappings: [web],
},
},
desiredCount: 1,
});
export const url = web.endpoint.hostname;
关于pulumi - 如何使用 pulumi 为 aws fargate 设置容器端口和负载均衡器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61132945/
我正在尝试运行 pulumi up命令但它失败了,因为一些被替换的资源已经在 GCP Kubernetes 仪表板中被手动删除。有没有办法忽略这些资源已经被删除的事实并继续更新? 最佳答案 运行 pu
我正在用 Typescript 开发一个名为 CopyPostgresql 的 Pulumi ComponentResource。 CopyPostgreSql 是一个 Kubernetes 作业,它
我正在工作 on a project that uses Pulumi to provision some infrastructure pieces on Azure 。我切换到新的pulumi/a
我正在使用 GitHub Actions 运行 pulumi-pr.yml 我希望能够根据堆栈部署到不同的订阅。 我创建了一个 az ad 服务原则,并使用以下命令将信息放入 Pulumi 配置中:
当我使用 Pulumi 创建 S3 存储桶时,会在指定的存储桶名称中添加一个随机后缀。我怎样才能避免这种情况? import * as aws from "@pulumi/aws"; // Creat
我在 TS 中定义了一个堆栈,无法理解发生了什么。 有没有办法将 Visual Studio Code 调试器附加到 pulumi? 最佳答案 自 2018 年 5 月以来,这似乎是一个悬而未决的问题
我正在编写一个使用 Pulumi Automation API 的 Flask 应用程序。我正在关注 Automation API project examples .但是当我发送一个 POST 请求
我正在尝试使用 Pulumi 在 aws fargate 上部署简单的 Flask python 应用程序。 python应用程序的dockerfile从容器公开端口8000。我如何使用 pulumi
问题 VS Code 似乎无法识别以下任一 Python 库 + 没有智能感知。 import pulumi from pulumi_azure_native import resources fro
问题 VS Code 似乎无法识别以下任一 Python 库 + 没有智能感知。 import pulumi from pulumi_azure_native import resources fro
有什么方法可以导出以前版本的堆栈吗? 有 pulumi stack export 命令,我可以将堆栈的当前状态导出到文件,但似乎 CLI 不接受版本或任何标志来指定以前的堆栈。 我应该将所有资源重新导
我正在尝试创建一些资源并需要强制执行某种创建顺序。例如创建 aws.s3.Bucket用于存储日志,然后才能将其用作 aws.cloudfront.Distribution 的输入. 使用Pulumi
我正在尝试使用 C# (Pulumi Azure Native) 创建 Azure SQL 托管实例。执行pulumi up -s dev时,出现操作超时错误,如下: (配置托管实例是一项长时间运行的
我一直在试图找到这个问题的答案,这个问题与 Pulumi 中的 Terraform 模块等效,最接近的答案是这个 blog 的链接。 .请记住,我也是使用 Pulumi 的初学者。 使用 Terraf
我是 Pulumi 的新手,所以我目前正在努力尝试在我的 Azure 发布管道中运行它以创建我的基础架构。在开发过程中,我使用本地存储来存储我的 pulumi 状态 (pulumi login --l
我是 pulumi 的新手,并试图进行 pulumi 审查,但出现以下错误, 到目前为止我尝试过的, 我尝试在我的 Ubuntu 主机中安装以下工具: python3 python3 -m venv
出现错误“resourceGroupName”未为 Azure ARM 模板部署定义 File "./__main__.py", line 23, in resourceGroupN
我已经安装了最新的 Pulumi azuread 模块,但在尝试 pulumi 预览时出现此错误: Previewing update (int): Type
为什么 Pulumi 不使用我指定的名称创建资源组? 这是我的小脚本 const azure = require("@pulumi/azure") const resourceGroupName =
我制作了一个简单的 flask 应用程序来练习 Pulumi。 它通过 Dockerfile 设置环境变量,我打算将它托管在 AWS Fargate 上,并将 RDS Postgres 作为数据库。
我是一名优秀的程序员,十分优秀!