반응형
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
We and third parties use cookies or similar technologies ("Cookies") as described below to collect and process personal data, such as your IP address or browser information. You can learn more about how this site uses Cookies by reading our privacy policy
hub.docker.com
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 |