도커 사용자 쓰기 권한 문제


0

Docker를 배우고 있습니다. Dockerfile에 다음 줄이 있습니다.

FROM debian:stable

RUN apt-get update && apt-get install -y \
    git \
    vim \
    ruby \
    rubygems \
    bundler \
    nodejs \
    build-essential

RUN adduser --disabled-login admin
RUN usermod -aG sudo admin
USER admin
RUN whoami
COPY sampleapp /app
RUN export GEM_HOME=$HOME/.gem
RUN gem install rake
WORKDIR /app
RUN bundle install

실행 docker build하면 출력에 다음 오류가 발생합니다.

ERROR:  While executing gem ... (Gem::FilePermissionError)
    You don't have write permissions for the /var/lib/gems/2.3.0 directory.

이 오류를 어떻게 해결할 수 있습니까?

  • 관리자를 위해이 디렉토리에 대한 액세스 권한을 부여해야합니까
  • GEM_HOME을 ~ / home 대신 다른 곳으로 변경해야합니까?

그것은 당신이하고 짓는 일에 달려 있습니다. 또한 어떤 줄이 정확하게 오류를 일으키는 지 확인해야합니다 (루비에 익숙하지는 않지만 보석 설치 줄 또는 번들 설치 줄이 될 것입니다. 또한 물건을 복사하는 /app이유는 무엇입니까? 집을 설정 $HOME하시겠습니까? 현재 사용자에게 해당 권한이 누락되었을 수 있습니다 . sudo gem ...또는 실행해야 할 수도 sudo bundle ...있습니다
Seth

답변:


0

가장 먼저 제안하는 것은 dockerfile을 실행하는 사용자의 사용자 권한과 / var / lib / gems / ... 디렉토리의 권한을 보는 것입니다. 쓰기 및 실행 권한이 dockerfile의 모든 명령을 실행하기에 충분한 지 확인하십시오.

둘째, Docker를 처음 사용하기 때문에 추가 정보를 보려면 Docker 명령의 리소스에 대한 링크가 있습니다 .

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.