🐳 Docker 도컀 - #1 κΈ°λ³Έ λͺ…λ Ήμ–΄ λͺ¨μŒ

Jin-Young LeeΒ·2019λ…„ 9μ›” 24일
11

Docker 도컀

λͺ©λ‘ 보기
1/1
post-thumbnail

λ„μ»€λž€ κ°„λ‹¨ν•˜κ²Œ 말해 μ„œλ²„ν™˜κ²½μ—μ„œμ˜ λ‹€μ–‘ν•œ ν”„λ‘œκ·Έλž¨, μ‹€ν–‰ν™˜κ²½μ„ μ»¨ν…Œμ΄λ„ˆλΌλŠ” 격리된 ν™˜κ²½μ—μ„œ μ‹€ν–‰ν•  수 있게 ν•΄μ£ΌλŠ” μ»¨ν…Œμ΄λ„ˆ 기반의 μ˜€ν”ˆμ†ŒμŠ€ 가상화 ν”Œλž«νΌ μž…λ‹ˆλ‹€.

이λ₯Ό μ΄μš©ν•˜λ©΄ λ³΅μž‘ν•œ μ„œλ²„ν™˜κ²½μ„ μ½”λ“œλ‘œ μ‰½κ²Œ 관리할 수 있고 μ•ˆμ •μ μΈ λ°°ν¬ν™˜κ²½ (무쀑단 배포 λ“±) ꡬ성할 수 μžˆμŠ΅λ‹ˆλ‹€.

κ·Έλž˜μ„œ 이번 κΈ€μ—μ„œλŠ” λ„μ»€μ—μ„œ 이미지λ₯Ό λ°›κ³  μ»¨ν…Œμ΄λ„ˆλ₯Ό μƒμ„±ν•˜κ³  μ‚­μ œ ν•  λ•Œ, μžμ£Όμ“°λŠ” κΈ°λ³Έ λͺ…λ Ήμ–΄λ₯Ό μ•Œμ•„λ³΄λ € ν•©λ‹ˆλ‹€ :)

docker μ„€μΉ˜

λ¦¬λˆ…μŠ€ μžλ™ μ„€μΉ˜ 슀크립트

$ sudo wget -qO- https://get.docker.com/ | sh

$ curl -fsSL https://get.docker.com -o get-docker.sh
$ sh get-docker.sh

μš°λΆ„νˆ¬

$ sudo apt-get update
$ sudo apt-get install docker.io
$ sudo ln -sf /usr/bin/docker.io /usr/local/bin/docker

μœˆλ„μš°, λ§₯

Docker for windows, Docker for Mac μ„€μΉ˜

πŸ“œ 이미지 κ΄€λ ¨

λ„μ»€μ—μ„œλŠ” 도컀 이미지λ₯Ό μ΄μš©ν•˜μ—¬ μ»¨ν…Œμ΄λ„ˆλ₯Ό 생성할 수 μžˆλŠ”λ°,

도컀 이미지λ₯Ό μ΄μš©ν•˜λ©΄ 이미지에 μ„€μ •ν•΄λ‘” λŒ€λ‘œ μ»¨ν…Œμ΄λ„ˆμ˜ κ΅¬μ„±ν™˜κ²½μ„ μ μš©ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

이미지 λͺ©λ‘ 보기

$ sudo docker images

이미지 검색

$ sudo docker search [이미지 이름]

이미지 λ°›κΈ°

$ sudo docker pull [이미지 이름]:[버전]

버전: latest λ₯Ό μ“°λ©΄ μ΅œμ‹  λ²„μ „μœΌλ‘œ λ°›μ„μˆ˜ μžˆλ‹€.

이미지 μ‚­μ œ

$ sudo docker rmi [이미지 id]

μ»¨ν…Œμ΄λ„ˆλ₯Ό μ‚­μ œν•˜κΈ° 전에 이미지λ₯Ό μ‚­μ œ ν• λ•Œ, -f μ˜΅μ…˜μ„ λΆ™μ–΄λ©΄ μ»¨ν…Œμ΄λ„ˆλ„ κ°•μ œ μ‚­μ œκ°€ κ°€λŠ₯ν•˜λ‹€.

$ sudo docker rmi -f [이미지 id]

πŸ“¦ μ»¨ν…Œμ΄λ„ˆ κ΄€λ ¨

λ‹€μ–‘ν•œ ν”„λ‘œκ·Έλž¨(nginx, database, WAS λ“±)을 μ»¨ν…Œμ΄λ„ˆ λΌλŠ” 격리된 ν™˜κ²½μ„ μ΄μš©ν•˜μ—¬ μ‹€ν–‰μ‹œν‚¬μˆ˜ μžˆμŠ΅λ‹ˆλ‹€.

