+ 00 00 0000

Have any Questions?

03_Simple Coding – 01_develop_container

03_Simple Coding – 01_develop_container

Table of Contents

πŸ“ƒ μš”μ•½

컴퓨터λ₯Ό μ‚¬μš©ν•˜λ €λ©΄ 졜초 μœˆλ„μš°λ₯Ό μ„€μΉ˜ν•΄μ•Ό μ‚¬μš©ν•  수 있음.
μœˆλ„μš° ν”„λ‘œκ·Έλž¨μ„ OS(Operating System) 라고 ν•˜κ³  운영체제라고 함.
μš΄μ˜μ²΄μ œλŠ” ν‚€λ³΄λ“œ, 마우슀, μŒμ•…, λ™μ˜μƒ λ“±μ˜ ν™˜κ²½μ„ μ‰½κ²Œ μ‚¬μš©ν•  수 있게 ν•΄μ£ΌλŠ” S/W 둜 졜초둜 μ„€μΉ˜λ˜μ–΄μ•Ό 함.
운영체제의 μ’…λ₯˜λŠ” μœˆλ„μš°(Window), λ¦¬λˆ…μŠ€(Linux), μœ λ‹‰μŠ€(Unix)κ°€ 있으며 주둜 개인용으둜 μœˆλ„μš°λ₯Ό μ‚¬μš©ν•˜κ³  νšŒμ‚¬μ—μ„œλŠ” λ¦¬λˆ…μŠ€ λ˜λŠ” μœ λ‹‰μŠ€κ°€ μ‚¬μš©λ¨

μš”μ†Œ 기술 :

– Basic : λ¦¬λˆ…μŠ€

πŸ“ƒ 기술 κ΅¬ν˜„

μŠ€νŽ™ :

- docker desktop

πŸ“ƒ μ»¨ν…Œμ΄λ„ˆ 개발

1) 이미지 λΉŒλ“œμ˜ κ°œμš”

(1) 베이슀(κΈ°λ³Έ) 이미지 선택
λ² μ΄μŠ€μ΄λ―Έμ§€ : 이미지λ₯Ό λ§Œλ“€λ•Œ 바탕이 λ˜λŠ”(κΈ°λ³Έ) 이미지

2) λ¦¬λˆ…μŠ€ s/w νŒ¨ν‚€μ§€ 선택 및 μ„€μΉ˜

λ¦¬λˆ…μŠ€ 배포판 : ꡬ뢄 2가지(λ°λΉ„μ•ˆκ³„μ—΄(무료), λ ˆλ“œν—·κ³„μ—΄(μƒμš©))
λ°λΉ„μ•ˆ 계열 : (무료)ubuntu, (무료)μˆ˜μ„Έλ¦¬λˆ…μŠ€ λ“±
μ„€μΉ˜ νŒ¨ν‚€μ§€ κ΄€λ¦¬μž : apt-get install νŒ¨ν‚€μ§€λͺ…
λ ˆλ“œν—· 계열 : (μƒμš©)redhat, (무료)centos:7, (무료)rocky
μ„€μΉ˜ νŒ¨ν‚€μ§€ κ΄€λ¦¬μž : yum install νŒ¨ν‚€μ§€λͺ…

3) μ• ν”Œλ¦¬μΌ€μ΄μ…˜ μ‘μš© μ†ŒμŠ€ μ½”λ“œ λ„£κΈ°

(4) Dockerfile μž‘μ„±
a) 베이슀 μ΄λ―Έμ§€μ˜ λ ˆν¬μ§€ν† λ¦¬
b) μ„€μΉ˜ν•  νŒ¨ν‚€μ§€(os 선택 지정)
c) μ• ν”Œλ¦¬μΌ€μ΄μ…˜ μ½”λ“œμ™€ μ„€μ • 파일 볡사
d) μ»¨ν…Œμ΄λ„ˆ κ°€λ™μ‹œ λ§ˆμ§€λ§‰μ— 싀행될 λͺ…λ Ήμ–΄(μ˜΅μ…˜)
예제 1) hello world μž‘μ„±λœ message.txt 파일이 μžˆμŠ΅λ‹ˆλ‹€.
μ»¨ν…Œμ΄λ„ˆλ₯Ό κ°€λ™ν•˜λ©΄ νŒŒμΌμ„ μ½μ–΄μ„œ 화면에 좜λ ₯ν•˜λŠ” 이미지λ₯Ό μž‘μ„±ν•΄λ³΄μ„Έμš”.(cat /message.txt)
그리고, μ»¨ν…Œμ΄λ„ˆ 가동해 λ³΄μ„Έμš”

4) Dockerfile μž‘μ„± (파일λͺ… : Dockerfile 파일λͺ… κ³ μ •)

