人工智能

AWS App Runner

App Runner 是一项应用程序服务,它能快速、简单且经济高效地将现有容器镜像或源代码直接部署到亚马逊云服务中,在几秒内启动运行服务。无需学习新技术,用户可专注于应用开发。

查看官方文档 ↗

接入教程

1. 登录 AWS 控制台并进入 App Runner 服务。
2. 选择从容器镜像或源代码仓库创建新服务。
3. 配置服务名称、运行环境和资源设置。
4. 设置自动部署和监控选项。
5. 点击部署,等待几秒即可启动服务。
6. 通过提供的 URL 访问运行中的应用。

使用Python创建App Runner服务

python
import boto3

client = boto3.client('apprunner', region_name='us-east-1')

response = client.create_service(
    ServiceName='my-app-runner-service',
    SourceConfiguration={
        'ImageRepository': {
            'ImageIdentifier': 'public.ecr.aws/nginx/nginx:latest',
            'ImageConfiguration': {},
            'ImageRepositoryType': 'ECR_PUBLIC'
        }
    },
    InstanceConfiguration={
        'Cpu': '1 vCPU',
        'Memory': '2 GB',
        'InstanceRoleArn': 'arn:aws:iam::123456789012:role/AppRunnerInstanceRole'
    }
)

print(f"Service created: {response['Service']['ServiceArn']}")

使用PHP列出App Runner服务

php
<?php
require 'vendor/autoload.php';

use Aws\AppRunner\AppRunnerClient;
use Aws\Exception\AwsException;

$client = new AppRunnerClient([
    'region' => 'us-east-1',
    'version' => 'latest'
]);

try {
    $result = $client->listServices([
        'MaxResults' => 10
    ]);
    
    foreach ($result['ServiceSummaryList'] as $service) {
        echo "Service: " . $service['ServiceName'] . "\n";
        echo "Status: " . $service['Status'] . "\n\n";
    }
} catch (AwsException $e) {
    echo "Error: " . $e->getMessage() . "\n";
}
?>

使用JavaScript暂停App Runner服务

javascript
const { AppRunnerClient, PauseServiceCommand } = require('@aws-sdk/client-apprunner');

const client = new AppRunnerClient({
    region: 'us-east-1'
});

const params = {
    ServiceArn: 'arn:aws:apprunner:us-east-1:123456789012:service/my-service'
};

const command = new PauseServiceCommand(params);

async function run() {
    try {
        const data = await client.send(command);
        console.log(`Service paused: ${data.Service.ServiceName}`);
        console.log(`Status: ${data.Service.Status}`);
    } catch (err) {
        console.error('Error:', err);
    }
}

run();

常见问题

App Runner支持哪些源代码仓库?

App Runner支持直接从GitHub、GitLab、Bitbucket等源代码仓库部署,也支持从Amazon ECR公共或私有仓库部署容器镜像。

App Runner服务如何计费?

App Runner按实际使用的vCPU和内存资源计费,采用按秒计费模式。服务空闲时可能产生最低费用,具体费率请参考AWS官方定价页面。

App Runner支持自动扩缩容吗?

是的,App Runner提供自动扩缩容功能,可以根据流量负载自动调整实例数量,确保应用性能的同时优化成本。

相似接口推荐

AWS Global Accelerator

AWS Global Accelerator是一项网络服务,通过优化全球路由和提供静态IP地址,提升应用程序的可用性和性能。它能够将用户流量智能地导向最近的AWS区域端点,减少延迟并提高响应速度。

待确认
亚马逊欺诈检测器

亚马逊欺诈检测器API为开发者提供检测欺诈行为的接口,包含详细的操作指南、数据类型和错误信息。该服务帮助用户通过机器学习模型识别可疑交易和活动。

待确认
防火墙管理服务

该API为开发者提供防火墙管理功能的详细接口文档,包含操作、数据类型和错误代码的完整参考。如需了解防火墙管理服务的具体功能特性,请参阅AWS官方技术文档。

待确认
Amazon Elasticsearch Service

Amazon Elasticsearch配置服务提供创建、配置和管理Elasticsearch域的API。用户可以通过该API设置和管理搜索集群,适用于构建搜索和分析应用。

待确认