Experimental
@aws-cdk/aws-apprunner-alpha is an experimental (alpha) package: its API may change in any release, without a major version bump.
Source Class
Represents the App Runner service source.
Example
ts
import * as iam from 'aws-cdk-lib/aws-iam';
const service = new apprunner.Service(this, 'Service', {
source: apprunner.Source.fromEcrPublic({
imageConfiguration: { port: 8000 },
imageIdentifier: 'public.ecr.aws/aws-containers/hello-app-runner:latest',
}),
});
service.addToRolePolicy(new iam.PolicyStatement({
effect: iam.Effect.ALLOW,
actions: ['s3:GetObject'],
resources: ['*'],
}))
python
import aws_cdk.aws_iam as iam
service = apprunner.Service(self, "Service",
source=apprunner.Source.from_ecr_public(
image_configuration=apprunner.ImageConfiguration(port=8000),
image_identifier="public.ecr.aws/aws-containers/hello-app-runner:latest"
)
)
service.add_to_role_policy(iam.PolicyStatement(
effect=iam.Effect.ALLOW,
actions=["s3:GetObject"],
resources=["*"]
))
java
import software.amazon.awscdk.services.iam.*;
Service service = Service.Builder.create(this, "Service")
.source(Source.fromEcrPublic(EcrPublicProps.builder()
.imageConfiguration(ImageConfiguration.builder().port(8000).build())
.imageIdentifier("public.ecr.aws/aws-containers/hello-app-runner:latest")
.build()))
.build();
service.addToRolePolicy(PolicyStatement.Builder.create()
.effect(Effect.ALLOW)
.actions(List.of("s3:GetObject"))
.resources(List.of("*"))
.build());
csharp
// Install: dotnet add package Amazon.CDK.AWS.AppRunner.Alpha
using Amazon.CDK.AWS.IAM;
var service = new Service(this, "Service", new ServiceProps {
Source = Source.FromEcrPublic(new EcrPublicProps {
ImageConfiguration = new ImageConfiguration { Port = 8000 },
ImageIdentifier = "public.ecr.aws/aws-containers/hello-app-runner:latest"
})
});
service.AddToRolePolicy(new PolicyStatement(new PolicyStatementProps {
Effect = Effect.ALLOW,
Actions = new [] { "s3:GetObject" },
Resources = new [] { "*" }
}));
go
// Install: go get github.com/aws/aws-cdk-go/awscdkapprunneralpha/v2
import "github.com/aws/aws-cdk-go/awscdk"
service := apprunner.NewService(this, jsii.String("Service"), &ServiceProps{
Source: apprunner.Source_FromEcrPublic(&EcrPublicProps{
ImageConfiguration: &ImageConfiguration{
Port: jsii.Number(8000),
},
ImageIdentifier: jsii.String("public.ecr.aws/aws-containers/hello-app-runner:latest"),
}),
})
service.AddToRolePolicy(iam.NewPolicyStatement(&PolicyStatementProps{
Effect: iam.Effect_ALLOW,
Actions: []*string{
jsii.String("s3:GetObject"),
},
Resources: []*string{
jsii.String("*"),
},
}))
Initializer
ts
new Source()
python
Source()
java
new Source()
csharp
new Source()
go
NewSource()
Methods
bind(scope: Construct): SourceConfigdef bind(self, scope: Construct) -> SourceConfigpublic SourceConfig bind(Construct scope)public SourceConfig Bind(Construct scope)func Bind(Scope Construct) SourceConfig#Called when the Job is initialized to allow this object to bind.
fromAsset(props: AssetProps): AssetSource@staticmethod def from_asset(props: AssetProps) -> AssetSourcepublic static AssetSource fromAsset(AssetProps props)public static AssetSource FromAsset(AssetProps props)func FromAsset(Props AssetProps) AssetSourcestatic#Source from local assets.
fromEcr(props: EcrProps): EcrSource@staticmethod def from_ecr(props: EcrProps) -> EcrSourcepublic static EcrSource fromEcr(EcrProps props)public static EcrSource FromEcr(EcrProps props)func FromEcr(Props EcrProps) EcrSourcestatic#Source from the ECR repository.
fromEcrPublic(props: EcrPublicProps): EcrPublicSource@staticmethod def from_ecr_public(props: EcrPublicProps) -> EcrPublicSourcepublic static EcrPublicSource fromEcrPublic(EcrPublicProps props)public static EcrPublicSource FromEcrPublic(EcrPublicProps props)func FromEcrPublic(Props EcrPublicProps) EcrPublicSourcestatic#Source from the ECR Public repository.
fromGitHub(props: GithubRepositoryProps): GithubSource@staticmethod def from_git_hub(props: GithubRepositoryProps) -> GithubSourcepublic static GithubSource fromGitHub(GithubRepositoryProps props)public static GithubSource FromGitHub(GithubRepositoryProps props)func FromGitHub(Props GithubRepositoryProps) GithubSourcestatic#Source from the GitHub repository.