서버 인프라/Docker 4

Docker 운영 시 용량 부족할 때

현재 ec2 인스턴스에서 jenkins를 이용하여 docker image를 빌드하는 작업을 계속 진행하고 있다. 이 때 갑자기 경고창이 떴다. 용량이 부족하다고 징징댄다. EBS에 16GB나 할당해주었는데... 바로 ssh 접속후 df 명령어로 인스턴스의 남은 용량을 확인해 보았다. 결과는 약간 충격적이였다. Filesystem 1K-blocks Used Available Use% Mounted on devtmpfs 1000672 0 1000672 0% /dev tmpfs 1009664 0 1009664 0% /dev/shm tmpfs 1009664 432 1009232 1% /run tmpfs 1009664 0 1009664 0% /sys/fs/cgroup /dev/xvda1 16764908 15732..

DockerHub 와 Github 연동하여 자동으로 이미지 만들기

배포 자동화는 계속 발전하고 있다. 개발자들이 개발에 집중할 수 있게 함으로서 생산성을 올리게 되는 선순환으로 이어지게 된다. 내가 현재 사용하는 개발환경은 nodejs 환경이며, 도커 컨테이너에 담아서 쉽게 deploy 할 수 있게 하고 있다. 최근에 도커에 대한 공부를 하면서 기존의 배포 환경을 한번 더 정리하는 식으로 정리해 둘려고 한다. 참고로 내가 하는 방법은 현재 "유료" 이다. (1년에 60달러를 결제하면 Pro 계정 사용이 가능하다.) DockerHub 에서 Github 코드 depoly 하기 먼저 dockerhub 사이트에서 github 계정이랑 연동한다. 나의 경우에는 Github 계정과 연동을 시켜 두었다. 그 다음으로는 Repository를 만들고 간단한 설정을 한다. 1. 도커 허..

Docker 기본 개념

Docker는 가상 운영 체제 환경을 만들어주는 매우 편리한 프로그램이다. 마치 VirtualBox 같은 개념이라고 생각할 수도 있으나, 약간은 다른 개념이다. 개인 공부하는 겸 필요한 기능만 정리해 볼려고 한다. Docker는 각 운영체제에 맞는 버전이 따로 있다. 커널과 관련된 곳까지 관여하는 프로그램이라서 맥의 경우에는 M1 칩셋과 Intel 칩셋을 따로 구분한다. 아직까지 M1 버전은 완벽하게 지원하지 않는다고 한다. 언젠간 완벽하게 지원해 주겠지 뭐. Docker 의 기본 개념 Docker를 사용하는 이유는 간단하다. 특정한 개발 환경에서만 실행되는 애플리케이션을 실제 릴리즈 환경에 올리려고 할 때, 지금까지 했던 설정들을 같이 올려야 한다. 이 때 자신이 설정한 환경들을 수동으로 일일이 세팅하..

Dockerfile 작성하기

Dockerfile 제작하기 도커 파일은 가상 환경을 만들기에 매우 좋은 도구이다. 도커 파일 제작법과 사용법을 간단히 정리해 볼까 한다. FROM : 도커 파일의 기본 이미지를 다운받는다. 이미지 목록은 도커 허브에서 볼 수 있다. 예) FROM node (노드 최신버전의 도커 이미지를 다운) ENV : 가상환경의 환경변수를 설정한다. 리눅스의 export 랑 비슷한 명령어인듯 예) ENV MYNAME=TREE (myname 을 tree 라고 정의) RUN : 가상환경에서 다음의 쉘 명령어를 실행 예) RUN ls -al (쉘에서 ls -al 명령어를 실행하는 것과 같음) WORKDIR : RUN, CMD, ENTRYPOINT 의 작업 폴더를 설정한다. cd 명령어랑 비슷한듯 예) WORKDIR /us..