InternetGateway ​
The InternetGateway resource allows you to manage AWS EC2 InternetGateways which are used to enable communication between instances in your Virtual Private Cloud (VPC) and the internet.
Minimal Example ​
Create a basic InternetGateway with a tag for identification.
ts
import AWS from "alchemy/aws/control";
const internetGateway = await AWS.EC2.InternetGateway("myInternetGateway", {
Tags: [
{
Key: "Name",
Value: "MyInternetGateway"
}
]
});
Advanced Configuration ​
Configure an InternetGateway to adopt an existing resource if it already exists.
ts
const existingInternetGateway = await AWS.EC2.InternetGateway("existingGateway", {
adopt: true,
Tags: [
{
Key: "Environment",
Value: "Production"
}
]
});
Attach to a VPC ​
Demonstrate how to attach the InternetGateway to a VPC for internet access.
ts
import AWS from "alchemy/aws/control";
const myVpc = await AWS.EC2.Vpc("myVpc", {
CidrBlock: "10.0.0.0/16",
Tags: [
{
Key: "Name",
Value: "MyVPC"
}
]
});
const internetGateway = await AWS.EC2.InternetGateway("vpcInternetGateway", {
Tags: [
{
Key: "Name",
Value: "VPCInternetGateway"
}
]
});
// Attach the InternetGateway to the VPC
await AWS.EC2.AttachInternetGateway("attachGateway", {
InternetGatewayId: internetGateway.id,
VpcId: myVpc.id
});
Detach from a VPC ​
Detach the InternetGateway from a VPC when no longer needed.
ts
await AWS.EC2.DetachInternetGateway("detachGateway", {
InternetGatewayId: internetGateway.id,
VpcId: myVpc.id
});