도컀

μˆ˜μ •Β·2024λ…„ 5μ›” 2일
0

λ¦¬λˆ…μŠ€

λͺ©λ‘ 보기
23/23

πŸ“Œ Docker

  • 도컀 : λ¦¬λˆ…μŠ€ μ»¨ν…Œμ΄λ„ˆμ— λ¦¬λˆ…μŠ€ μ–΄ν”Œλ¦¬μΌ€μ΄μ…˜μ„ ν”„λ‘œμ„ΈμŠ€ κ²©λ¦¬κΈ°μˆ μ„ μ‚¬μš©ν•˜μ—¬ 더 μ‰½κ²Œ μ»¨ν…Œμ΄λ„ˆλ‘œ μ‹€ν–‰ν•˜κ³  관리할 수 있게 ν•΄μ£ΌλŠ” μ˜€ν”ˆμ†ŒμŠ€ ν”„λ‘œμ νŠΈ

  • 도컀 엔진: μ»¨ν…Œμ΄λ„ˆλ₯Ό μƒμ„±ν•˜κ³  κ΄€λ¦¬ν•˜λŠ” μ£Όμ²΄λ‘œμ„œ 이 μžμ²΄λ‘œλ„ μ»¨ν…Œμ΄λ„ˆλ₯Ό μ œμ–΄ν•  수 있고 λ‹€μ–‘ν•œ κΈ°λŠ₯을 μ œκ³΅ν•˜λŠ” λ„μ»€μ˜ ν”„λ‘œμ νŠΈ

πŸ“ λ„μ»€μ˜ κ΅¬μ„±μš”μ†Œ

  • Docker Client : 도컀λ₯Ό μ„€μΉ˜ν•˜λ©΄ 그것이 Client이며 build, pull, run λ“±μ˜ 도컀 λͺ…λ Ήμ–΄λ₯Ό μˆ˜ν–‰ν•œλ‹€.

  • DOCKER_HOST : 도컀가 λ„μ›Œμ ΈμžˆλŠ” μ„œλ²„λ₯Ό μ˜λ―Έν•˜λ©° μ»¨ν…Œμ΄λ„ˆμ™€ 이미지λ₯Ό κ΄€λ¦¬ν•œλ‹€.

  • Docker deamon : 도컀 엔진

  • Registry : μ™ΈλΆ€ 이미지 μ €μž₯μ†Œ

πŸ“ 가상머신과 도컀

  • 가상머신

    • ν•˜μ΄νΌλ°”μ΄μ €λ₯Ό μ΄μš©ν•΄ μ—¬λŸ¬κ°œμ˜ 운영체제λ₯Ό ν•˜λ‚˜μ˜ ν˜ΈμŠ€νŠΈμ—μ„œ μƒμ„±ν•΄μ„œ μ‚¬μš©ν•˜λŠ” 방식
    • μ‹œμŠ€ν…œ μžμ›μ„ κ°€μƒν™”ν•˜κ³  λ…λ¦½λœ 곡간을 μƒμ„±ν•˜λŠ” μž‘μ—…μ€ ν•˜μ΄νΌλ°”μ΄μ €λ₯Ό 거치기 λ•Œλ¬Έμ— μ„±λŠ₯ 손싀 ⇧
    • 게슀트 운영체제λ₯Ό μ‚¬μš©ν•˜κΈ° μœ„ν•œ 라이브러리, 컀널 등을 μ „λΆ€ 포함해 배포할 λ•Œ μš©λŸ‰ ⇧
  • 도컀

    • κ°€μƒν™”λœ 곡간을 생성할 λ•Œ λ¦¬λˆ…μŠ€ 자체 κΈ°λŠ₯을 μ‚¬μš©ν•΄ ν”„λ‘œμ„ΈμŠ€ λ‹¨μœ„μ˜ 격리 ν™˜κ²½μ„ λ§Œλ“œλ―€λ‘œ μ„±λŠ₯ 손싀 X

    • 가상머신과 달리 컀널을 κ³΅μœ ν•΄μ„œ μ‚¬μš©ν•˜λ―€λ‘œ μš©λŸ‰ ⇩


πŸ“Œ 도컀 이미지, μ»¨ν…Œμ΄λ„ˆ

  • 도컀 μ—”μ§„μ—μ„œ μ‚¬μš©ν•˜λŠ” κΈ°λ³Έ λ‹¨μœ„λŠ” 이미지와 μ»¨ν…Œμ΄λ„ˆμ΄λ©° 도컀 μ—”μ§„μ˜ 핡심이닀.

