Linux 시스템에서 Podman은 널리 사용되는 경량 컨테이너 엔진이지만 컨테이너를 운영할 때 몇 가지 세부 사항에 주의해야 합니다. 중요한 문제 중 하나는 보안과 안정성을 보장하기 위해 sudo 명령을 올바르게 사용하여 컨테이너를 관리하는 방법입니다. 이 문서에서는 sudo 명령을 사용하여 Podman 컨테이너를 적절하게 관리하는 방법을 설명합니다.
컨테이너는 현대 컴퓨팅의 필수적인 부분이며, 컨테이너 주변 인프라가 발전함에 따라 새롭고 더 나은 도구가 등장하기 시작했습니다. 과거에는 LXC를 사용하여 컨테이너를 실행할 수 있었지만 Docker가 인기를 얻으면서 점점 더 복잡해지기 시작했습니다. 마지막으로 Podman에서는 컨테이너 관리 시스템에서 기대했던 기능, 즉 컨테이너와 포드를 쉽게 구축, 실행 및 관리할 수 있게 해주는 데몬 없는 컨테이너 엔진을 얻습니다.
컨테이너는 제어 그룹 및 네임스페이스와 같은 Linux 커널 기능과 직접 상호 작용하며 이러한 네임스페이스에 수많은 새로운 프로세스를 생성합니다. 즉, 컨테이너를 실행하는 것은 실제로 Linux 시스템 내부에서 Linux 시스템을 실행하는 것입니다. 운영 체제의 관점에서 볼 때 이는 관리 및 권한이 있는 활동과 매우 유사해 보입니다. 일반 사용자는 일반적으로 컨테이너와 마찬가지로 시스템 리소스를 자유롭게 제어할 수 없으므로 기본적으로 Podman을 실행하려면 루트 또는 sudo 권한이 필요합니다. 그러나 이는 기본 설정일 뿐이며 사용 가능한 유일한 설정은 아닙니다. 이 문서에서는 일반 사용자가 sudo("rootless") 없이 Podman을 실행할 수 있도록 Linux 시스템을 구성하는 방법을 보여줍니다.
네임스페이스 사용자 ID
커널 네임스페이스는 본질적으로 Linux가 동일한 클래스에 속하는 프로세스를 추적하는 데 도움이 되는 가상의 구조입니다. 이것이 Linux의 "큐 가드레일"입니다. 한 대기열의 프로세스와 다른 대기열의 프로세스 사이에는 실제로 차이가 없지만 서로 "차단"될 수 있습니다. 한 프로세스 세트를 "컨테이너"로 선언하고 다른 프로세스 세트를 운영 체제로 선언하려면 이들을 별도로 유지하는 것이 중요합니다.
Linux는 사용자 ID(UID)와 그룹 ID(GID)를 사용하여 프로세스를 소유한 사용자 또는 그룹을 추적합니다. 일반적으로 사용자는 네임스페이스의 하위 프로세스에 할당된 1000개 정도의 슬레이브 UID에 액세스할 수 있습니다. Podman은 컨테이너를 시작한 사용자에게 할당된 전체 슬레이브 운영 체제를 실행하므로 기본 할당 슬레이브 UID 및 슬레이브 GID 이상이 필요합니다.
usermod 명령을 사용하면 사용자에게 더 많은 하위 UID와 하위 GID를 부여할 수 있습니다. 예를 들어, 사용자 tux에 더 많은 하위 UID와 하위 GID를 부여하려면 아직 할당되지 않은 사용자에 대해 적절하게 높은 UID(예: 200000)를 선택한 다음 이를 수천 단위로 늘립니다.
으아아아네임스페이스 액세스
네임스페이스 수에도 제한이 있습니다. 이는 일반적으로 매우 높게 설정됩니다. 커널 매개변수 도구인 systctl을 사용하여 사용자 네임스페이스 할당을 확인할 수 있습니다.
으아아아이것은 충분한 네임스페이스이며 배포판의 기본값일 수 있습니다. 배포판에 이 속성이 없거나 매우 낮게 설정된 경우 /etc/sysctl.d/userns.conf 파일에 다음과 같은 텍스트를 입력하여 생성할 수 있습니다.
으아아아이 설정 로드:
으아아아루트 권한 없이 컨테이너 실행
구성을 설정한 후 컴퓨터를 다시 시작하여 사용자 및 커널 매개변수 변경 사항이 로드되고 활성화되었는지 확인하세요.
다시 시작한 후 컨테이너 이미지를 실행해 보세요.
으아아아컨테이너는 명령과 같습니다
이 문서에서는 sudoer 파일 구성, 보안 구성 및 컨테이너 시작을 포함하여 Linux 시스템에서 Podman 컨테이너를 유지 관리하기 위해 sudo를 사용하는 올바른 자세에 대해 자세히 설명합니다. sudo를 적절하게 구성하고 사용하면 컨테이너의 보안과 안정성을 더 잘 보호하고 비즈니스 요구 사항을 더 잘 충족할 수 있습니다. 실제 운영에서는 민감한 정보를 주의 깊게 다루어 불필요한 손실이 발생하지 않도록 해야 한다는 점에 유의해야 합니다. 이 기사가 sudo 명령을 사용하여 Podman 컨테이너를 관리하는 기술을 더 잘 익히는 데 도움이 되기를 바랍니다.
위 내용은 Podman 컨테이너 실행을 위한 올바른 자세: Sudo 명령을 사용하여 Linux 시스템에서 컨테이너를 관리합니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!