반응형
docker 설치
리눅스 자동 설치 스크립트
$ sudo wget -qO- https://get.docker.com/ | sh
$ curl -fsSL https://get.docker.com -o get-docker.sh
$ sh get-docker.sh
우분투
$ sudo apt-get update
$ sudo apt-get install -y apt-transport-https ca-certificates curl software-properties-common
$ sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg | apt-key add
$ sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
$ sudo apt-get install docker-ce # 도커 엔진 설치
sudo 없이 docker 명령어 쓰기
$ sudo usermod -aG docker $USER # 현재 접속중인 사용자에게 권한주기
$ sudo usermod -aG docker user1 # user1 사용자에게 권한주기
이미지 관련
도커에서는 도커 이미지를 이용하여 컨테이너를 생성할 수 있는데,
도커 이미지를 이용하면 이미지에 설정해둔 대로 컨테이너의 구성환경을 적용할 수 있다.
이미지 목록 보기
$ docker images
이미지 검색
$ docker search [이미지 이름]
이미지 받기
$ docker pull [이미지 이름][:태그]
docker hub 에서 이미지를 다운받는다
태그는 생략 할 수 있으며 디폴트 값은 latest 이다
이미지 삭제
$ docker rm [이미지 id]
$ docker image prune -a
id는 앞에 4자리만 써도 된다
- rm -f : 실행중인 컨테이너의 이미지도 삭제
- image prune -a : 실행중이지 않은 이미지만 전체 삭제
컨테이너 관련
다양한 프로그램(nginx, database, WAS 등)을 컨테이너 라는 격리된 환경을 이용하여 실행시킬수 있다.
컨테이너 목록 보기
$ docker ps
$ docker ls
- 실행중인 컨테이너 목록을 출력한다
- -a 옵션 : 모든 컨테이너 목록 출력(종료된것도 출력)
컨테이너 실행
$ docker run [options] image[:TAG] [COMMAND] [ARG...]
옵션 | 설명 |
-a | 표준입력, 표준출력, 표준오류에 접근 |
-p | 호스트와 컨테이너의 포트를 연결 (포워딩) |
--volume, -v | 호스트와 컨테이너의 디렉토리를 연결(마운트) |
-i | 컨테이너의 표준 입력을 연다 |
--tty, -t | 단말기 디바이스를 사용 |
--name | 컨테이너 이름 지정 |
--rm | 명령 실행 완료 후 컨테이너를 자동으로 삭제 |
-d | 백그라운드에서 실행 |
- -it 옵션을 같이 사용하면 shell의 주도권을 호스트에서 컨테이너에게 준다
- run 은 create + start 의미 이다
컨테이너 시작
$ docker start [컨테이너 id 또는 name]
컨테이너 재시작
$ docker restart [컨테이너 id 또는 name]
컨테이너 접속
$ docker attach [컨테이너 id 또는 name]
컨테이너 정지
$ docker stop [컨테이너 id 또는 name]
- Bash Shell에서 exit 또는 Ctrl + d를 입력하면 컨테이너가 정지된다.
- Ctrl + p, Ctrl + q를 차례대로 입력하여 컨테이너를 정지하지 않고, 컨테이너에서 빠져나온다.
컨테이너 삭제
$ docker rm [컨테이너 id 또는 name]
$ docker rm `docker ps -a -q` # 모든 컨테이너 삭제
$ docker container prune -a # 실행하지 않는 모든 컨테이너 삭제
- docker system prune -a 실행하지 않는 모든 이미지, 컨테이너 삭제
docker hub
docker hub 로그인
$ docker login [옵션][서버]
$ docker login -u [id]
이미지 업로드
$ docker image push [id]/image name[:TAG]
docker hub 로그아웃
$ docker logout [서버]
참고
반응형
'DevOps > Docker' 카테고리의 다른 글
Docker로 ubuntu, apache, php 환경의 이미지 만들기 (0) | 2021.07.15 |
---|---|
[docker] Failed to get D-Bus connection 에러 해결 (0) | 2021.05.29 |
도커와 쿠버네티스 개념 정리 (0) | 2021.05.11 |
도커 이미지 레이어(Docker Image Layer) (0) | 2021.05.10 |
docker run 명령어 사용법, 옵션 (1) | 2021.05.08 |