เจเฉฐเจเฉเจจเจฐ เจตเจฟเจเจฒเฉเจเจ เจธเจพเจฐเฉเจเจ เจชเฉเจฐเจเจฟเจฐเจฟเจเจตเจพเจ เจฐเฉเจ เจเจชเจญเฉเจเจคเจพ เจฆเฉ เจคเฉเจฐ 'เจคเฉ เจเฉฑเจฒเจฃเจเฉเจเจ, เจเจฆเฉเจ เจคเฉฑเจ เจคเฉเจธเฉเจ เจเจธ เจจเฉเฉฐ เจเจพเจธ เจคเจฐเฉเจเฉ เจจเจพเจฒ เจจเจฟเจธเจผเจเจฟเจค เจจเจนเฉเจ เจเจฐเจฆเฉ เจนเฉเฅค เจเจน เจฌเจนเฉเจค เจธเฉเจตเจฟเจงเจพเจเจจเจ เจเจพเจชเจฆเจพ เจนเฉ, เจเจฟเจเจเจเจฟ เจเจธ เจเจชเจญเฉเจเจคเจพ 'เจคเฉ เจเฉเจ เจชเจพเจฌเฉฐเจฆเฉเจเจ เจจเจนเฉเจ เจนเจจเฅค เจเจธ เจฒเจ เจฐเฉเจ เจฆเฉ เจคเฉเจฐ 'เจคเฉ เจเฉฐเจฎ เจเจฐเจจเจพ เจธเฉเจฐเฉฑเจเจฟเจ เจฆเฉเจฐเจฟเจธเจผเจเฉเจเฉเจฃ เจคเฉเจ เจเจฒเจค เจนเฉเฅค เจเฉเจเจฐ เจเจนเจจเจพเจ เจฆเฉ เจธเจนเฉ เจฆเจฟเจฎเจพเจ เจตเจฟเฉฑเจ เจเฉเจ เจตเฉ เจฐเฉเจ เจ เจงเจฟเจเจพเจฐเจพเจ เจฆเฉ เจจเจพเจฒ เจธเจฅเจพเจจเจ เจเฉฐเจชเจฟเจเจเจฐ 'เจคเฉ เจเฉฐเจฎ เจจเจนเฉเจ เจเจฐเจฆเจพ, เจคเจพเจ เจฌเจนเฉเจค เจธเจพเจฐเฉ เจเฉฐเจเฉเจจเจฐเจพเจ เจตเจฟเฉฑเจ เจฐเฉเจ เจฆเฉ เจ เจงเฉเจจ เจชเฉเจฐเจเจฟเจฐเจฟเจเจตเจพเจ เจจเฉเฉฐ เจเจฒเจพเจเจเจฆเฉ เจนเจจเฅค
เจเฉฑเจฅเฉ เจนเจฎเฉเจธเจผเจพ เจฌเฉฑเจ เจนเฉเฉฐเจฆเฉ เจนเจจ เจเฉ เจฎเจพเจฒเจตเฉเจ เจฐ เจจเฉเฉฐ เจเฉฐเจเฉเจจเจฐ เจคเฉเจ เจฌเจเจฃ เจ เจคเฉ เจนเฉเจธเจ เจเฉฐเจชเจฟเจเจเจฐ 'เจคเฉ เจเจพเจฃ เจฆเฉ เจเจเจพเจเจผเจค เจฆเจฟเฉฐเจฆเฉ เจนเจจเฅค เจธเจญ เจคเฉเจ เจญเฉเฉเฉ เจฎเฉฐเจจเจฆเฉ เจนเฉเจ, เจธเจพเจจเฉเฉฐ เจเจน เจฏเจเฉเจจเฉ เจฌเจฃเจพเจเจฃเจพ เจเจพเจนเฉเจฆเจพ เจนเฉ เจเจฟ เจเฉฐเจเฉเจจเจฐ เจฆเฉ เจ เฉฐเจฆเจฐ เจชเฉเจฐเจเจฟเจฐเจฟเจเจตเจพเจ เจเฉฑเจ เจเจชเจญเฉเจเจคเจพ เจฆเฉเจเจฐเจพ เจเจฒเจพเจเจเจ เจเจพเจเจฆเฉเจเจ เจนเจจ เจเจฟเจธ เจเฉเจฒ เจนเฉเจธเจ เจฎเจธเจผเฉเจจ 'เจคเฉ เจเฉเจ เจ เจงเจฟเจเจพเจฐ เจจเจนเฉเจ เจนเจจเฅค
เจเฉฑเจ เจเจชเจญเฉเจเจคเจพ เจฌเจฃเจพเจเจฃเจพ
เจเฉฑเจ เจเฉฐเจเฉเจจเจฐ เจตเจฟเฉฑเจ เจเฉฑเจ เจเจชเจญเฉเจเจคเจพ เจฌเจฃเจพเจเจฃเจพ เจเจธเจจเฉเฉฐ เจฒเฉเจจเจเจธ เจกเจฟเจธเจเจฐเฉเจฌเจฟเจเจธเจผเจจ เจตเจฟเฉฑเจ เจฌเจฃเจพเจเจฃ เจคเฉเจ เจตเฉฑเจเจฐเจพ เจจเจนเฉเจ เจนเฉเฅค เจนเจพเจฒเจพเจเจเจฟ, เจตเฉฑเจ-เจตเฉฑเจ เจฌเฉเจธ เจเจฟเฉฑเจคเจฐเจพเจ เจฒเจ เจเจฎเจพเจเจกเจพเจ เจตเฉฑเจ-เจตเฉฑเจ เจนเฉ เจธเจเจฆเฉเจเจ เจนเจจเฅค
เจกเฉเจฌเฉเจ เจจ-เจ เจงเจพเจฐเจฟเจค เจกเจฟเจธเจเจฐเฉเจฌเจฟเจเจธเจผเจจเจพเจ เจฒเจ, เจคเฉเจนเจพเจจเฉเฉฐ เจกเฉเจเจฐเจซเจพเจเจฒ เจตเจฟเฉฑเจ เจนเฉเจ เจฒเจฟเจเจฟเจเจ เจจเฉเฉฐ เจเฉเฉเจจ เจฆเฉ เจฒเฉเฉ เจนเฉ:
RUN groupadd --gid 2000 node
&& useradd --uid 2000 --gid node --shell /bin/bash --create-home node
เจ เจฒเจชเจพเจเจจ เจฒเจ:
RUN addgroup -g 2000 node
&& adduser -u 2000 -G node -s /bin/sh -D node
เจเจชเจญเฉเจเจคเจพ เจคเฉเจ เจชเฉเจฐเจเจฟเจฐเจฟเจเจตเจพเจ เจเฉฑเจฒ เจฐเจนเฉเจเจ เจนเจจ
UID 2000 เจตเจพเจฒเฉ เจเจชเจญเฉเจเจคเจพ เจตเจเฉเจ เจ เจเจฒเฉเจเจ เจธเจพเจฐเฉเจเจ เจชเฉเจฐเจเจฟเจฐเจฟเจเจตเจพเจ เจจเฉเฉฐ เจเจฒเจพเจเจฃ เจฒเจ, เจเจฒเจพเจ:
USER 2000
เจจเฉเจก เจเจชเจญเฉเจเจคเจพ เจตเจเฉเจ เจ เจเจฒเฉเจเจ เจธเจพเจฐเฉเจเจ เจชเฉเจฐเจเจฟเจฐเจฟเจเจตเจพเจ เจจเฉเฉฐ เจเจฒเจพเจเจฃ เจฒเจ, เจเจฒเจพเจ:
USER node
เจตเจฟเจ เจนเฉเจฐ เจชเฉเฉเจนเฉ
เจฎเจพเจเจเจเจฟเฉฐเจ เจตเจพเจฒเฉเจ เจฎ
เจเฉฐเจเฉเจจเจฐ เจฆเฉ เจ เฉฐเจฆเจฐ เจตเจพเจฒเฉเจ เจฎ เจฎเจพเจเจเจ เจเจฐเจฆเฉ เจธเจฎเฉเจ, เจเจชเจญเฉเจเจคเจพ เจจเฉเฉฐ เจซเจพเจเจฒเจพเจ เจจเฉเฉฐ เจชเฉเฉเจนเจจ เจ เจคเฉ/เจเจพเจ เจฒเจฟเจเจฃ เจฆเฉ เจฏเฉเจเจคเจพ เจชเฉเจฐเจฆเจพเจจ เจเจฐเฉเฅค เจ เจเจฟเจนเจพ เจเจฐเจจ เจฒเจ, เจเฉฐเจเฉเจจเจฐ เจตเจฟเฉฑเจ เจเจชเจญเฉเจเจคเจพ เจฆเฉ UID (GID) เจ เจคเฉ เจเฉฐเจเฉเจจเจฐ เจคเฉเจ เจฌเจพเจนเจฐเจฒเฉ เจเจชเจญเฉเจเจคเจพ เจเจฟเจธ เจเฉเจฒ เจซเจพเจเจฒ เจคเฉฑเจ เจชเจนเฉเฉฐเจ เจเจฐเจจ เจฒเจ เจเจเจฟเจค เจ เจจเฉเจฎเจคเฉเจเจ เจนเจจ, เจฆเจพ เจฎเฉเจฒ เจนเฉเจฃเจพ เจเจพเจนเฉเจฆเจพ เจนเฉเฅค เจเจธ เจธเจฅเจฟเจคเฉ เจตเจฟเฉฑเจ, เจเจชเจญเฉเจเจคเจพ เจจเจพเจฎ เจฎเจพเจเจจเฉ เจจเจนเฉเจ เจฐเฉฑเจเจฆเฉเฅค
เจ เจเจธเจฐ เจเฉฑเจ เจฒเฉเจจเจเจธ เจเฉฐเจชเจฟเจเจเจฐ เจเฉฑเจคเฉ, เจเฉฑเจ เจเจชเจญเฉเจเจคเจพ เจฆเจพ UID เจ เจคเฉ GID 1000 เจฆเฉ เจฌเจฐเจพเจฌเจฐ เจนเฉเฉฐเจฆเจพ เจนเฉเฅค เจเจน เจชเจเจพเจฃเจเจฐเจคเจพ เจเฉฐเจชเจฟเจเจเจฐ เจฆเฉ เจชเจนเจฟเจฒเฉ เจเจชเจญเฉเจเจคเจพ เจจเฉเฉฐ เจจเจฟเจฐเจงเจพเจฐเจค เจเฉเจคเฉ เจเจพเจเจฆเฉ เจนเจจเฅค
เจเจชเจฃเฉ เจชเจเจพเจฃเจเจฐเจคเจพเจตเจพเจ เจจเฉเฉฐ เจฒเฉฑเจญเจฃเจพ เจเจธเจพเจจ เจนเฉ:
id
เจคเฉเจธเฉเจ เจเจชเจฃเฉ เจเจชเจญเฉเจเจคเจพ เจฌเจพเจฐเฉ เจตเจฟเจเจชเจ เจเจพเจฃเจเจพเจฐเฉ เจชเฉเจฐเจพเจชเจค เจเจฐเฉเจเฉเฅค
เจเจฆเจพเจนเจฐเจจเจพเจ เจตเจฟเฉฑเจเฉเจ 2000 เจจเฉเฉฐ เจเจชเจฃเฉ เจชเจเจพเจฃเจเจฐเจคเจพ เจจเจพเจฒ เจฌเจฆเจฒเฉ เจ
เจคเฉ เจธเจญ เจเฉเจ เจ เฉเจ เจนเฉ เจเจพเจตเฉเจเจพเฅค
เจเฉฑเจ เจเจชเจญเฉเจเจคเจพ เจจเฉเฉฐ UID เจ เจคเฉ GID เจจเจฟเจฐเจงเจพเจฐเจค เจเจฐเจจเจพ
เจเฉเจเจฐ เจเจชเจญเฉเจเจคเจพ เจชเจนเจฟเจฒเจพเจ เจฌเจฃเจพเจเจ เจเจฟเจ เจธเฉ, เจชเจฐ เจคเฉเจนเจพเจจเฉเฉฐ เจชเจเจพเจฃเจเจฐเจคเจพเจตเจพเจ เจจเฉเฉฐ เจฌเจฆเจฒเจฃ เจฆเฉ เจฒเฉเฉ เจนเฉ, เจคเจพเจ เจคเฉเจธเฉเจ เจเจธเจจเฉเฉฐ เจเจธ เจคเจฐเฉเจนเจพเจ เจเจฐ เจธเจเจฆเฉ เจนเฉ:
RUN usermod -u 1000 node
&& groupmod -g 1000 node
เจเฉเจเจฐ เจคเฉเจธเฉเจ เจ เจฒเจชเจพเจเจจ เจฌเฉเจธ เจเจฟเฉฑเจคเจฐ เจฆเฉ เจตเจฐเจคเฉเจ เจเจฐ เจฐเจนเฉ เจนเฉ, เจคเจพเจ เจคเฉเจนเจพเจจเฉเฉฐ เจธเจผเฉเจกเฉ เจชเฉเจเฉเจ เจจเฉเฉฐ เจธเจฅเจพเจชเจฟเจค เจเจฐเจจ เจฆเฉ เจฒเฉเฉ เจนเฉ:
RUN apk add โno-cache shadow
เจเจฟเฉฑเจคเจฐ เจฌเจฃเจพเจเจฃ เจตเฉเจฒเฉ เจเฉฐเจเฉเจจเจฐ เจฆเฉ เจ เฉฐเจฆเจฐ เจเจชเจญเฉเจเจคเจพ ID เจชเจพเจธ เจเจฐเจจเจพ
เจเฉเจเจฐ เจคเฉเจนเจพเจกเฉ เจเจเจกเฉ เจ เจคเฉ เจชเฉเจฐเฉเจเฉเจเจ 'เจคเฉ เจเฉฐเจฎ เจเจฐเจจ เจตเจพเจฒเฉ เจธเจพเจฐเฉ เจฒเฉเจเจพเจ เจฆเฉ เจเจเจกเฉ เจฎเฉเจฒ เจเจพเจเจฆเฉ เจนเฉ, เจคเจพเจ เจฌเจธ เจเจธ เจเจเจกเฉ เจจเฉเฉฐ เจกเฉเจเจฐเจซเจพเจเจฒ เจตเจฟเฉฑเจ เจฆเจฟเจเฅค เจนเจพเจฒเจพเจเจเจฟ, เจ เจเจธเจฐ เจเจชเจญเฉเจเจคเจพ เจเจเจกเฉ เจฎเฉเจฒ เจจเจนเฉเจ เจเจพเจเจฆเฉเฅค
เจคเฉเจธเฉเจ เจเฉ เจเจพเจนเฉเฉฐเจฆเฉ เจนเฉ เจเจธเจจเฉเฉฐ เจเจฟเจตเฉเจ เจชเฉเจฐเจพเจชเจค เจเจฐเจจเจพ เจนเฉ, เจเจน เจคเฉเจฐเฉฐเจค เจธเจชเฉฑเจธเจผเจ เจจเจนเฉเจ เจนเฉ. เจฎเฉเจฐเฉ เจฒเจ, เจกเฉเจเจฐ เจจเฉเฉฐ เจฎเจพเจธเจเจฐ เจเจฐเจจ เจฆเฉ เจชเฉเจฐเจเจฟเจฐเจฟเจ เจตเจฟเจ เจเจน เจธเจญ เจคเฉเจ เจฎเฉเจธเจผเจเจฒ เจเฉเจเจผ เจธเฉ. เจฌเจนเฉเจค เจธเจพเจฐเฉ เจกเฉเจเจฐ เจเจชเจญเฉเจเจคเจพเจตเจพเจ เจจเฉเฉฐ เจเจน เจ เจนเจฟเจธเจพเจธ เจจเจนเฉเจ เจนเฉเฉฐเจฆเจพ เจเจฟ เจเฉฑเจ เจเจฟเฉฑเจคเจฐ เจฆเฉ เจเฉเจตเจจ เจตเจฟเฉฑเจ เจตเฉฑเจ-เจตเฉฑเจ เจชเฉเจพเจ เจนเฉเฉฐเจฆเฉ เจนเจจ. เจชเจนเจฟเจฒเจพเจ, เจเจฟเฉฑเจคเจฐ เจจเฉเฉฐ เจเฉฑเจ เจกเฉเจเจฐเจซเจพเจเจฒ เจฆเฉ เจตเจฐเจคเฉเจ เจเจฐเจเฉ เจเจเฉฑเจ เจพ เจเฉเจคเจพ เจเจพเจเจฆเจพ เจนเฉ. เจเจฆเฉเจ เจเฉฑเจ เจเจฟเฉฑเจคเจฐ เจคเฉเจ เจเฉฑเจ เจเฉฐเจเฉเจจเจฐ เจเจฒเจพเจเจ เจเจพเจเจฆเจพ เจนเฉ, เจคเจพเจ เจกเฉเจเจฐเจซเจพเจเจฒ เจฆเฉ เจตเจฐเจคเฉเจ เจจเจนเฉเจ เจเฉเจคเฉ เจเจพเจเจฆเฉเฅค
เจเจชเจญเฉเจเจคเจพ เจฐเจเจจเจพ เจเจฆเฉเจ เจนเฉเจฃเฉ เจเจพเจนเฉเจฆเฉ เจนเฉ เจเจฆเฉเจ เจเจฟเฉฑเจคเจฐ เจฌเจฃเจพเจเจ เจเจพเจเจฆเจพ เจนเฉเฅค เจเจนเฉ เจเจธ เจเจชเจญเฉเจเจคเจพ เจจเฉเฉฐ เจจเจฟเจฐเจงเจพเจฐเจค เจเจฐเจจ 'เจคเฉ เจฒเจพเจเฉ เจนเฉเฉฐเจฆเจพ เจนเฉ เจเจฟเจธ เจฆเฉ เจ เจงเฉเจจ เจชเฉเจฐเจเจฟเจฐเจฟเจเจตเจพเจ เจธเจผเฉเจฐเฉ เจเฉเจคเฉเจเจ เจเจพเจเจฆเฉเจเจ เจนเจจเฅค เจเจธเจฆเจพ เจฎเจคเจฒเจฌ เจนเฉ เจเจฟ เจธเจพเจจเฉเฉฐ เจเจฟเจธเฉ เจคเจฐเฉเจนเจพเจ เจเฉฐเจเฉเจจเจฐ เจฆเฉ เจ เฉฐเจฆเจฐ UID (GID) เจชเจพเจธ เจเจฐเจจเจพ เจเจพเจนเฉเจฆเจพ เจนเฉเฅค
เจกเฉเจเจฐเจซเจพเจเจฒ เจตเจฟเฉฑเจ เจฌเจพเจนเจฐเฉ เจตเฉเจฐเฉเจเจฌเจฒ เจฆเฉ เจตเจฐเจคเฉเจ เจเจฐเจจ เจฒเจ เจจเจฟเจฐเจฆเฉเจธเจผเจพเจ เจฆเฉ เจตเจฐเจคเฉเจ เจเฉเจคเฉ เจเจพเจเจฆเฉ เจนเฉ
เจกเฉเจเจฐเจซเจพเจเจฒ
ARG UID=1000
ARG GID=1000
ENV UID=${UID}
ENV GID=${GID}
RUN usermod -u $UID node
&& groupmod -g $GID node
เจคเฉเจธเฉเจ เจเจธ เจคเจฐเฉเจนเจพเจ เจกเฉเจเจฐ-เจเฉฐเจชเฉเจเจผ เจฆเฉเจเจฐเจพ เจเจฐเจเฉเจฎเฉเจเจเจธ เจชเจพเจธ เจเจฐ เจธเจเจฆเฉ เจนเฉ:
เจกเฉเจเจฐ-เจเฉฐเจชเฉเจเจผ
build:
context: ./src/backend
args:
UID: 1000
GID: 1000
PS เจกเฉเจเจฐ เจฆเฉเจเจ เจธเจพเจฐเฉเจเจ เจชเฉเจเฉเจฆเจเฉเจเจ เจตเจฟเฉฑเจ เจฎเฉเจนเจพเจฐเจค เจนเจพเจธเจฒ เจเจฐเจจ เจฒเจ, เจฆเจธเจคเจพเจตเฉเจเจผเจพเจ เจเจพเจ เจฒเฉเจเจพเจ เจจเฉเฉฐ เจชเฉเฉเจนเจจเจพ เจเจพเจซเจผเฉ เจจเจนเฉเจ เจนเฉ. เจคเฉเจนเจพเจจเฉเฉฐ เจฌเจนเฉเจค เจ เจญเจฟเจเจธ เจเจฐเจจ เจฆเฉ เจเจผเจฐเฉเจฐเจค เจนเฉ, เจคเฉเจนเจพเจจเฉเฉฐ เจกเฉเจเจฐ เจฒเจ เจฎเจนเจฟเจธเฉเจธ เจเจฐเจจ เจฆเฉ เจเจผเจฐเฉเจฐเจค เจนเฉ.
เจธเจฐเฉเจค: www.habr.com