Usoro niile dị na akpa ga-agba ọsọ dị ka onye ọrụ mgbọrọgwụ, ọ gwụla ma ị kọwapụta ya n'ụzọ pụrụ iche. Nke a yiri nnọọ adaba, n'ihi na onye ọrụ a enweghị mgbochi. Nke a bụ ya mere na-arụ ọrụ dị ka mgbọrọgwụ adịghị mma site na nche nche. Ọ bụrụ na ọ nweghị onye nwere uche ziri ezi na-arụ ọrụ na kọmpụta mpaghara nwere ikike mgbọrọgwụ, mgbe ahụ, ọtụtụ usoro na-agba ọsọ n'okpuru mgbọrọgwụ na arịa.
A na-enwe chinchi mgbe niile ga-ekwe ka malware gbanarị n'akpa wee banye na kọmputa ndị ọbịa. Na-eche na ndị kasị njọ, anyị ga-hụ na Filiks n'ime akpa na-agba ọsọ site a ọrụ na-enweghị ihe ọ bụla ikike na host igwe.
Ịmepụta onye ọrụ
Ịmepụta onye ọrụ n'ime akpa adịghị iche na ịmepụta ya na nkesa Linux. Agbanyeghị, iwu ahụ nwere ike ịdị iche maka onyonyo ntọala dị iche iche.
Maka nkesa dabere na debian, ịkwesịrị ịgbakwunye ihe ndị a na Dockerfile:
RUN groupadd --gid 2000 node
&& useradd --uid 2000 --gid node --shell /bin/bash --create-home node
Maka alpine:
RUN addgroup -g 2000 node
&& adduser -u 2000 -G node -s /bin/sh -D node
Usoro na-agba ọsọ site na onye ọrụ
Iji mee usoro niile na-esote dị ka onye ọrụ na UID 2000, gbaa ọsọ:
USER 2000
Iji mee usoro niile na-esote dị ka onye ọrụ node, gbaa ọsọ:
USER node
Gụkwuo na
Mpịakọta ọnụ
Mgbe ị na-arị elu n'ime akpa, nye onye ọrụ ikike ịgụ na/ma ọ bụ ide faịlụ. Iji mee nke a, UID (GID) nke onye ọrụ na akpa na onye ọrụ na-abụghị akpa nke nwere ikike kwesịrị ekwesị iji nweta faịlụ ga-adabarịrị. N'okwu a, aha njirimara adịghị mkpa.
Ọtụtụ mgbe na kọmputa Linux, UID na GID onye ọrụ hà nhata 1000. A na-ekenye njirimara ndị a n'aka onye ọrụ mbụ nke kọmpụta ahụ.
Ịchọta ihe njirimara gị dị mfe:
id
Ị ga-enweta ozi zuru oke gbasara onye ọrụ gị.
Dochie 2000 site na ihe atụ na njirimara gị na ihe niile ga-adị mma.
Ịnye onye ọrụ UID na GID
Ọ bụrụ na emebere onye ọrụ na mbụ, mana ịchọrọ ịgbanwe ihe njirimara, ị nwere ike ime ya dịka nke a:
RUN usermod -u 1000 node
&& groupmod -g 1000 node
Ọ bụrụ na ị na-eji ihe onyonyo ntọala alpine, ịkwesịrị ịwụnye ngwugwu onyinyo:
RUN apk add —no-cache shadow
Na-agafe NJ onye ọrụ n'ime akpa mgbe ị na-ewu ihe onyonyo a
Ọ bụrụ na NJ gị na NJ nke ndị niile na-arụ ọrụ na ngo dakọtara, mgbe ahụ dị nnọọ ezipụta NJ a na Dockerfile. Agbanyeghị, ọtụtụ mgbe ID onye ọrụ anaghị adaba.
Otu esi enweta ihe ị chọrọ abụghị ozugbo doro anya. Maka m, nke a bụ ihe kacha sie ike na usoro nke ịmụta Docker. Ọtụtụ ndị ọrụ docker anaghị aghọta na enwere usoro dị iche iche na ndụ ihe onyonyo. Nke mbụ, a na-agbakọta onyonyo a site na iji Dockerfile. Mgbe ị na-ebu akpa site na onyonyo, anaghịzi eji Dockerfile.
Ịmepụta onye ọrụ ga-emerịrị mgbe arụrụ onyonyo a. Otu ihe ahụ na-emetụta ikpebi onye ọrụ n'okpuru onye a na-ewepụta usoro. Nke a pụtara na anyị ga-agaferịrị UID (GID) n'ime akpa ahụ.
A na-eji ntuziaka maka iji mgbanwe mpụga na Dockerfile
dockerfile
ARG UID=1000
ARG GID=1000
ENV UID=${UID}
ENV GID=${GID}
RUN usermod -u $UID node
&& groupmod -g $GID node
Ị nwere ike nyefee arụmụka site na docker-dede dị ka nke a:
docker-ide
build:
context: ./src/backend
args:
UID: 1000
GID: 1000
PS Iji mata ihe mgbagwoju anya niile nke Docker, ezughị ezu ịgụ akwụkwọ ma ọ bụ akụkọ. Ịkwesịrị ịme ọtụtụ ihe, ịkwesịrị inwe mmetụta maka Docker.
isi: www.habr.com