일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- Site-to-Site VPN
- 옵셔널 체이닝
- DynamoDB
- JavaScript
- prometheus
- 비구조화 할당
- AWS
- 온프레미스
- cognito
- Endpoints
- transit gateway
- Proxy Resource
- elasticsearch
- docker swarm
- Await
- 단축 평가
- docker
- null 병합 연산자
- 자바스크립트
- 구조분해 할당
- Kubernetes
- grafana
- vgw
- VPC
- optional chaining
- CloudFormation
- api gateway
- Service
- Custom Resource
- On-Premise
- Today
- Total
목록Docker (25)
만자의 개발일지
이번 포스팅에서는 Public ECR에 이미지를 Push하는법에 대해 알아보도록 하겠습니다. 기존의 ECR은 Private Repository만 사용할 수 있었는데, 도커 허브 이미지 제한 때문에 AWS에서 Public하게 이미지 레지스트리를 쓸 수 있도록 추가하였습니다. AWS에서 자체 제공하는 ECR Public Repository 종류는 아래 사이트에서 확인할 수 있습니다. https://gallery.ecr.aws/ ECR Public Gallery Amazon ECR Public Gallery is a website that allows anyone to browse and search for public container images, view developer-provided details,..
댕글링(dangling) 이미지 현재 test라는 이름의 이미지가 존재하고 해당 이미지를 사용하는 컨테이너가 존재합니다. 이미지를 사용중인 컨테이너가 존재할 때 docker rmi 명령어로 이미지를 지우려 하면 다음과 같은 에러가 뜹니다. $ docker rmi test Error response from daemon: conflict: unable to remove repository reference "test" (must force) - container 8bd39093b5cf is using its referenced image 83f310aba04a 이미지를 사용 중인 컨테이너가 존재하므로 해당 이미지를 삭제할 수 없다는 내용입니다. 보통의 경우 컨테이너를 먼저 삭제한 후 이미지를 삭제합니다. ..
도커 컨테이너는 이미지를 기반으로 실행됩니다. 그리고 보통의 도커 이미지는 Dockerfile을 빌드함으로써 만들 수 있죠. 하지만 도커 이미지를 만드는 방법이 한 가지 더 존재합니다. 바로 컨테이너를 이용해 만드는 방법이죠. 어떻게 컨테이너로 이미지를 만드는지 알아보도록 하겠습니다. 컨테이너로 이미지 생성 여기 test라는 도커 이미지가 있습니다. $ docker images REPOSITORY TAG IMAGE ID CREATED SIZE test latest 83f310aba04a 3 hours ago 910MB 해당 이미지를 가지고 컨테이너를 실행시켜 주도록 하겠습니다. $ docker run --name test-container test 다음 명령어를 통해 컨테이너가 실행되고 있는지 확인할 수..
다음과 같은 상황이라고 가정해봅시다. 현재 서버에 두개의 컨테이너가 실행되고 있습니다. 하나는 Node.js로 만들어진 웹 어플리케이션 컨테이너, 하나는 MySQL이 돌아가고있는 컨테이너입니다. 각각 다른 컨테이너에서 돌아가고 있고, Host는 동일한 상황입니다. 만약 Node.js 에서 내 서버에 MySQL 컨테이너로 요청을 보낼려고 할때 localhost를 통해 요청을 보낼려하면 당연히 요청이 보내지지 않을 것입니다. 이유는 Node.js 기준 localhost는 Host가 아닌 Node.js 가 실행되고 있는 컨테이너가 기준이 되기 때문입니다. 때문에 MySQL로 요청을 보내기 위해서는 다른 방법으로 Host에 접근해야합니다. 스택오버플로우 글에서 해답을 얻을 수 있었습니다. https://stac..
Docker Compose MSA 서비스가 등장하면서 하나의 서버에 모든 기능이 들어가있는 것이 아닌 하나의 어플리케이션을 각 서비스로 분리시켜 놓는 구조를 사용하기 시작했습니다. 때문에 MSA를 설계하기 위해서는 각 서비스들을 서버 혹은 컨테이너 단위로 분리시켜야 하고 각각의 서버 혹은 컨테이너가 서로 의존성 있게 구성되어야 합니다. MSA의 특징과 컨테이너의 확장성이 주목받기 시작하였고, MSA 서비스를 만들 때 Docker나 Kubernetes 같은 컨테이너 서비스들을 사용하기 시작했습니다. 그리고 이 Docker 컨테이너를 보다 쉽게 다루기 위해 등장한 것이 바로 Docker Compose 입니다. Docker Compose는 여러 개의 컨테이너로 구성된 어플리케이션을 관리하기 위한 도구입니다. ..
도커 엔진에서 사용하는 기본 단위는 컨테이너와 이미지 입니다. 이 두 가지가 도커의 핵심이라고 할 수 있습니다. 앞서 Dockerfile을 사용하여 이미지를 만들어 보았습니다. 도커로 빌드한 이미지를 서버에 배포하기 위해 직접 파일을 복사하는 방법 대신 이미지 저장소에 이미지를 push한 후 서버에서 이미지를 pull받아 실행하는 방법을 사용합니다. 이번 포스팅에서는 AWS에서 제공하는 이미지 저장소인 ECR(Elastic Container Registry) 서비스를 이용하여 도커 이미지를 ECR에 push 한 후 서버에서 ECR에 있는 이미지를 불러오는 것 까지 해보도록 하겠습니다. ECR 생성 먼저 이미지를 푸쉬할 ECR을 생성해봅시다. AWS 콘솔에 들어가서 ECR을 검색한 후 들어갑니다. 그러면 ..