Docker run, start 차이점
Docker run
docker run -p 3000:80 image_id
이 명령어는 이미지를 기반으로하여 완전 새로운 컨테이너를 생성하는 명령어이다.
이 명령어는 터미널을 차단한다.(defualt = attached 모드)
docker run -p 3000:80 -d image_id
기본이 attached 모드인 run 명령어를 detached모드로 사용
Docker start
docker ps -a
docker start container_id or name
으로 컨테이너를 다시 사용이 가능하다.
또한 이 명렁어는 터미널을 차단하지 않고, 컨테이너만 실행하는 상태로 사용이 가능하다.
(default = detached모드, 백그라운드 실행)
docker start -a container_id or name
기본이 detached모드인 start 명령어를 attached 모드로 사용
detached attached 모드
- detached 모드그냥 터미널창이 열려있는 상태라고 보아도 무방함
- 터미널에 콘솔이 찍히는 모습을 확인이 불가하지만, 다른 터미널 명령어 입력이 가능하다.
- attached 모드but 다른 터미널 명령어 입력이 불가.
- 컨테이너의 출력결과를 수신한다.
- detached모드인 컨테이너를 attacched모드로 연결
- docker attach container_id
- detached 모드이지만 해당 컨테이너의 로그 기록들을 보고 싶다면?만약 과거의 로그기록들을 모두 보고, 이어서 attached모드처럼 보고 싶다면
- docker logs -f container_id
- docker ps # 해당 컨테이너의 id, name을 찾기 위해서 docker logs container_id