Docker volume 마운트되지 않은 경우
$ docker run -d --name=nginx -p 8081:80 nginx
로컬에 없으면 허브에서 다운받아옴
(웹에서 확인)localhost:8081

$ docker exec -it --user=root nginx sh
$ apt update
$ apt install nano
$ nano /usr/share/nginx/html/index.html
index.html 내용 수정
타이틀 수정 Welcome to Docker Volume!
$ 저장 후 exit
$ docker stop nginx
$ docker rm nginx
$ docker exec -it --user=root nginx sh
# cat /usr/share/nginx/html/index.html
변경되었는지 확인(원상복구되어있음)
Docker volume 마운트 된 경우
html 폴더 아래 두개 파일 만들어놓음
$ ls -tl html
index.html
test.html
$ vi html/index.html
<제목>Hello from Docker Volume!!</제목>
$ vi html/test.html
은 내용이 없고 추가하기
<제목>Testing ... </제목>
$pwd
<로컬파일경로확인>
$ docker run -p 8081:80 --name nginx -v /Users/cookie/Desktop/_sio/데이터_엔지니어링_데브코스/10주차. airflow/nginx
:/usr/share/nginx/html nginx
$ docker stop nginx
$ docker rm nginx
$ docker run -p 8081:80 --name nginx -v /Users/jobox/Downloads/grepp/kdt/nginx:/usr/share/nginx/html nginx
(detach를 안한 상태)
새로운 탭 열기
$ cd html
$ ls -tl
test.html
index.html
(웹에서 확인)localhost:8081
(웹에서 확인)localhost:8081/test.html
터미널로 돌아와서
$ vi test.html
Testing ... By Ourjune
웹 화면 refresh해주면 수정사항 반영
(웹에서 확인)localhost:8081/test.html
$ docker stop nginx
$ docker rm nginx
$ docker run -p 8081:80 --name nginx -v /Users/jobox/Downloads/grepp/kdt/nginx:/usr/share/nginx/html nginx
브라우저 가보면 수정한 사항 그대로 적용(마지막 상황 유지)
Docker-compose.yaml 으로 작업
Docker-copose란?
다수의 컨테이너로 구성되어있는 경우 쉽게 관리하기 위한 환경설정 파일이자 유틸리티
airflow-setup 컨테이너 터미널에서 작업
$ vi docker-compose.yaml
# AIRFLOW_PROJ_DIR 환경변수 pwd volume 현재위치경로 세팅되어 있음?
# volumes: 에 경로 지정되어있음 → airflow 경로? 도커 경로?
# services: 하나의 파일로 다수의 도커 컨테이너 기술가능?
$ cd dags
$ ls -tl
$ cd ..
$ vi docker-compose.yaml
$ docker-compose pull
$ docker-compose up
$ docker ps
apache/airflow:2.5.1 컨테이너 실행 확인
$ docker exec -it worker-1 ID 사용 sh
$ pwd
opt/airflow
$ ls -tl 맥킨토시(로컬)에 있는 폴더들이 매핑이 된 것
dags
logs
plugins
$ cd dags
'데브코스 데이터엔지니어링' 카테고리의 다른 글
| Docker Compose란? (1) | 2024.11.19 |
|---|---|
| .dockerignore (0) | 2024.11.19 |
| Docker Network voting application 예제 프로그램(1) (0) | 2024.11.19 |
| Docker 환경 클린업 방법 컨테이너, 이미지 삭제, Troubleshoot clean (0) | 2024.11.19 |
| Docker Volume (0) | 2024.11.19 |