(1) OS : ubuntu:18.04 베이슀(κΈ°λ³Έ) 이미지 선택
μ‚¬μš©λ²•) FROM λ² μ΄μŠ€μ΄λ―Έμ§€λͺ…:νƒœκ·Έ
(2) μ»¨ν…Œμ΄λ„ˆ 가동 μ‹œ 1회 μ‹€ν–‰ν•  λͺ…λ Ήμ–΄ 선택
μ‚¬μš©λ²•) RUN λͺ…λ Ήμ–΄
예) RUN apt-get update -y
(3) message.txt 파일(λ²„μΈ„μ–Όλ°•μŠ€ λ¦¬λˆ…μŠ€) 을 μ»¨ν…Œμ΄λ„ˆμ•ˆμ— 볡사
μ‚¬μš©λ²•) ADD ν˜„μž¬κ²½λ‘œ/파일 μ»¨ν…Œμ΄λ„ˆκ²½λ‘œ/파일
(4) μ»¨ν…Œμ΄λ„ˆ 가동 ν›„ μ‹€ν–‰ν•  λͺ…λ Ήμ–΄
μ‚¬μš©λ²•) CMD λͺ…λ Ήμ–΄ μ˜΅μ…˜ 파일λͺ…
예) CMD cat /message.txt

5) 이미지 μ œμž‘(λΉŒλ“œ)

μ‚¬μš©λ²•) docker build –tag 생성할이미지λͺ…:νƒœκ·Έ .
. : ν˜„μž¬κ²½λ‘œ
μ‹€ν–‰μ‹œ Dockerfile μžˆλŠ” κ²½λ‘œμ—μ„œ 싀행해야함
docker build –tag hello:latest .
D:\Work_AWS_Docker_Microservice_Step03_Docker>docker build --tag hello:latest .
Sending build context to Docker daemon  5.632kB
Step 1/4 : FROM ubuntu:18.04
 ---> f9a80a55f492
Step 2/4 : RUN apt-get update -y
...μƒλž΅

6) λΉŒλ“œλœ(μ œμž‘λœ) 이미지 hello λ₯Ό μ»¨ν…Œμ΄λ„ˆλ‘œ μ‹€ν–‰ν•˜κΈ°

-it μ˜΅μ…˜ μƒλž΅
μ‚¬μš©λ²•) docker run μ»¨ν…Œμ΄λ„ˆλͺ…(id, 별λͺ…)
docker run hello:latest
D:\Work_AWS_Docker_Microservice_Step03_Docker>docker run hello:latest
hello world
D:\Work_AWS_Docker_Microservice_Step03_Docker>

7) μ—°μŠ΅λ¬Έμ œ 1) μœ„μ˜ λ‚΄μš©μ—μ„œ message_exam.txt μ•ˆμ— Hello Docker Exam μž‘μ„±ν•˜κ³  이미지 λΉŒλ“œ(μ œμž‘) ν•˜κ³  μ»¨ν…Œμ΄λ„ˆλ₯Ό μ‹€ν–‰ν•΄μ„œ 화면에 좜λ ₯ν•΄ λ³΄μ„Έμš”

단, exam 디렉토리λ₯Ό λ§Œλ“€μ–΄μ„œ μ•ˆμ—μ„œ μž‘μ—…ν•˜μ„Έμš”
이미지 λΉŒλ“œ
μ‚¬μš©λ²•) docker build –tag 생성할이미지λͺ…:νƒœκ·Έ .
생성할이미지λͺ… : hello2:latest
docker build –tag hello2:latest .
D:\Work_AWS_Docker_Microservice_Step03_Docker\exam>docker build --tag hello2:latest .
Sending build context to Docker daemon  3.072kB
Step 1/4 : FROM ubuntu:18.04
 ---> f9a80a55f492
Step 2/4 : RUN apt-get update -y
 ---> Using cache
 ---> 723c4deb2811
 ...μƒλž΅

8) μ»¨ν…Œμ΄λ„ˆ μ‹€ν–‰ :

docker run hello2:latest
D:\Work_AWS_Docker_Microservice_Step03_Docker>docker run hello2:latest
Hello Docker Exam
D:\Work_AWS_Docker_Microservice_Step03_Docker>

9) Dockerfile λΉŒλ“œ μž₯점

1) μ»¨ν…Œμ΄λ„ˆμ— λ‹΄μ•„ μ‹€ν–‰ ν™˜κ²½μ΄ 달라도 μ‰½κ²Œ 이미지λ₯Ό 전달해 쀄 수 있음
2) μ„œλ²„ 관리, μ‹œμŠ€ν…œ 관리 λ“±μ˜ 뢀담을 μ€„μ—¬μ€Œ

“03_Simple Coding – 01_develop_container” 에 ν•˜λ‚˜μ˜ λ‹΅κΈ€

  1. I loved as much as you will receive carried
    out right here. The sketch is attractive, your authored
    material stylish. nonetheless, you command get got an edginess over that you wish be delivering the following.
    unwell unquestionably come further formerly again since exactly the same nearly a lot often inside
    case you shield this increase.

    Here is my page … λ°”μ΄λΈŒ 바둑이

λ‹΅κΈ€ 남기기

이메일 μ£Όμ†ŒλŠ” κ³΅κ°œλ˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€. ν•„μˆ˜ ν•„λ“œλŠ” *둜 ν‘œμ‹œλ©λ‹ˆλ‹€