====== ECR ====== $ aws ecr describe-repositories --profile nonprod_admin | jq .[][].repositoryName "ubuntu1804-infradevtools-container" ===== Brain Dump FIXME ===== $ aws ecr create-repository --repository-name web2048 { "repository": { "repositoryUri": "356565822870.dkr.ecr.us-west-2.amazonaws.com/web2048", "imageScanningConfiguration": { "scanOnPush": false }, "encryptionConfiguration": { "encryptionType": "AES256" }, "registryId": "356565822870", "imageTagMutability": "MUTABLE", "repositoryArn": "arn:aws:ecr:us-west-2:356565822870:repository/web2048", "repositoryName": "web2048", "createdAt": 1710245024.942 } } [ssm-user@ip-10-0-0-251 2048]$ aws ecr describe-repositories --query 'repositories[].[repositoryName, repositoryUri]' --output table --------------------------------------------------------------------- | DescribeRepositories | +---------+---------------------------------------------------------+ | web2048| 356565822870.dkr.ecr.us-west-2.amazonaws.com/web2048 | +---------+---------------------------------------------------------+ [ssm-user@ip-10-0-0-251 2048]$ [ssm-user@ip-10-0-0-251 2048]$ [ssm-user@ip-10-0-0-251 2048]$ export REPOSITORY_URI=$(aws ecr describe-repositories --query 'repositories[].[repositoryUri]' --output text) [ssm-user@ip-10-0-0-251 2048]$ echo ${REPOSITORY_URI} 356565822870.dkr.ecr.us-west-2.amazonaws.com/web2048 [ssm-user@ip-10-0-0-251 2048]$ [ssm-user@ip-10-0-0-251 2048]$ [ssm-user@ip-10-0-0-251 2048]$ [ssm-user@ip-10-0-0-251 2048]$ export ACCOUNT_ID=$(aws sts get-caller-identity --output text --query Account) [ssm-user@ip-10-0-0-251 2048]$ [ssm-user@ip-10-0-0-251 2048]$ TOKEN=`curl -X PUT "http://169.254.169.254/latest/api/token" -H "X-aws-ec2-metadata-token-ttl-seconds: 21600"` % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 56 100 56 0 0 36939 0 --:--:-- --:--:-- --:--:-- 56000 [ssm-user@ip-10-0-0-251 2048]$ [ssm-user@ip-10-0-0-251 2048]$ export AWS_REGION=$(curl -H "X-aws-ec2-metadata-token: $TOKEN" -s http://169.254.169.254/latest/dynamic/instance-identity/document | jq -r '.region') [ssm-user@ip-10-0-0-251 2048]$ [ssm-user@ip-10-0-0-251 2048]$ aws ecr get-login-password --region ${AWS_REGION} | docker login --username AWS --password-stdin ${ACCOUNT_ID}.dkr.ecr.${AWS_REGION}.amazonaws.com WARNING! Your password will be stored unencrypted in /home/ssm-user/.docker/config.json. Configure a credential helper to remove this warning. See https://docs.docker.com/engine/reference/commandline/login/#credentials-store Login Succeeded [ssm-user@ip-10-0-0-251 2048]$ [ssm-user@ip-10-0-0-251 2048]$ [ssm-user@ip-10-0-0-251 2048]$ [ssm-user@ip-10-0-0-251 2048]$ docker tag web2048:latest ${REPOSITORY_URI}:latest [ssm-user@ip-10-0-0-251 2048]$ docker images REPOSITORY TAG IMAGE ID CREATED SIZE 356565822870.dkr.ecr.us-west-2.amazonaws.com/web2048 latest aefdda6043ac 16 minutes ago 188MB web2048 latest aefdda6043ac 16 minutes ago 188MB nginx latest e4720093a3c1 3 weeks ago 187MB [ssm-user@ip-10-0-0-251 2048]$ [ssm-user@ip-10-0-0-251 2048]$ [ssm-user@ip-10-0-0-251 2048]$ docker push ${REPOSITORY_URI}:latest The push refers to repository [356565822870.dkr.ecr.us-west-2.amazonaws.com/web2048] 1412f1744cda: Pushed 61a7fb4dabcd: Pushed bcc6856722b7: Pushed 188d128a188c: Pushed 7d52a4114c36: Pushed 3137f8f0c641: Pushed 84619992a45b: Pushed ceb365432eec: Pushed latest: digest: sha256:00f3f5ceb4db7b636e0f83f412e8bdacfa90bb86fba95d7f7f9b6d491b7e6ef5 size: 1988 [ssm-user@ip-10-0-0-251 2048]$ aws ecr describe-images --repository-name web2048 { "imageDetails": [ { "artifactMediaType": "application/vnd.docker.container.image.v1+json", "imageSizeInBytes": 71522170, "imageDigest": "sha256:00f3f5ceb4db7b636e0f83f412e8bdacfa90bb86fba95d7f7f9b6d491b7e6ef5", "imageManifestMediaType": "application/vnd.docker.distribution.manifest.v2+json", "imageTags": [ "latest" ], "registryId": "356565822870", "repositoryName": "web2048", "imagePushedAt": 1710245206.0 } ] } [ssm-user@ip-10-0-0-251 2048]$