본문 바로가기

DevOps/Docker

(5)
도커 사용하기(4) - 생성한 이미지 DockerHub에 올리고 실행 :: DANIDANI DockerHub 로그인 dockerhub에서 계정을 생성합니다. docker login 생성한 Image 올리기 docker push 10ekdms01/node-test:1.0 다른 서버에서 image pull 받기 aws ec2를 생성한 후 docker만 설치해 준 서버를 준비합니다. pull을 이용해 image를 가져옵니다. docker pull 10ekdms01/node-test:1.0 pull 받은 image 확인 docker images image 실행 docker run -p 8080:3000 10ekdms01/node-test:1.0 이 서버에는 node, npm, express 등을 설치하지 않았습니다. 단지 이미지만 실행 시켜줬는데 애플리케이션이 정상적으로 작동하는 것을 볼 수 있습니다.
도커 사용하기(3) - Dockerfile로 이미지 직접 만들기(Node.js) :: DANIDANI 다음 예제는 Node.js 기반의 이미지를 dockerfile로 만들어 배포합니다. node와 npm이 설치되어있는 환경을 가정하고 진행합니다. Express로 배포하려는 프로젝트 생성 express 생성을 도와주는 express-generator 설치(에러 시 sudo로 접근) npm install -g express-generator docker-test 라는 이름의 프로젝트 생성(저는 ejs 템플릿 엔진을 사용했지만, 저 옵션은 생략가능합니다,) express docker-test --ejs 생성된 프로젝트에서 npm 실행 cd docker-test npm install npm start dockerfile 생성하기 vi Dockerfile Dockerfile 작성하기 # 베이스 이미지 설정 FRO..
도커 사용하기(2) - Dockerfile 작성 방법 :: DANIDANI Dockerfile 도커는 이미지를 만들기 위해 DSL(domain specific language) 파일을 사용합니다. 도커 파일은 서버 운영 기록을 코드화한 파일입니다. 쉽게 말하면, 실행 명령어들의 집합! 소스들 + dockerfile = docker image FROM FROM ubuntu:16.04 FROM은 어떤 이미지로부터 이미지를 생성할지 지정합니다. (베이스 이미지) Dockerfile에서는 필수 항목입니다. MAINTAINER MAINTAINER daeun 관리하는 사람의 이름 또는 이메일 정보를 적습니다. 생략이 가능합니다. WORKDIR WORKDIR /temp 명령어들이 실행될 기본 디렉터리를 설정합니다. 각 명령어의 현재 디렉터리는 한 줄 한 줄마다 초기화되기 때문에 RUN cd..
도커 사용하기(1)- 설치와 컨테이너 실행 :: DANIDANI 도커 설치 스크립트를 사용해서 설치해도 되고, 패키지를 이용해서 설치해도 됩니다. 다음은 AWS Linux에 yum 패키지를 이용해 설치하는 방법입니다. sudo yum install docker for mac Docker Desktop for Mac - Docker Hub 설치 확인 docker version sudo 없이 사용하는 방법 도커는 기본적으로 root 권한이 필요해서 sudo를 붙여줘야 됩니다. 이건 도커 그룹에 사용자 추가하는 명령어로 앞으로의 명령에서 sudo를 생략해도 됩니다. sudo usermod -aG docker (사용자 이름 ex. ec2-user) 반영이 안 됐을 때는 서버 재시작! docker 서비스 실행 sudo service docker start 부팅 시 자동으로 실..
도커(Docker) 시작하기 - 이미지, 컨테이너, 장점 :: DANIDANI 도커란? 도커는 리눅스 환경에서 컨테이너 기반의 오픈소스 가상화 플랫폼입니다. 우리가 express 애플리케이션을 만들어서 배포를 할 때를 생각해봅시다. 서버를 만들고 node를 설치하고, npm을 설치하고, git을 설치하고,,,,, git에서 pull을 받고, npm install을 해주고, npm start를 해주고,,,, 버전이 안 맞아서 다시 반복,, 등등! 아주 복잡한 과정들을 거칩니다. 그러나 express 애플리케이션을 도커 이미지로 저장해 놓는다면 언제 어디서든 pull 받고 run만 하면 실행이 됩니다. express 애플리케이션뿐만 아니라 OS, framework, tool 등 어떠한 종류라도 docker 이미지만 있다면 pull, run 처럼 똑. 같. 은 방식으로 실행이 가능합니다..