μ»¨ν…Œμ΄λ„ˆ λͺ©λ‘ 보기

$ sudo docker ps

μ˜΅μ…˜

  • -a : λͺ¨λ“  μ»¨ν…Œμ΄λ„ˆ λͺ©λ‘ 좜λ ₯

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

$ sudo docker run [options] image[:TAG|@DIGEST] [COMMAND] [ARG...]
μ˜΅μ…˜μ„€λͺ…
-ddetached mode ν”νžˆ λ§ν•˜λŠ” λ°±κ·ΈλΌμš΄λ“œ λͺ¨λ“œ
-pν˜ΈμŠ€νŠΈμ™€ μ»¨ν…Œμ΄λ„ˆμ˜ 포트λ₯Ό μ—°κ²° (ν¬μ›Œλ”©)
-vν˜ΈμŠ€νŠΈμ™€ μ»¨ν…Œμ΄λ„ˆμ˜ 디렉토리λ₯Ό μ—°κ²° (마운트)
-eμ»¨ν…Œμ΄λ„ˆ λ‚΄μ—μ„œ μ‚¬μš©ν•  ν™˜κ²½λ³€μˆ˜ μ„€μ •
--nameμ»¨ν…Œμ΄λ„ˆ 이름 μ„€μ •
--it-i와 -tλ₯Ό λ™μ‹œμ— μ‚¬μš©ν•œ κ²ƒμœΌλ‘œ 터미널 μž…λ ₯을 μœ„ν•œ μ˜΅μ…˜ (μ»¨ν…Œμ΄λ„ˆμ˜ ν‘œμ€€ μž…λ ₯κ³Ό 둜컬 μ»΄ν“¨ν„°μ˜ ν‚€λ³΄λ“œ μž…λ ₯을 μ—°κ²°)
--rmν”„λ‘œμ„ΈμŠ€ μ’…λ£Œμ‹œ μ»¨ν…Œμ΄λ„ˆ μžλ™ 제거
--linkμ»¨ν…Œμ΄λ„ˆ μ—°κ²° [μ»¨ν…Œμ΄λ„ˆ λͺ…:별칭]
  • ex) $ sudo docker run -i -t --name server ubuntu:latest /bin/bash

μ»¨ν…Œμ΄λ„ˆ μ‹œμž‘

$ sudo docker start [μ»¨ν…Œμ΄λ„ˆ id λ˜λŠ” name]

μ»¨ν…Œμ΄λ„ˆ μž¬μ‹œμž‘

$ sudo docker restart [μ»¨ν…Œμ΄λ„ˆ id λ˜λŠ” name]

μ»¨ν…Œμ΄λ„ˆ 접속

$ sudo docker attach [μ»¨ν…Œμ΄λ„ˆ id λ˜λŠ” name]

μ»¨ν…Œμ΄λ„ˆ 정지

$ sudo docker stop [μ»¨ν…Œμ΄λ„ˆ id λ˜λŠ” name]
  • Bash Shellμ—μ„œ exit λ˜λŠ” Ctrl + Dλ₯Ό μž…λ ₯ν•˜λ©΄ μ»¨ν…Œμ΄λ„ˆκ°€ μ •μ§€λœλ‹€.

  • Ctrl + P, Ctrl + Qλ₯Ό μ°¨λ‘€λŒ€λ‘œ μž…λ ₯ν•˜μ—¬ μ»¨ν…Œμ΄λ„ˆλ₯Ό μ •μ§€ν•˜μ§€ μ•Šκ³ , μ»¨ν…Œμ΄λ„ˆμ—μ„œ λΉ μ Έλ‚˜μ˜¨λ‹€.

μ»¨ν…Œμ΄λ„ˆ μ‚­μ œ

$ sudo docker rm [μ»¨ν…Œμ΄λ„ˆ id λ˜λŠ” name]
// λͺ¨λ“  μ»¨ν…Œμ΄λ„ˆ μ‚­μ œ
$ sudo docker rm `docker ps -a -q`

sudo 없이 Docker λͺ…λ Ήμ–΄ μ“°κΈ°

$ sudo usermod -aG docker $USER # ν˜„μž¬ 접속쀑인 μ‚¬μš©μžμ—κ²Œ κΆŒν•œμ£ΌκΈ°

$ sudo usermod -aG docker your-user # your-user μ‚¬μš©μžμ—κ²Œ κΆŒν•œμ£ΌκΈ°

μ‚¬μš©μžκ°€ 둜그인 쀑 일 λ•Œ, λ‹€μ‹œ λ‘œκ·ΈμΈν•˜λ©΄ κΆŒν•œμ΄ μ μš©λœλ‹€.

🀞 마치며...

