-
Open a new Amazon Linux 2 EC2(amd64) on AWS. Make it spot instance if you prefer.
ssh ec2-user@<EC2_IP> into the EC2 instance:
# install and start docker
$ sudo yum install -y docker
$ sudo service docker start| # watch the demo at https://youtu.be/cGUNf1FMNvI | |
| # | |
| # customize these variables | |
| # | |
| DEFAULT_PROFILE='default' | |
| DEFAULT_REGION='us-east-1' | |
| DEFAULT_OUTPUT='json' | |
| SSO_START_URL='https://your-sso.awsapps.com/start' | |
| SSO_REGION='us-east-1' | |
| SSO_ACCOUNT_ID='123456789012' |
| #!/bin/bash | |
| # video demo - https://www.youtube.com/watch?v=Y8TyE_DNds8 | |
| mkdir ~/.tmp && cd $_ | |
| # install aws-cli v2 | |
| curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip" && \ | |
| unzip awscliv2.zip && \ | |
| sudo ./aws/install |
Open a new Amazon Linux 2 EC2(amd64) on AWS. Make it spot instance if you prefer.
ssh ec2-user@<EC2_IP> into the EC2 instance:
# install and start docker
$ sudo yum install -y docker
$ sudo service docker start| Resources: | |
| FlaskService3B7F72B9: | |
| Type: AWS::AppRunner::Service | |
| Properties: | |
| SourceConfiguration: | |
| CodeRepository: | |
| CodeConfiguration: | |
| ConfigurationSource: REPOSITORY | |
| RepositoryUrl: https://github.com/aws-containers/hello-app-runner | |
| SourceCodeVersion: |
| import { App, CfnOutput, Construct, Stack, StackProps } from '@aws-cdk/core'; | |
| import * as ec2 from '@aws-cdk/aws-ec2'; | |
| export class MyStack extends Stack { | |
| constructor(scope: Construct, id: string, props: StackProps = {}) { | |
| super(scope, id, props); | |
| const vpc = ec2.Vpc.fromLookup(this, 'Vpc', { isDefault: true }); | |
| const subnetId = vpc.privateSubnets[0].subnetId; |
| import { App, Construct, Stack, StackProps, CfnParameter, CfnCondition, Fn } from '@aws-cdk/core'; | |
| import * as sns from '@aws-cdk/aws-sns'; | |
| export interface DemoProps { } | |
| export class Demo extends Construct { | |
| constructor(scope: Construct, id: string) { | |
| super(scope, id) | |
| const stack = Stack.of(this); |
| // For format details, see https://aka.ms/vscode-remote/devcontainer.json or this file's README at: | |
| // https://github.com/microsoft/vscode-dev-containers/tree/v0.128.0/containers/docker-from-docker | |
| { | |
| // "name": "Docker from Docker", | |
| // "dockerFile": "Dockerfile", | |
| "name": "jsii", | |
| "image": "jsii/superchain", | |
| "mounts": [ | |
| "source=/var/run/docker.sock,target=/var/run/docker.sock,type=bind" | |
| ], |
| import cdk = require('@aws-cdk/core'); | |
| import eks = require('@aws-cdk/aws-eks'); | |
| import ec2 = require('@aws-cdk/aws-ec2'); | |
| import iam = require('@aws-cdk/aws-iam'); | |
| import { Stack } from '@aws-cdk/core'; | |
| const DEFAULT_CLUSTER_VERSION = '1.16' | |
| export class EksStack extends cdk.Stack { | |
| constructor(scope: cdk.Construct, id: string, props?: cdk.StackProps) { |
| # 1. update your aws cli | |
| # https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-install.html | |
| # | |
| # 2. update your existing cluster with capacity providers support | |
| CLUSTER_NAME=fargate | |
| SERVICE_NAME=myservice | |
| FARGATE_WEIGHT=1 | |
| FARGATE_SPOT_WEIGHT=1 | |
| FARGATE_BASE=1 | |
| FARGATE_SPOT_BASE=0 |
| import cdk = require('@aws-cdk/core'); | |
| import { Vpc } from '@aws-cdk/aws-ec2'; | |
| import { Cluster, ContainerImage, TaskDefinition, Compatibility } from '@aws-cdk/aws-ecs'; | |
| import { ApplicationLoadBalancedFargateService } from '@aws-cdk/aws-ecs-patterns'; | |
| import path = require('path') | |
| export class FargateAlbSvcStack extends cdk.Stack { | |
| constructor(scope: cdk.Construct, id: string, props?: cdk.StackProps) { | |
| super(scope, id, props); |