본 파트에서는 데브옵스(DevOps)에서 주로 사용하는 도구인 Terraform 자동화 도구에 대해 알아보겠다. 우선 IaC (Infrastructure as a Code), 형상관리 (Configuration Management), 그리고 이미지 빌드 (Image Build) 에 대한 내용을 알아본 뒤, 다음 글에서 실제로 Terraform 을 설치 후 환경 설정을 해 보겠다. Terraform 은 IaC 의 대표적인 도구이다. 여기서 IaC 는 Infrastructure as a Code 의 약자이다. 말그대로 인프라 자원을 코드로 관리하는 것을 의미한다. 이러한 IaC 도구로는 Hashicorp 의 Terraform, AWS 의 CloudFormation, Pulumi, 그리고 Azure 의 ARM..
지난 글에 이어서 이번 글에서는 AWS 의 ECR (Elastic Container Registry) 서비스를 통해 이미지를 관리하는 방법에 대해 알아본다. 기본적으로 AWS 에 대한 계정 설정은 모두 완료되었다는 가정 하에 진행한다. 우선 Amazon Elastic Container Registy 에 접속한다. 로그인이 되었다면 아래 링크를 통해 접속이 가능할 것이다. 리전은 무관하나 가급적 서울 리전 (ap-northeast-2) 을 사용하는 것이 속도 면에서 효율적이다. https://ap-northeast-2.console.aws.amazon.com/ecr/get-started?region=ap-northeast-2 https://ap-northeast-2.console.aws.amazon.com..
도커 이미지를 사용함에 있어서 조직 내에서 컨테이너 서비스를 이용할 때 이미지의 관리와 공유가 중요하게 되었다. 이미지의 관리와 공유를 도와주는 서비스가 이미지 저장소이다. 이미지 저장소 중 도커 허브 (Docker Hub) 를 이용하여 이미지를 관리하는 방법을 알아본다. 다음 링크에 접속하면 도커 허브의 홈 페이지가 보인다. https://hub.docker.com Docker Hub Container Image Library | App Containerization Build and Ship any Application Anywhere Docker Hub is the world's easiest way to create, manage, and deliver your teams' container ap..
도커 이미지 파일을 압축 파일로 저장하고 불러오는 것은 인터넷이 안 되는 환경에서 자주 활용할 수 있다. 혹은 이미지 파일을 온라인 상에 올리지 않고 특정 서버에 전달하는 목적으로 사용할 수도 있다. 이미지 압축 파일로 저장하기 도커 이미지는 압축할 때 tar 확장자를 지원한다. 다음 명령어를 통해 압축할 수 있다. docker save -o [OUTPUT-FILE] IMAGE 현재 로컬에 있는 이미지 중 하나를 이용해 압축을 해 보자. 이미지 중 우리가 이전 글에서 만들었던 my-app 이미지를 다음 명령어를 통해 압축해 보자. my-app:v1 이미지를 my-app-v1.tar 이름의 파일로 압축한다. docker save -o my-app-v1.tar my-app:v1 압축 명령 실행에는 약간의 시..
지난 글에서 Dockerfile 을 활용하여 이미지를 빌드해 보았다. 리액트 프로젝트를 클론 받아 Dockerfile 을 추가하여 빌드하였는데, 이번 글에서는 Dockerfile 에 대해 더 자세히 알아보도록 한다. 우선 Dockerfile 에 대한 사항은 공식 페이지에서도 확인할 수 있다. https://docs.docker.com/engine/reference/builder/ Dockerfile reference docs.docker.com Format - 주석 Dockerfile 내에서 주석은 파이썬과 동일하게 샵 (#) 을 이용하여 주석을 추가할 수 있다. # Comment Format - 지시어 Dockerfile 의 모든 구문은 지시어와 그 지시어의 인자값으로 이루어져 있다. INSTRUCTI..
이번 글에서는 도커 컨테이너를 실제 배포하기 위해 도커 이미지로 빌드하는 것에 대해 알아보려고 한다. 도커 이미지 구조를 알아보고, Dockerfile에 대해 알아본다. 도커 이미지 구조 다음 이미지는 도커 이미지의 구조를 도식화한 그림이다. 왼쪽은 도커 이미지이고, 오른쪽은 도커 컨테이너이다. Docker Image에는 ubuntu, nginx, web app 의 세 가지 이미지로 구성되어 있다. nginx는 ubuntu 를 기반으로 만들어졌다고 가정하고, web app 이미지는 nginx 이미지를 기반으로 만들어졌다고 가정하겠다. Ubuntu 이미지의 경우 Layer A, B, C 의 세 레이어로 구성되어 있는 것을 볼 수 있는데, 실제로 도커 이미지의 구조는 레이어 아키텍처로, 새로운 변경 사항이 ..
컨테이너를 관리함에 있어 로그를 어떻게 관리할 것인가는 운영 측면에서 중요한 사항이다. 이번 글에서는 컨테이너의 로그를 확인하고, 호스트 운영체제에서 로그는 어디에 저장되는지, 로그 용량 관리 등에 대해 알아보고자 한다. 표준 출력 (STDOUT), 표준 에러 (STDERR) 애플리케이션에서 로그를 다룰 때, 일반적으로 해당 언어에서 지원하는 로그 프레임워크를 사용하여 표준 출력이나 ElasticSearch 와 같은 서비스와 연동하는 등 다양한 방법이 있는데, 도커 컨테이너에서는 STDOUT과 STDERR 로 내보내는 것을 표준으로 삼아야 한다. 도커가 해당 출력 로그를 쌓아 로깅 드라이버가 처리할 수 있도록 하는데, 로깅 드라이버를 다양하게 제공한다. 본인의 사용 목적에 맞는 드라이버를 선택하여 사용하..
도커의 네트워크 구조를 알아보고, 실행시키는 컨테이너의 포트를 노출시키는 방법을 알아보고, Expose 와 Publish 에 대해 알아본다. 도커 네트워크 구조 도커를 호스트 운영체제에 설치하면 기본적으로 여러 네트워크 드라이버가 설치된다. 기본적으로 도커 컨테이너를 실행할 때 사용할 네트워크를 지정할 수 있다. eth0 : 호스트에서 사용하고 있는 기본 네트워크인데, EC2를 사용하고 있다면 EC2 의 private IP 가 설정되어 있는 네트워크 장치이다. 컨테이너를 실행한 후 네트워크 장치 목록을 확인해 보면 eth0과 l0 의 두 가지 네트워크가 설치되어 있는 것을 확인할 수 있다. docker0 : 네트워크를 따로 지정하지 않으면 기본적으로 생성되는 docker0 이라고 하는 브릿지 네트워크를 ..
- Total
- Today
- Yesterday
- docker
- uiux
- 자바
- HCL
- Java
- 메터리얼
- 테라폼
- DESIGN
- dockerhub
- 도커
- 스타트업
- Terraform
- EC2
- AWS
- ecr
- main
- 디자인
- Android
- env
- cmd
- 안드로이드
- 머티리얼
- Operator
- 자료형
- dockerfile
- 컨테이너
- 자격증명
- entrypoint
- Material
- Container
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |