개발자에게 스터디란 꼭 필요한 부분..
도커 컨테이너로 토이프로젝트를 만들어 실습해보고자 한다.
도커란 ?
Docker는 리눅스 컨테이너에 어플리케이션을 신속하게 구축하고 테스트 및 배포할 수 있는 소프트웨어 플랫폼이다. Docker는 Go언어로 작성되어있으며, 소프트웨어를 컨테이너라는 표준화 된 유닛으로 패키징한다.
이 컨테이너는 라이브러리, 시스템도구, 코드, 런타임 등 소프트웨어를 실행 하는데에 필요한 모든것이 포함되어있다.
도커를 사용하면 환경에 구애받지않고 어플리케이션을 배포 및 확장 할 수 있다.
아주 쉽게 가상화 머신을 생성하고 관리할 수 있어 2013년 배포 이후 꾸준히 인기가 좋아지고있다.
도커파일 하나만 공유하면 다른 환경에서도 같은 셋팅의 가상화머신을 생성 할 수 있다.
도커의 장점
1. 개발과 배포가 편해진다
2. 어플리케이션 독립성과 확장성이 높아진다.
Microservices 구조로 여러 모듈을 독립된 형태로 구성하기 때문에 언어에 종속되지않고, 각 모듈의 관리가 쉽고, 부하를 분산할 수 있다.
도커 사이트 : https://docs.docker.com/desktop/mac/
Docker Desktop for Mac user manual
docs.docker.com
도커 이미지 허브 : https://hub.docker.com/search?q=&type=image
Docker Hub
hub.docker.com
도커 엔진 설치하기(docker install)
0. 호스트 운영체제가 최소한 3.10 버전 이상이어야 토커 컨테이너를 정상적으로 사용 할 수가 있다.
명령어 : uname -r
오래된 버전의 커널을 사용한다면 도커가 정상적으로 작동하지 않을 수 있다.
1. 위의 도커 사이트에서 설치파일을 다운 받는다.
버튼이 두가지로 intel chip, apple chip 두 가지 선택이 있는데
본인의 맥에서 [이 맥에 관하여] 에 들어가서 프로세서를 확인하면된다
2. 다운받은 dmg 파일을 실행하여 앱을 설치한다.
3. 도커 응용프로그램 설치가 완료되면,
필요한 권한을 얻어야한다는 팝업이 뜬다. 맥 password를 입력해 권한을 준다
4. 처음에 실행중인 컨테이너가 없다는 No containers running 메세지가 뜨며 아래 명령어로 실행시키라고 알려준다
명령어 : docker run -d -p 80:80 docker/getting-started
Last login: Tue Aug 31 10:31:39 on ttys000
➜ ~ docker run -d -p 80:80 docker/getting-started
Unable to find image 'docker/getting-started:latest' locally
latest: Pulling from docker/getting-started
540db60ca938: Pull complete
0ae30075c5da: Pull complete
9da81141e74e: Pull complete
b2e41dd2ded0: Pull complete
7f40e809fb2d: Pull complete
758848c48411: Pull complete
23ded5c3e3fe: Pull complete
38a847d4d941: Pull complete
Digest: sha256:10555bb0c50e13fc4dd965ddb5f00e948ffa53c13ff15dcdc85b7ab65e1f240b
Status: Downloaded newer image for docker/getting-started:latest
83311a9ddd72fc225139f1dfe285663decc817f8795fd5d488c36277cfd9663f
➜ ~
5. 도커 설치 확인
명령어 : docker version / docker -v
터미널에 명령어를 날려확인 가능하다.
도커 버전을 살펴보면 client와 server가 있음을 확인할 수 있다.
도커(docker) 명령어
버전 확인 | $ docker -version |
이미지 다운로드 | $ docker pull [이미지 명] |
다운로드된 이미지 목록 | $ docker images |
컨테이너 생성 | $ docker create [옵션] [이미지 명] |
컨테이너 생성 및 실행 | $ docker run [옵션] [이미지 명] |
컨테이너 실행 | $ docker start [컨테이너 명] |
컨테이너 재실행 | $ docker restart [컨테이너 명] |
컨테이너 접속 | $ docker attach [컨테이너 명] |
컨테이너 정지 | $ docker stop [컨테이너 명] |
실행중인 컨테이너 목록 | $ docker ps |
정지된 컨테이너 목록 확인 | $ docker ps -a |
컨테이너 명 변경 | $ docker rename [기존 컨테이너 명] [새로운 컨테이너 명] |
컨테이너 삭제 | $ docker rm [컨테이너 명] |
'IT > Server' 카테고리의 다른 글
Swagger 설정하기 (gradle) (0) | 2021.12.17 |
---|---|
[Docker] 도커/쿠버네티스 실습 기록 (0) | 2021.09.01 |
[Pinpoint] Pinpoint란? (0) | 2021.06.10 |
[JPA]JPA란? (0) | 2021.05.27 |
[Spring] @RequestMapping-> @GetMapping , @PostMapping (0) | 2021.05.12 |