Dockerfile - USER 지시문으로 인해 셸이 홈 디렉터리로 전환됩니까?

Dockerfile - USER 지시문으로 인해 셸이 홈 디렉터리로 전환됩니까?

루트로서 ansible을 사용하여 docker 컨테이너를 시작합니다.

FROM python:3.7-alpine3.9

ENV HOME /home/someteam

RUN apk add --no-cache --virtual .build-deps python3-dev gcc linux-headers musl-dev


RUN addgroup someteam --gid=5566; \

    adduser -G someteam -Du 5566 -d /home/someteam -m -s /bin/bash someteam; \

    chown -R someteam $HOME

USER someteam

ADD script.sh /home/someteam/script.sh

ENTRYPOINT ["/home/envteam/script.sh"]

로컬 테스트의 오류는 다음과 같습니다.

adduser: unrecognized option: d
BusyBox v1.29.3 (2019-01-24 07:45:07 UTC) multi-call binary.

Usage: adduser [OPTIONS] USER [GROUP]

Create new user, or add USER to GROUP

        -h DIR          Home directory
        -g GECOS        GECOS field
        -s SHELL        Login shell
        -G GRP          Group
        -S              Create a system user
        -D              Don't assign a password
        -H              Don't create home directory
        -u UID          User id
        -k SKEL         Skeleton directory (/etc/skel)
chown: unknown user someteam

두 번째 RUN명령어를 실행하기 전에 whoami다음과 같습니다 .root

문제는 ansible을 사용하여 docker 컨테이너를 시작할 때 쉘 명령 run이 script.sh상대 경로를 사용하지 않는다는 것입니다.

- name: Run docker container from ansible
  command: docker container run --rm -e SOMETHING={{somthing}}  111112223333.dkr.ecr.us-east-1.amazonaws.com/someteamteam/deploy:v1

1)

ADD명령이 실행될 것으로 예상됩니다 . 셸을 다음으로 전환 /home/someteam하시겠습니까 ? 아니면 여전히 필요한가요 ? 다음 과 함께 사용되는 중복 옵션USER someteam/home/someteamWORKDIR $HOMEadduser

2)

우리가 지시해야 합니까 chown?

관련 정보