Back to top

도커 명령어

작성날짜 2025/03/02

컨테이너


실행 중인 컨테이너 목록 확인

docker ps


모든 컨테이너 목록 확인

docker ps -a

article_img_1_rte_image_3.png


컨테이너 생성 및 시작

docker run [옵션] [이미지 이름]

article_img_0_rte_image_43.png

로컬에서 이미지를 찾지 못하면 docker hub에서 다운로드를 시도한다.


-d: dettach 상태로 컨테이너를 실행

-p: 컨테이너의 포트 설정, -p 9000:8000으로 설정하면 외부에서 9000번으로 접속 시 컨테이너 내부엔 8000으로 연결


컨테이너 시작

docker start [컨테이너 ID]


컨테이너 접속

docker attach [컨테이너 ID]


컨테이너 정지

docker stop [컨테이너 ID]


컨테이너 삭제

docker rm [컨테이너 ID]


이미지


다운받은 이미지 목록 확인

docker images

article_img_0_rte_image_41.png


이미지 삭제

docker rmi [이미지 ID]


번외 - dotnet 프로젝트 이미지로 만들기


publish 명령어로 docker에 이미지 등록

dotnet publish --os linux --arch arm64 /t:PublishContainer

--os linux: 운영체제를 리눅스로 설정

--arch arm64: cpu 아키텍처를 arm64로 설정

/t:PublishContainer: docker에 이미지 등록


일단 새로 프로젝트 만들어서 도커에 올리는 것까지는 했는데 내부 ip로 접속하면 접속이 가능하지만 외부에서 도메인으로 접속하면 접속이 안 되는 문제가 있다. 원래 쓰던 nginx로 포트 설정해주면 될 것 같아서 해봤는데 안 됐다... 다른 글들 찾아보니 nginx도 컨테이너로 받아서 돌리던데... 무슨 이득이 있는 거지? 그리고 예제보니까 db컨테이너랑 프로젝트 컨테이너랑 묶어서 돌리던데 어캐하는 거


참고: https://learn.microsoft.com/ko-kr/dotnet/core/containers/sdk-publish

관련글

Linux 로그인 실패 로그 확인리눅스 외장하드 연결하기(마운트)
An unhandled error has occurred. Reload 🗙