ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • AWS에 ECS용 Redis docker image 생성
    카테고리 없음 2022. 4. 18. 20:52

    Amazon Linux 2 인스턴스에서 작업한다.

     

    1. Docker 설치

    sudo yum update -y
    sudo amazon-linux-extras install docker # Docker Engine 패키지 설치
    sudo service docker start # Docker 서비스 시작
    sudo usermod -a -G docker ec2-user # sudo 명령어 없이 docker 명령어 실행 가능하도록 추가
    sudo service docker restart # Docker 서비스 재실행

    로그아웃하고 다시 접속하면 권한이 적용되어 있다.

     

    2. Dockerfile 작성

    mkdir redis-docker && cd redis-docker
    vi Dockerfile
    
    FROM ubuntu:18.04
    
    # Install dependencies
    RUN apt-get update && \
     apt-get -y install redis-server
    
    EXPOSE 6379
    
    CMD redis-server

    3. 빌드 및 실행

    docker build -t my-redis .
    docker run -t -i -p 6789:6789 my-redis

    정상 작동 되는 것을 확인 했으면 Ctrl + c 로 컨테이너를 중지한다.

     

    4. 이미지를 저장할 Amazon ECR 리포지토리를 생성

    aws ecr create-repository --repository-name redis-repository --region ap-northeast-2
    
    {
        "repository": {
            "repositoryUri": "xxxxxxxxxxxx.dkr.ecr.ap-northeast-2.amazonaws.com/redis-repository",
            "imageScanningConfiguration": {
                "scanOnPush": false
            },
            "encryptionConfiguration": {
                "encryptionType": "AES256"
            },
            "registryId": "xxxxxxxxxxxx",
            "imageTagMutability": "MUTABLE",
            "repositoryArn": "arn:aws:ecr:ap-northeast-2:xxxxxxxxxxxx:repository/redis-repository",
            "repositoryName": "redis-repository",
            "createdAt": 1650281307.0
        }
    }

    5. 이미지를 repositoryUri 값으로 태그 지정

    docker tag my-redis aws_account_id.dkr.ecr.region.amazonaws.com/redis-repository

    6. aws ecr 로그인

    aws ecr get-login-password | docker login --username AWS --password-stdin aws_account_id.dkr.ecr.region.amazonaws.com
    
    Login Succeeded

    7. aws ecr로 이미지 푸시

    docker push aws_account_id.dkr.ecr.region.amazonaws.com/redis-repository

     

Designed by Tistory.