κ°„λ‹¨ν•˜κ²Œ 도컀와 κ΄€λ ¨λœ κΈ°λ³Έ λͺ…령어에 λŒ€ν•΄ μ•Œμ•„λ³΄μ•˜μŠ΅λ‹ˆλ‹€. ν•˜μ§€λ§Œ 평생 λ„μŠ€μ°½μ— 도컀 λͺ…λ Ήμ–΄λ₯Ό μΉ  순 μ—†κΈ° λ•Œλ¬Έμ—, λ‹€μŒ κΈ€μ—μ„œλŠ” 도컀λ₯Ό λ”μš± νŽΈλ¦¬ν•˜κ²Œ μ‚¬μš©ν•΄μ£ΌλŠ” 도컀 guiνˆ΄μ— λŒ€ν•΄ ν¬μŠ€νŒ… 해보도둝 ν•˜κ² μŠ΅λ‹ˆλ‹€.

profile
πŸ’» κ°œλ°œν•˜κ³  κ³΅μœ ν•˜λŠ” 것을 μ’‹μ•„ν•˜λŠ” κ°œλ°œμžμž…λ‹ˆλ‹€

4개의 λŒ“κΈ€

comment-user-thumbnail
2020λ…„ 5μ›” 5일

// λͺ¨λ“  μ»¨ν…Œμ΄λ„ˆ μ‚­μ œ
$ sudo docker rm docker ps -a -p 이 λΆ€λΆ„μ—μ„œ
-p κ°€ μ•„λ‹ˆλΌ -q μ•„λ‹Œκ°€μ—¬??

1개의 λ‹΅κΈ€
comment-user-thumbnail
2021λ…„ 8μ›” 3일

λ§Žμ€ 도움이 λ˜μ—ˆμŠ΅λ‹ˆλ‹€!

λ‹΅κΈ€ 달기
comment-user-thumbnail
2022λ…„ 12μ›” 13일

μ•ˆλ…•ν•˜μ„Έμš” μš΄μ˜μžλ‹˜
μΈμΉ΄ν† μŠ€μž…λ‹ˆλ‹€.
λ¨Όμ €, λŒ“κΈ€λ‘œ 인사λ₯Ό λ“œλ¦¬κ²Œ 된 점 μ–‘ν•΄ 뢀탁 λ“œλ¦½λ‹ˆλ‹€.
μ΄λ ‡κ²Œ 연락 λ“œλ¦° μ΄μœ λŠ” μ΄λ²ˆμ— 저희가 μ œμž‘ν•œ 도컀 κ°ν‹°μŠˆμΌ€μ΄μŠ€ μ œν’ˆ ν˜‘μ°¬μ„ μ œμ•ˆλ“œλ¦¬κ³  μ‹Άμ–΄μ„œ 연락 λ“œλ ΈμŠ΅λ‹ˆλ‹€.
κ°œλ°œμžλ“€μ—κ²Œ λ§Žμ€ μ‚¬λž‘μ€ 받은 κ°ν‹°μŠˆμΌ€μ΄μŠ€μž…λ‹ˆλ‹€.
저희 μƒν’ˆ λΈ”λ‘œκ·Έ ν¬μŠ€νŒ…μ΄ κ°€λŠ₯ν•˜μ‹€μ§€ μ—¬μ­™κ³ μž μ—°λ½λ“œλ ΈμŠ΅λ‹ˆλ‹€.
ν¬μŠ€νŒ…μ΄ μ–΄λ €μš°μ‹œλ‹€λ©΄ 도컀 κΈ€ ν•˜λ‹¨μ— 이미지와 링크만 μ’€ 달아주셔도 μ’‹μ„κ±°κ°™μŠ΅λ‹ˆλ‹€.

μ—°λ½λ“œλ¦΄μˆ˜ μžˆλŠ”λ°©λ²•μ΄ λŒ“κΈ€λ°–μ— 보이지 μ•Šμ•„ μ΄λ ‡κ²Œ λ¨Όμ € μ—°λ½λ“œλ¦½λ‹ˆλ‹€.

ν˜‘μ°¬μ œμ•ˆμ— 긍정적인 κ²€ν†  λΆ€νƒλ“œλ¦¬κ³  μ œμ•ˆμ΄ λ§ˆμŒμ— λ“œμ‹ λ‹€λ©΄ ν•˜κΈ° λ©”μΌλ‘œ λ©”μΌμ£Όμ‹œλ©΄ μ œν’ˆ λ³΄λ‚΄λ“œλ¦¬λ„λ‘ ν•˜κ² μŠ΅λ‹ˆλ‹€.

sungjh0726@naver.com

ν˜‘μ°¬μ œν’ˆ 링크 : https://incatos.shop/surl/P/11

κ°μ‚¬ν•©λ‹ˆλ‹€.
μΈμΉ΄ν† μŠ€ λ“œλ¦Ό.

λ‹΅κΈ€ 달기