컨테이너란?

sun·2024년 11월 17일
0

1강. 소개, 설치 , 컨테이너 실행하기

컨테이너란

cat > app.js

const http = require('http');
const os = require('os');
console.log("Test server starting...");
var handler = function(req, res){
	res.writeHead(200);
    res.end("Container Hostname: " +os.hostname() +"₩n")
};
var www = http.createServer(handler);
www.listen(8080);

간단한 node.js 기반의 프로그램 이 프로그램이 실행되기 위해서 node.js를 설치해준다.
그 다음 노드 명령어에 app.js 소스코드 파일이름을 넣어주면 실행된다.

cat > Dockerfile

FROM node:12
COPY app.js /app.js
ENTRYPOINT ["node",app.js"]
<ctrl><d>

도커파일에 아까 만든 파일이름을 그대로 도커 컨테이너 위에 쌓아서 실행할 수 있다.
위 컨테이너를 열면 클라이언트의 요청을 기다리고 있다가 접속하게 되면 hostname과 Container Hostname의 메세지를 200번의 상태코드를 전달해준다.

위처럼 만든 컨테이너를 어떻게 동작시킬 수 있을까?

그 컨테이너를 실행시킬 수 있는 플랫폼이 필요한데, 도커라는 플랫폼을 사용하여 실행.

컨테이너 이미지를 생성
web server 컨테이너 생성
1. 컨테이너 저장소에 저장하는 법 먼저 설명
linux 운영체제 위에 도커 설치
컨테이너 빌드하기
허브- 도커닷컴에서 운영하고 있는 저장소에 컨테이너를 빌드하여 푸쉬해줄 수 있다.
앞에 만든 두개의 파일(node.js파일과 도커파일)을 사용하여 명령어를 통해 빌드할 수 있다.

docker build -t smlinusx(containername)/nodeinfo:v1

하나의 컨테이너가 하드디스크에 들어가게 된다.
만들어진 컨테이너를 docker push smlinux/nodeinfo:v1 (push명령어 저장된다.)

저장된 컨테이너 사용방법

$docker pull smlinux/nodeinfo:v1 <- 저장한 도커컨테이너를 다운받고
$docker create --name app -p 80:8080 smlinux/nodeinfo:v1
$docker start app

바로 도커컨테이너를 열고 노드js 8080열어 클라이언트를 listen 할 수 있다.


쿠버네티스가 도커를 관리하고 스케줄링하고 운영하는 오케스트레이션이다.
지휘자 역할, 리더 역할

0개의 댓글