Docker5 Docker - REMnux Container install Docker Hub의 REMnux 리포지토리에 호스팅 된 사전 빌드 된 이미지를 사용하여 REMnux 배포만을 Docker 컨테이너로 실행할 수 있다. Local Interactive Shell Docker가 설치되어있는 경우 아래 예시의 명령을 사용하여 대화 형 모드에서 REMnux distro 컨테이너를 시작할 수 있다. 시스템에 distro 이미지가 배포되지 않은 경우 자동으로 다운로드 한다. (약 5GB) root@Docker:/tmp# docker run --rm -it -u remnux remnux/remnux distro bash 로컬 디렉토리를 컨테이너의 /home/remnux/file 디렉토리에 매핑하려면 아래 예시와 같이 적절한 디렉토리 이름을 제공하여 lile this 명령을 사용할 .. 2020. 10. 2. Docker - cgroups Cgroups(Control Groups)? 리눅스 커널 기능중의 하나로, 시스템의 자원(Resource)를 제어할 수 있게한다. 자원에 대해서 그룹을 생성할 수 있으며, 그 그룹을 특정 사용자가 사용할 수 있도록 소유권을 준다. 사용자가 프로그램을 실행할 때에 cgroup을 할당하면 거기에 해당하는 자원만큼만을 사용한다. cgroups는 다음 리소스를 제어할 수 있다. Memory CPU I/O Network Device node(/dev/) References 1. systemv - "Docker 기본 원리" linux.systemv.pe.kr/docker-%EA%B8%B0%EB%B3%B8-%EC%9B%90%EB%A6%AC/ Docker 기본 원리 - Voyager of Linux Docker 는 L.. 2020. 9. 26. docker - namespace NameSpace ? 리눅스에서는 접속한 게스트 별로 독립적인 공간을 제공하고 서로가 충돌하지 않도록 격리시키는 namespace 기능을 커널에 내장하고 있다. 시스템 리소스를 프로세스의 전용 자원처럼 보이게 하고, 다른 프로세스와 격리시키는 기능이다.(격리된 환경 제공) NameSpace는 6개로 분류된다. 구분 설명 mmt (FileSystem Mount) 호스트 파일시스템에 구애받지 않고 독립적으로 파일시스템을 마운트하거나 언마운트가 가능하다. (파일시스템의 마운트 지점을 분할하여 격리한다.) pid (Process) 독립적인 프로세스 공간을 할당한다. (Process ID를 분할) net (Network) namespace간에 network 충돌을 방지한다. (중복 포트 바인딩 등) ipc (Sy.. 2020. 9. 20. Docker - chroot chroot Jail(감옥), 파일시스템을 격리하는 기술을 이용해 마치 독립된 하나의 운영체제처럼 사용. /* chroot : 보안 등을 위해 새로운 가상의 루트 디렉토리를 생성하여 원격 서비스로 접속할 경우 설정 디렉토리의 상위로 이동이 불가능하게 하는 명령 */ namespace, cgroup, union mount를 비롯한 컨테이너를 구현하기 위한(격리된 프로세스를 생성하기 위한) 여러가지 기능이 있다. 그중에서도 가장 오래되고 기본이 되는 것은 프로세스가 실행되는 루트를 변경하는 일이다. chroot는 이름에서 유추해볼 수 있듯 "Change Root (directory)"라는 의미를 가지고 있다. 여기서 루트는 사용자가 아니라 "/", 시스템 최상위 디렉터리를 의미하며, 일반적인 프로세스는 이 .. 2020. 9. 20. 이전 1 2 다음