하드웨어 가상화 켜기 홍보 프라이버시 VDI
페이지 정보
작성자 Bright 작성일 25-06-26 06:39 조회 1 댓글 0본문
도커(Docker) 하드웨어가상화켜기 - 데이터 또는 프로그램을 격리시키는 기능 - 서버 환경을 컨테이너로 분할, 이를 다루는 기능을 제공하는 소프트웨어 - 도커 엔진 설치 필요 - 컨테이너를 만드려면 이미지 필요 - 하나의 도커에서 용량이 허락하는 한 여러 개의 컨테이너를 만들 수 있음 - 도커는 내부적으로 리눅스가 사용됨 - 컨테이너에서 동작시킬 프로그램도 리눅스용 프로그램데이터나 프로그램을 독립된 환경에 격리해야 하는 이유 - 프로그램 연동 의존성 문제서버 : 어떤 서비스를 제공하는 것 - 기능적 의미의 서버 - 웹 서버, 메일 서버 등 - 물리적 컴퓨터로서의 서버 - 실물 장비를 부르는 말하나의 물리적 컴퓨터로서의 서버에 여러 개의 기능적 의미의 서버를 둘 수 있음서버 운영체제윈도우 계열 - Windows유닉스 계열 - 리눅스 계열 - Red Hat, CentOS - Debian, Ubuntu - SUSE, openSUSE - 기타 - BSD 계열 - macOS - FreeBSD - NetBSD - 솔라리스 계열 - 하드웨어가상화켜기 Solaris, OpenSolaris - 기타서버용 운영체제로는 리눅스 또는 유닉스 계열을 주로 사용하며, 서버용 소프트웨어도 리눅스용 소프트웨어가 대다수를 차지함도커 환경에서 컨테이너를 사용하면 프로그램을 완전히 격리시킬 수 있음 ->무엇을 업데이트하더라도 서로 영향을 미치지 않음컨테이너는 자유롭게 옮길 수 있음 ->똑같은 상태로 튜닝한 컨테이너를 팀원 전원에게 배포해 모두가 동일한 개발환경 사용 가능 ->물리적 환경의 차이, 서버 구성의 차이를 무시할 수 있음도커 vs 가상화가상화 기술 - 가상의 물리 서버를 만드는 것 - 가상 : 물리적 대상을 소프트웨어로 대체했다는 의미 - 물리 서버와 동등하므로 운영체제도 아무 것이나 설치 가능도커 - 운영체제의 일부 기능을 호스트 컴퓨터에 의존 ->물리 서버에도 리눅스 기능 필요, 컨테이너 내용도 리눅스 운영체제도커의 구조컨테이너도커 엔진 (도커 소프트웨어)리눅스 운영체제 (서버 운영체제)서버 컴퓨터 (물리 서버)운영체제 - 소프트웨어나 프로그램의 명령을 하드웨어에 전달 - 커널, 그 외 주변 부분으로 구성도커는 기본적으로 리눅스용윈도우와 macOS에서 도커 구동하기 2가지 유형 하드웨어가상화켜기 - 가상 환경 위에 리눅스 운영체제를 설치하고 그 위에서 도커 실행 - '윈도우/macOS용 도커 데스크톱'처럼 도커를 실행하는데 필요한 리눅스 운영체제 포함 패키지 설치도커를 사용하려면 어떤 형태로든 리눅스 운영체제를 갖춰야 함Windows 기능 - 가상 머신 플랫폼, Hyper-V 필요컨테이너와 이미지 - 이미지 : 컨테이너를 만드는데 사용됨 - 이미지를 통해 같은 컨테이너를 여러 개 만들 수 있음 - 컨테이너로 이미지를 만들 수도 있음 - 도커 엔진 간 컨테이너를 이동시킬 수 있음 - 컨테이너 자체가 이동하는 것은 아니지만 이미지를 통해 컨테이너가 이동한 것과 같은 효과를 얻음Docker Hub is the world's largest library and community for container images Browse over 100,000 container images from software vendors, open-source projects, and the community. publisher program Deliver your business through Docker Hub Package and publish apps and plugins as containers in Doc...다양한 이미지 제공안전한 컨테이너 이미지 하드웨어가상화켜기 - 공식 이미지 사용 - 커스텀 이미지를 직접 만들어 사용컨테이너의 생애주기와 데이터 저장 ( Container Lifecycle ) - 컨테이너는 일종의 일회용품 - 컨테이너는 쉽게 만들 수 있으므로 업데이트하며 계속 사용하기보단 업데이트된 소프트웨어가 있는 새 컨테이너 사용이 좋음 - 컨테이너를 폐기하면 컨테이너 안에서 편집했던 파일은 사라짐 ->도커가 설치된 물리적 서버의 디스크를 마운트해 이 디스크에 데이터에 저장하면 컨테이너를 폐기해도 데이터 보존 가능도커의 구조와 성질 - 환경을 격리할 수 있음 - 독립된 환경 - 프로그램을 여러 개 띄울 수 있음 - 똑같은 애플리케이션도 여러 개 띄울 수 있음 - 이미지를 만들 수 있음 - 도커 레지스트리 - 이미지를 내려받기만 하면 됨 - 이미지를 직접 만들지 않아도 됨 - 교체하기 쉬움 - 업데이트가 쉬움 - 소프트웨어 교체가 쉬움 - 이동이 편리함 - 똑같은 컨테이너를 쉽게 만들 수 있음 - 환경 이동이 쉬움 하드웨어가상화켜기 - 개발환경을 배포하기 쉬움 - 커널이 없음 - 가벼움 - 배포판을 바꿀 수 있음도커의 장점 - 한 대의 물리 서버에 여러 대의 서버를 띄울 수 있음 - 서버 관리가 용이함 - 서버 고수가 아니어도 다루기 쉬움도커의 단점 - 리눅스용 소프트웨어밖에 지원하지 않음 - 호스트 서버에 문제가 생기면 모든 컨테이너에 영향이 미침 - 컨테이너 하나를 장기간에 걸쳐 사용할 때는 장점을 느끼기 어려움도커의 주 용도 - 팀원 모두에게 동일한 개발환경 제공 (동일한 환경을 여러 개 만들기) - 새로운 버전의 테스트 (격리된 환경 이용) - 동일한 서버가 여러 대 필요한 경우 (컨테이너 밖과 독립된 성질을 이용)도커 실습윈도우10에서 도커 이용하기 - 윈도우10 프로 64bit ->윈10 2020 봄 업데이트에서 WSL2 기능을 통해 윈도우10 홈에서도 도커 데스크톱 사용 가능 - CPU : SLAT 기능 지원 64bit processor - 메모리 : 4GB 이상 - BIOS에서 하드웨어가상화켜기 virtualization 활성화도커 설치하기Windows 기능 켜기/끄기 다음 항목 체크하기 - Hyper-V - Linux용 Windows 하위 시스템 - 가상 머신 플랫폼컴퓨터 재부팅리눅스 커널을 내려받아 업데이트윈도우용 도커 데스크톱 내려받기How to install Docker Desktop for Windows도커 설치 후 실행하면 위와 같은 화면 나타남설정에서 WSL 2가 사용되고 있는지 확인 컨테이너 기본 사용법 - 컨테이너를 다루는 모든 명령은 docker로 시작함>docker [커맨드] [옵션] [대상] [인자]ex) >docker container run -d penguin --mode=1컨테이너의 생성과 삭제, 실행, 정지 - docker pull ->docker create ->docker start - 위 명령을 한꺼번에 수행하는 명령어 : docker run컨테이너의 생명주기 create ->start ->stop ->rm ->createdocker ps 커맨드 - 컨테이너의 목록을 출력 - docker ps -a : 현재 존재하는 컨테이너(정지 상태 컨테이너 포함)의 목록 출력실습 - 컨테이너 생성, 실행, 상태 확인, 종료, 삭제아파치 웹 서버 기능을 제공하는 컨테이너를 생성이미지 파일이 없으면 자동으로 다운받아짐도커 데스크톱에서도 하드웨어가상화켜기 컨테이너를 확인할 수 있음컨테이너 종료>docker stop apa000ex1컨테이너 삭제>docker rm apa000ex1컨테이너의 통신 - 컨테이너에 호스트 포트번호를 중복되지 않게 지정하여 통신 - 포트번호는 동일해도 무관통신이 가능한 컨테이너 생성위 주소로 접속하면 웹페이지가 나타나는 것을 확인할 수 있음컨테이너 제거아파치 컨테이너 여러 개 실행하기컨테이너 종료 및 삭제nginx로도 실습해보기 >docker run --name nginx000ex6 -d -p 8084:80 nginx >docker ps >docker stop nginx000ex6 >docker rm nginx000ex6 >docker ps -aMySQL 컨테이너 실행하기 >docker run --name mysql000ex7 -dit -e MYSQL_ROOT_PASSWORD=myrootpass mysql >docker ps >docker stop mysql000ex7 >docker rm mysql000ex7 >docker ps -a이미지 삭제컨테이너를 삭제해도 이미지는 그대로 남기 때문에 사용하지 않는 이미지는 삭제해야 한다.>docker image ls>docker image rm [이미지 이름]
댓글목록 0
등록된 댓글이 없습니다.