docker 컨테이너 내부에만 존재하는 사용자를 사용하여 호스트의 폴더를 chown

docker 컨테이너 내부에만 존재하는 사용자를 사용하여 호스트의 폴더를 chown

따라서 기본적으로 도커 컨테이너가 실행되고 컨테이너 내부에 호스트 파일 시스템이 마운트되어 내부 프로세스가 해당 파일에 액세스할 수 있습니다. Docker 컨테이너 내부에서 실행되는 프로세스에는 마운트된 파일 시스템의 파일이 소유권으로 필요하지만 소유자(내 호스트 사용자)가 다릅니다. 호스트의 소유권을 컨테이너의 소유권으로 변경하려고 할 때마다 chown이 잘못된 사용자 오류를 보고합니다.

$ sudo chown -R odoo:odoo *
chown: invalid user: ‘odoo:odoo’

존재하지 않는 사용자를 사용하여 호스트에서 파일을 삭제하는 것이 가능합니까? 아니면 일을 하는 다른 방법이 있나요?

그런데 설치된 폴더에는 이 프로세스에 필요한 추가 모듈이 포함되어 있습니다. 저는 호스트 컴퓨터에서 이러한 모듈을 개발한 다음 다시 복사하지 않고 docker를 사용하여 직접 테스트하고 있습니다.

답변1

이름 대신 UID 번호를 사용하세요. 예를 들어 odooUID가 1023이고 GID가 475인 경우 다음 번호를 직접 사용할 수 있습니다.

sudo chown -R 1023:475 *

관련 정보