본문 바로가기

docker4

도커 명령어 모음 일반 명령어 docker ==> 도커 관련 설명 docker -v ==> 도커 버전 확인 rm docker rm ==> 도커 삭제(보통 docker stop을 했을 때 docker ps -a와 함께 사용) docker rm -f ==> 실행중인 컨테이너 삭제 stop docker stop ==> 도커 중단 ps docker ps ==> 도커 프로세스 리스트 확인 docker ps -a ==> 도커 확인 docker container ls -a ==> 전체 컨테이너 목록 확인 도커 실행과 생성 docker run ==> 도커 실행 docker run -i -t ==> 도커를 입출력 모드와 tty 서버로 실행 tty는 물리적인 콘솔에서 사람이 직접 조작하는 개념. pty는 telnet처럼 원격에서 접속하거나.. 2024. 3. 2.
도커 엔진을 구성하는 도커 이미지와 도커 컨테이너 도커는 종합적으로 보면 하나의 큰 리눅스 컨테이너이다. 우리가 도커를 바이너리 파일로 설치하거나 다운로드를 받게 된다면 실제로는 도커 엔진을 다운받는 것과 똑같다. 또한, 도커를 이용해서 인프라를 구축하거나 개발을 한다는 말은 도커 엔진을 이용해서 인프라를 구축 및 개발한다는 말이다. (자세한 설명) 컨테이너 기반 가상화는 도커 엔진 위에 애플리케이션 실행에 필요한 바이너리만 올라간다. OS 가상화(HiperVisor)를 보면 Host OS와 완전히 분리되는 장점은 있지만 OS위에 OS를 올리기 때문에 무겁고 느리다. 하지만, 컨테이너 기반 가상화는 Host OS 그리고 도커 엔진위에서 바로 동작하며 Host의 커널을 공유한다. (커널을 공유하게 되면 I/O처리가 쉽게 되어 성능의 효율을 높일 수 있음).. 2024. 3. 2.
도커가 배포할 때 필요한 이유 도커는 이미 없어선 안되며 큰 인기를 끌고있다. 특히, 도커를 사용하면 아주 쉬운 배포가 가능해진다. 그렇다면 도커는 어떻게 배포를 구현할까? 3가지 시대로 나눠서 도커의 배포에 대해 설명한다. 전통적인 배포의 시대 애플리케이션을 하나의 물리 서버에서 실행 단점 하나의 물리 서버에서 여러 애플리케이션을 실행(Spring, Jenkins, Nginx 등)한다면 각각의 애플리케이션이 잡는 리소스들이 너무 크다. 또한, 조율하기 어렵다. 어떤 애플리케이션은 서버의 리소스를 많이 잡을 수 있고 다른 애플리케이션은 적을 수도 있고 이런 것들이 여러 개가 있을 수 있다. 해결책 위의 단점을 해결할 수 있는 간단한 해결 방법은 당연하게 새로운 물리 서버 증설이다. 그러나 하지만, 물리 서버를 많이 유지하고 관리하는 .. 2024. 3. 1.
Docker란? Docker 설명에 앞서 Container는 - 애플리케이션이 동작하기 위해 실행 파일 및 엔진 등을 패키지화하고 격리하는 기술이다. - 따라서, 인프라를 쉽고 빠르게 관리 할 수 있다. 그렇다면 Docker는 무엇인가? - 기존의 리눅스 컨테이너 기술을 활용 - 애플리케이션을 컨테이너로 좀 더 쉽게 활용 가능한 Go언어기반 오픈소스 - 기존의 하이퍼바이저를 사용한 가상 머신과 달리 리눅스로 운영체제가 고정되어 있어, - 운영체제별 작업이 줄어들어 성능이 향상된다. - Docker에는 다양한 프로젝트가 존재(아래는 그 예시) - Docker 프로젝트는 Docker Engine(Docker)를 효율적으로 사용할 수 있도록 도와준다. 그렇다면 Docker의 사용 이유? - 앞서, 잠깐 언급했던 것과 같이 D.. 2024. 1. 27.