일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
- Docker Desktop
- Thymeleaf
- docker예시
- template engine
- docker image
- crossbrowsing
- Port Fowarding
- 도커파일
- repository
- 명명된 볼륨
- docker hub
- spring boot
- container
- Detached
- bind mount
- Docker배경
- docker volume
- anonymous volume
- dockerignore
- 익명볼륨
- attached
- dockerfile
- env
- 컨테이너간 통신
- named volume
- docker
- arg
- WORKDIR
- Copy
- docker container
- Today
- Total
코딩왕 미룡
[Docker] Docker Desktop 사용 예시(파일 수정해보기) 본문
Docker Desktop 기준
◦ 컨테이너에서 open in terminal 클릭
이 안에서 명령어 실행시 host가 아닌 컨테이너 안에서의 명령어를 실행한 것
ex) 아파치 서버 - 도커에서는 httpd라는 이미지로 사용
메인페이지인 index.html을 실행해줌
→ but, 수정하기 위해 nano index.html 를 즉시 사용 할 수는없음
docker의 주요 장점은 적은 용량이기 때문에 자잘한 파일들까지 포함 할 수 없음 (용량 문제)
✔️ apt update(최신으로 갱신)
apt install nano(나노 에디터 설치)
nano index.html → 파일 수정 가능
1. 위와 같은 예시는 컨테이너 내부의 파일을 직접 수정하는 방법이므로 위험
2. container를 사용하는 이유는 언제든 필요할 때 사용하고 삭제할 수 있기 때문인데 파일을 수정한 후 container가 삭제되면 전부 손실되는 문제(휘발성)
3. 도커의 핵심 : 동일한 이미지에 기반한 다수의 컨테이너가 서로에게 완전히 격리됨
→ container의 디렉토리와 host의 디렉토리를 연결
→ host에서 변경이 이루어졌을 때 바로 반영
→ 컨테이너가 삭제되어도 호스트에는 남아있기 때문에 보다 안전한 개발 가능
❓실행환경은 Container에 맡기고 수정은 Host에서 하려면 ?
원하는 위치에 index.html 파일을 생성 후 코드 작성
터미널을 열고 host의 포트번호와 container의 포트번호 연결
내가 생성한 index.html의 위치 : container에서 index.html의 위치
Volume을 사용하는 방식
ex) docker run -p 8888:80 -v C:\Users\pc\Desktop\htdocs:/usr/local/apache2/htdocs/ httpd
🔴 오늘의 정리
코드, 코드를 실행하는 환경 등 애플리케이션을 구성하는 모든 것을 이미지라고 불리는 곳에 넣음
이미지를 실행하는 것이 아닌 이미지 기반으로 컨테이너를 실행하는 것
도커는 궁극적으로 이미지가 아니라 컨테이너에 관한 것임
'Docker' 카테고리의 다른 글
[Docker] Docker hub(push/pull) (0) | 2023.06.07 |
---|---|
[Docker] Dockerfile 작성하기 (0) | 2023.06.06 |
[Docker] Bind Mounts(바인드 마운트) (0) | 2023.06.06 |
[Docker] Volumes(볼륨) (1) | 2023.06.05 |
[Docker] Docker 기초(배경 및 기본 용어) (1) | 2023.06.01 |