πŸ“ 도컀 이미지

  • μ»¨ν…Œμ΄λ„ˆλ₯Ό 생성할 λ•Œ ν•„μš”ν•œ μš”μ†Œ

  • μ»¨ν…Œμ΄λ„ˆλ₯Ό μƒμ„±ν•˜κ³  μ‹€ν–‰ν•  λ•Œ 읽기 μ „μš©μœΌλ‘œ μ‚¬μš©λ˜λ©° μ—¬λŸ¬ κ³„μΈ΅μœΌλ‘œ 된 λ°”μ΄λ„ˆλ¦¬ 파일둜 μ‘΄μž¬ν•œλ‹€.

  • μ΄λ―Έμ§€μ˜ 이름 ꡬ쑰

	[μ €μž₯μ†Œ 이름]/[이미지 이름]:[νƒœκ·Έ]

πŸ“ 도컀 μ»¨ν…Œμ΄λ„ˆ

  • 도컀 μ΄λ―Έμ§€λ‘œ 생성할 수 있으며 μ»¨ν…Œμ΄λ„ˆλ₯Ό μƒμ„±ν•˜λ©΄ ν˜ΈμŠ€νŠΈμ™€ λ‹€λ₯Έ μ»¨ν…Œμ΄λ„ˆλ‘œλΆ€ν„° 격리된 μ‹œμŠ€ν…œ μžμ› 및 λ„€νŠΈμ›Œν¬λ₯Ό μ‚¬μš©ν•  수 μžˆλŠ” λ…λ¦½λœ 곡간이 μƒμ„±λœλ‹€.

  • μ»¨ν…Œμ΄λ„ˆλŠ” 이미지λ₯Ό 읽기 μ „μš©μœΌλ‘œ μ‚¬μš©ν•˜λ˜ μ΄λ―Έμ§€μ—μ„œ λ³€κ²½λœ μ‚¬ν•­λ§Œ μ»¨ν…Œμ΄λ„ˆ 계측에 μ €μž₯ν•˜λ―€λ‘œ μ»¨ν…Œμ΄λ„ˆμ—μ„œ 무엇을 ν•˜λ“  μ΄λ―Έμ§€λŠ” 영ν–₯을 받지 μ•ŠλŠ”λ‹€.


πŸ“Œ Docker둜 MariaDB 접속

1. Dockerλ₯Ό μ„€μΉ˜ν•˜κΈ° μœ„ν•΄ ν•„μš”ν•œ νŒ¨ν‚€μ§€ μ„€μΉ˜

sudo yum install yum-utils device-mapper-persistent-data lvm2 -y

2. Docker μ €μž₯μ†Œ μΆ”κ°€

sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo -y

3. Docker -ce μ„€μΉ˜

sudo yum install docker-ce -y

4. Docker 버전 확인

docker -v

5. Docker μ‹€ν–‰ & ν™œμ„±ν™” : sudo systemctl start docker & sudo systemctl enable docker

6. Docker-compose μ„€μΉ˜

sudo curl -L "https://github.com/docker/compose/releases/download/1.27.4/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose

7. Docker-compose κΆŒν•œλ³€κ²½

sudo chmod +x /usr/local/bin/docker-compose

8. Docker-compose 버전확인

docker-compose -version

9. Sudo 없이 Docker λͺ…λ Ή μ‹€ν–‰

sudo usermod -aG docker ${USER}

10. PuTTY μž¬μ‹œμž‘

11. Mariadb μ’…λ£Œ : sudo systemctl stop mariadb & sudo systemctl disable mariadb

12. 도컀 μ„€μ •

docker run --name mariadb1 
-d --restart=always 
-e MARIADB_ROOT_PASSWORD=korea1231 
-p 3306:3306 
-v /docker/projects/mariadb1/conf.d:/etc/mysql/conf.d 
-v /docker/projects/mariadb1/mysql:/var/lib/mysql 
-v /docker/projects/mariadb1/run/mysqld:/run/mysqld/ mariadb:latest

13. λ„μ»€λ‘œ MariaDB 접속 : docker exec -it mariadb1 mariadb -u root -p

0개의 λŒ“κΈ€

κ΄€λ ¨ μ±„μš© 정보