Search

ECR

resource "aws_ecr_repository" "customer" { name = "wsi-customer-ecr" image_tag_mutability = "MUTABLE" tags = { Name = "wsi-customer-ecr" } } resource "aws_ecr_repository" "product" { name = "wsi-product-ecr" image_tag_mutability = "MUTABLE" tags = { Name = "wsi-order-ecr" } } resource "aws_ecr_repository" "order" { name = "wsi-order-ecr" image_tag_mutability = "MUTABLE" tags = { Name = "wsi-order-ecr" } } output "customer-ecr" { value = aws_ecr_repository.customer.name } output "product-ecr" { value = aws_ecr_repository.product.name } output "order" { value = aws_ecr_repository.order.name }
JSON
복사
CONTROL_PLANE_PRIVATE_IP=$(aws ec2 describe-instances --filter Name=tag:Name,Values=wsi-control-plane --query "Reservations[].Instances[].PrivateIpAddress" --output text)
Shell
복사
scp -P 3817 ./customer ec2-user@$CONTROL_PLANE_PRIVATE_IP:/home/ec2-user/image/customer scp -P 3817 ./product ec2-user@$CONTROL_PLANE_PRIVATE_IP:/home/ec2-user/image/product scp -P 3817 ./order ec2-user@$CONTROL_PLANE_PRIVATE_IP:/home/ec2-user/image/order
Shell
복사
FROM alpine # ENV MYSQL_USER=<USERNAME> # ENV MYSQL_PASSWORD=<PASSWORD> # ENV MYSQL_HOST=<RDS_EP> # ENV MYSQL_PORT=<PORT> # ENV MYSQL_DBNAME=dev WORKDIR /app COPY ./customer /app/customer RUN apk update && \ apk add --no-cache libc6-compat libstdc++ libgcc curl openssl && \ apk upgrade --no-cache busybox && \ chmod +x /app/customer && \ adduser -D -H -s /bin/sh customer USER customer EXPOSE 8080 CMD ["/app/customer"]
Docker
복사
FROM alpine # ENV MYSQL_USER=<USERNAME> # ENV MYSQL_PASSWORD=<PASSWORD> # ENV MYSQL_HOST=<RDS_EP> # ENV MYSQL_PORT=<PORT> # ENV MYSQL_DBNAME=dev WORKDIR /app COPY ./product /app/product RUN apk update && \ apk add --no-cache libc6-compat libstdc++ libgcc curl openssl && \ apk upgrade --no-cache busybox && \ chmod +x /app/product && \ adduser -D -H -s /bin/sh product USER product EXPOSE 8080 CMD ["/app/product"]
Docker
복사
FROM alpine WORKDIR /app COPY ./order /app/order RUN apk update && \ apk add --no-cache libc6-compat libstdc++ libgcc curl openssl && \ apk upgrade --no-cache busybox && \ chmod +x /app/order && \ adduser -D -H -s /bin/sh order USER order EXPOSE 8080 CMD ["/app/order"]
Docker
복사
#!/bin/bash ACCOUNT_ID=$(aws sts get-caller-identity --query "Account" --output text) REGION_CODE=$(aws configure get region) IMAGE_NAME=("customer" "product" "order") for name in "${IMAGE_NAME[@]}" do aws ecr get-login-password --region $REGION_CODE | docker login --username AWS --password-stdin $ACCOUNT_ID.dkr.ecr.$REGION_CODE.amazonaws.com docker build -t $ACCOUNT_ID.dkr.ecr.$REGION_CODE.amazonaws.com/wsi-$name-ecr:latest ./$name/ docker push $ACCOUNT_ID.dkr.ecr.$REGION_CODE.amazonaws.com/wsi-$name-ecr:latest done
Shell
복사