일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- PHP
- react tailwind css
- mysql broken install
- 안드로이드
- Docker
- next.js tailwindcss
- react typescript
- 리액트 문법
- next.js tailwind css
- mysql error
- react 기초
- react tailwindcss
- mysql 삭제
- javascript
- 리액트 tailwindcss
- 도커
- Docker ubuntu
- next.js css framework
- mysql uninstall
- Android
- 리액트 tailwind css
- mysql 재설치
- Python
- mysql fix install
- 리눅스
- mysql 재설치 명령어
- 리액트
- mysql
- mysql purge
- react
- Today
- Total
Developer_hong
Docker 기본 명령어 본문
[도커 저장소 위치]
$ docker info | grep Root
Docker Root Dir: /var/lib/docker
[도커 서비스 저장소 위치 변경]
$ service docker status
* docker.service - Docker Application Container Engine
Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled)
-> 실행 파일 위치가 /lib/systemd/system/docker.service 라는 것을 확인
도커 경로 변경은
$ dockerd --help를 통해서 --data-root 를 통해 변경 가능하다는 것을 알수있다
...
--data-root string Root directory of persistent Docker state (default "/var/lib/docker")
...
$ vim /lib/systemd/system/docker.service
ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock
ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock --data-root=/data/
[도커 이미지 다운로드 & 실행]
$ docker run ubuntu:18.04
$ docker run ubuntu:latest
run명령어를 사용하면 사용할 이미지가 저장되어 있는지 확인하고
없다면 다운로드(pull)를 한 후 컨테이너를 생성(create)하고 시작(start) 합니다.
[도커 이미지 검색]
$ docker search ubuntu
-> ubuntu 가 포함된 도커 이미지 검색
[도커 이미지 다운로드]
docker pull open-liberty
-> open-liberty 도커 이미지 다운로드
[도커 컨테이너 실행]
$ docker run -d -it --name ubuntu ubuntu_test
-> ubuntu라는 도커 이미지를 ubuntu_test라는 컨테이너 이름으로 실행
$ docker run -d -it --name nginx -p 80:80 -p 443:443 nginx_test123
-> nginx 라는 도커 이미지를 nginx_test123라는 컨테이너 이름으로 실행
80 포트로 들어오는 요청 nginx_test123의 80 포트로 연결
443 포트로 들어오는 요청 nginx_test123의 443 포트로 연결
[도커 컨테이너 쉘 실행]
$ docker run --rm -it ubuntu:16.04 /bin/bash
$ docker run --rm -it ubuntu:latest /bin/bash
컨테이너 내부에 들어가기 위해 bash 쉘을 실행
키보드 입력을 위해 -it 옵션
프로세스가 종료되면 컨테이너가 자동으로 삭제되도록 --rm 옵션
exit로 bash 쉘을 종료하면 컨테이너도 같이 종료
* 기본 접속
docker exec -it server /bin/bash
* 관리자 권한(슈퍼 유저)으로 접속
docker exec -u root -t -i ubuntu:latest /bin/bash
[도커 컨테이너 리스트]
$ docker ps
$ docker ps -all
$ docker ps -aa
도커 컨테이너 리스트
종료된 컨테이너 포함하려면 -all 옵션
[도커 컨테이너 실행 방법]
$ docker start {name OR container ID}
ex) docker start test_docker
exit를 통해 나간 docker 이미지 재실행
[실행중인 도커 컨테이너 출력]
$ docker attach
실행한 프로세스 Bsah셸 또는 출력
[실행주인 도커 컨테이너 명령문 실행]
$ docker exec {name OR container ID} echo “Hello World”
/bin/bash 통하지 않고 외부에서 컨테이너 안의 명령 실행
[도커 컨테이너 정지]
$ docker stop {name OR container ID}
ex) docker stop test_docker
[도커 컨테이너 삭제]
$ dokcr rm {name OR container ID}
ex) docker rm test_docker
생선된 컨테이너 삭제
[도커 이미지 목록 출력]
$ docker images
도커가 다운로드한 이미지 목록
[도커 이미지 삭제]
$ docker rmi {name OR image ID}
ex) docker rmi ubuntu:lateest
이미지 삭제
name으로 삭제하면 이름가진 모든 이미지가 삭제되므로 주의. (ID값으로 진행하는게 좋다)
[실행중이지 않은 도커 컨테이너 삭제]
$ docker rm -v $(docker ps -a -q -f status=exited)
중지된 컨테이너를 일일이 삭제 하는 건 귀찮은 일입니다.
명령어를 입력하면 중지된 컨테이너 ID를 가져와서 한번에 삭제합니다.
[도커 컨테이너로 이미지 생성]
$ docker commit {name OR image ID} {new name}
ex) docker commit test1 test2
test1 컨테이너를 test2 이미지로 저장
[도커 컨테이너 bash 셸 종료]
CTRL + p + q
도커 컨테이너 종료하지 않고 터미널로 나가기
'프로그래밍 > Docker' 카테고리의 다른 글
[Docker] run -p,run -P, run --expose 차이 (0) | 2021.05.17 |
---|---|
[Docker] 2. 도커 컨테이너 이미지 저장 (0) | 2021.05.11 |
[Docker] 1. Linux ubuntu install + Mysql (0) | 2021.05.11 |