02.Docker DeskTop Install
03.Docker Helloworld Run
04.Docker Base
🐳 Docker 테스트 실행
docker run hello-world
맨 처음에 이미지가 로컬에도 들어가 있지 않으므로 원격에서 가져오며 종료, 다음 실행 시엔 원격에서 가져온 이미지가 실행됨
원격에서 가져오기 : (원래는 docker pull 명령어를 사용) Docker 이미지가 Docker Hub에서 다운로드
Docker Official Image인 hello-world
테스트용으로 아주 간단함
단순히 "Hello from Docker!" 라는 메시지를 콘솔에 출력하는 작은 실행 파일만 포함되어 있음!
docker run -d -p 80:80 docker/welcome-to-docker:latest
- -d: 컨테이너를 백그라운드 모드로 실행하여 터미널을 즉시 반환
- -p 80:80: 호스트의 80번 포트와 컨테이너의 80번 포트를 연결. 이를 통해 외부에서 컨테이너의 웹 서버에 접근할 수 있게 됨
- docker/welcome-to-docker: 사용할 이미지의 이름과 태그. latest는 해당 이미지의 최신 버전을 사용하겠다는 의미
이 구성을 통해 로컬 시스템의 웹 브라우저에서 http://localhost 주소로 해당 컨테이너에 접속할 수 있음
Dockerfile 있으면 도커로 빌드 가능한 것~
🐳 Docker Image 구성
“<레지스트리_주소>/<계정명>/<이미지_명>:<태그>”
태그 : 같은 이미지에 서로 다른 버전을 구분하기 위해 사용됨
🐳 Docker 명령어
docker images docker-test-server
docker pull pytorch/pytorch
Using default tag: latest 됨
docker rmi docker-test-server
docker rmi 86f4ebf4f55a
docker commit
실행 중인 도커 컨테이너 보기
docker ps
docker run -it 이미지명
-i (interactive)
- -i 플래그는 interactive 모드를 의미합니다.
- 이 플래그는 컨테이너의 표준 입력(STDIN)을 열어두어, 사용자가 터미널에서 컨테이너와 상호작용할 수 있게 합니다.
- 예를 들어, 쉘이나 REPL(대화형 해석기)을 실행할 때 사용자 입력을 받아야 하는 경우에 유용합니다.
-t (tty)
- -t 플래그는 tty(teletypewriter)를 의미합니다.
- 이 플래그는 Docker가 가상 터미널을 할당하도록 지시합니다. 이는 사용자가 터미널에서 작업할 때 화면에 더 나은 형식의 출력(예: 줄바꿈, 컬러링 등)을 제공하기 위해 필요합니다.
- -t 플래그가 없으면, 컨테이너 내부에서 터미널 기반 명령어를 실행할 때 포맷팅이 이상하게 보일 수 있습니다.
✓ 이미지 생성후 이미지 변경(commit, tag)시 실제 변화가 없으면 명칭을 달라도 이미지ID가 동일하다.
- docker rmi 이미지ID 로 삭제 안됨 (중복 이미지 ID존재 시)
- docker rmi 이미지명:태그로 삭제
✓ 컨테이너에 올라간 이미지를 수정해서 태그 버전 변경 시 기존 이미지를 가져오고 변경분만 반영
- 도커이미지는 여러 개의 파일로 구성된다.이를 레이어라고 함
- 기존 레이어에 변경된 레이어를 더해 반영되므로 빠른 변경이 가능
✓ docker 이미지 백업 관리
- 내부 관리 저장소가 없을 경우 유용하게 사용할 수 있음
- 아카이브 파일 tar형태로 백업을 하여 관리하고자 할 때 유용
- public망에서 private망으로 이미지파일 반영 시 유용
✓ 백업 받은 tar 파일이 정상인지 판단 여부
- tar파일 열어서 오픈해보았을 때 오류 표시가 없으면 정상
✓ 도커이미지에서 컨테이너로 실행 시 주의점
- 실행 후 어플리케이션이 정상적으로 구동됐는지 확인
- 컨테이너 실행과 해당 어플리케이션 실제 구동과는 시간차가 존재. docker ps로 모니터링 필요
✓ 컨테이너 실행 후 바로 종료될 때 대응
- 실행후 종료되면 docker run 실행시 백그라운드 옵션(-d) 제외하고 실행]
- 실행시 log가 콘솔창에 출력되므로 해당로그를 확인
'🌩️ 클라우드,배포 > Docker, Kubernates' 카테고리의 다른 글
🐳 docker 실습 2 ing (0) | 2024.08.26 |
---|---|
🐳 docker 공부 (5) | 2024.08.17 |
🔅 kubernates 🕸️🔷 (0) | 2024.08.16 |
🐳 docker 공부 / 실습 (0) | 2024.08.16 |