āĻĄāĻ•āĻžāĻ°ā§‡ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻ•āĻžāĻ°ā§€

āĻ†āĻ¨ā§āĻĻā§āĻ°ā§‡ āĻ•ā§‹āĻĒāĻŋāĻ˛āĻ­, āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻ¸āĻŋāĻŸāĻŋāĻ“, āĻĄāĻ•āĻžāĻ°āĻ•ā§‡ āĻ­āĻžāĻ˛ā§‹āĻŦāĻžāĻ¸ā§‡, āĻ¸āĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻ­āĻžāĻŦā§‡ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡ āĻāĻŦāĻ‚ āĻĒā§āĻ°āĻšāĻžāĻ° āĻ•āĻ°ā§‡āĨ¤ āĻāĻ•āĻŸāĻŋ āĻ¨āĻ¤ā§āĻ¨ āĻ¨āĻŋāĻŦāĻ¨ā§āĻ§ā§‡, āĻ¤āĻŋāĻ¨āĻŋ āĻŦā§āĻ¯āĻžāĻ–ā§āĻ¯āĻž āĻ•āĻ°ā§‡āĻ›ā§‡āĻ¨ āĻ•āĻŋāĻ­āĻžāĻŦā§‡ āĻĄāĻ•āĻžāĻ°ā§‡ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻ•āĻžāĻ°ā§€ āĻ¤ā§ˆāĻ°āĻŋ āĻ•āĻ°āĻž āĻ¯āĻžāĻ¯āĻŧāĨ¤ āĻ¤āĻžāĻĻā§‡āĻ° āĻ¸āĻžāĻĨā§‡ āĻ¸āĻ āĻŋāĻ• āĻ•āĻžāĻœ, āĻ•ā§‡āĻ¨ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻ•āĻžāĻ°ā§€āĻĻā§‡āĻ° āĻ°ā§āĻŸ āĻ…āĻ§āĻŋāĻ•āĻžāĻ° āĻ›ā§‡āĻĄāĻŧā§‡ āĻĻā§‡āĻ“āĻ¯āĻŧāĻž āĻ‰āĻšāĻŋāĻ¤ āĻ¨āĻ¯āĻŧ āĻāĻŦāĻ‚ āĻĄāĻ•āĻžāĻ°āĻĢāĻžāĻ‡āĻ˛ā§‡ āĻ…āĻŽāĻŋāĻ˛ āĻ¸ā§‚āĻšāĻ•āĻ—ā§āĻ˛āĻŋāĻ° āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž āĻ•ā§€āĻ­āĻžāĻŦā§‡ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻž āĻ¯āĻžāĻ¯āĻŧāĨ¤

āĻ•āĻ¨ā§āĻŸā§‡āĻ‡āĻ¨āĻžāĻ°ā§‡āĻ° āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻĒā§āĻ°āĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻ°ā§āĻŸ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻ•āĻžāĻ°ā§€ āĻšāĻŋāĻ¸āĻžāĻŦā§‡ āĻšāĻ˛āĻŦā§‡, āĻ¯āĻĻāĻŋ āĻ¨āĻž āĻ†āĻĒāĻ¨āĻŋ āĻāĻŸāĻŋ āĻāĻ•āĻŸāĻŋ āĻŦāĻŋāĻļā§‡āĻˇ āĻ‰āĻĒāĻžāĻ¯āĻŧā§‡ āĻ‰āĻ˛ā§āĻ˛ā§‡āĻ– āĻ•āĻ°ā§‡āĻ¨āĨ¤ āĻāĻŸāĻŋ āĻ–ā§āĻŦ āĻ¸ā§āĻŦāĻŋāĻ§āĻžāĻœāĻ¨āĻ• āĻŦāĻ˛ā§‡ āĻŽāĻ¨ā§‡ āĻšāĻšā§āĻ›ā§‡, āĻ•āĻžāĻ°āĻŖ āĻāĻ‡ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻ•āĻžāĻ°ā§€āĻ° āĻ•ā§‹āĻ¨ āĻ¸ā§€āĻŽāĻžāĻŦāĻĻā§āĻ§āĻ¤āĻž āĻ¨ā§‡āĻ‡āĨ¤ āĻāĻ‡ āĻ•āĻžāĻ°āĻŖā§‡āĻ‡ āĻ°ā§āĻŸ āĻšāĻŋāĻ¸āĻžāĻŦā§‡ āĻ•āĻžāĻœ āĻ•āĻ°āĻž āĻ¨āĻŋāĻ°āĻžāĻĒāĻ¤ā§āĻ¤āĻž āĻĻā§ƒāĻˇā§āĻŸāĻŋāĻ•ā§‹āĻŖ āĻĨā§‡āĻ•ā§‡ āĻ­ā§āĻ˛āĨ¤ āĻ¯āĻĻāĻŋ āĻ¤āĻžāĻĻā§‡āĻ° āĻ¸āĻ āĻŋāĻ• āĻŽāĻ¨ā§‡āĻ° āĻŽāĻ§ā§āĻ¯ā§‡ āĻ•ā§‡āĻ‰āĻ‡ āĻ¸ā§āĻĨāĻžāĻ¨ā§€āĻ¯āĻŧ āĻ•āĻŽā§āĻĒāĻŋāĻ‰āĻŸāĻžāĻ°ā§‡ āĻ°ā§āĻŸ āĻ…āĻ§āĻŋāĻ•āĻžāĻ° āĻ¨āĻŋāĻ¯āĻŧā§‡ āĻ•āĻžāĻœ āĻ¨āĻž āĻ•āĻ°ā§‡, āĻ¤āĻžāĻšāĻ˛ā§‡ āĻ…āĻ¨ā§‡āĻ•ā§‡āĻ‡ āĻ•āĻ¨ā§āĻŸā§‡āĻ‡āĻ¨āĻžāĻ°ā§‡ āĻ°ā§āĻŸā§‡āĻ° āĻ…āĻ§ā§€āĻ¨ā§‡ āĻĒā§āĻ°āĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻšāĻžāĻ˛āĻžāĻ¯āĻŧāĨ¤

āĻ¸āĻŦāĻ¸āĻŽāĻ¯āĻŧ āĻŦāĻžāĻ— āĻĨāĻžāĻ•ā§‡ āĻ¯āĻž āĻŽā§āĻ¯āĻžāĻ˛āĻ“āĻ¯āĻŧā§āĻ¯āĻžāĻ°āĻ•ā§‡ āĻ•āĻ¨ā§āĻŸā§‡āĻ‡āĻ¨āĻžāĻ° āĻĨā§‡āĻ•ā§‡ āĻĒāĻžāĻ˛āĻžāĻ¤ā§‡ āĻāĻŦāĻ‚ āĻšā§‹āĻ¸ā§āĻŸ āĻ•āĻŽā§āĻĒāĻŋāĻ‰āĻŸāĻžāĻ°ā§‡ āĻ¯ā§‡āĻ¤ā§‡ āĻĻā§‡āĻ¯āĻŧāĨ¤ āĻ¸āĻŦāĻšā§‡āĻ¯āĻŧā§‡ āĻ–āĻžāĻ°āĻžāĻĒ āĻ§āĻ°ā§‡ āĻ¨āĻŋāĻ˛ā§‡, āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻ…āĻŦāĻļā§āĻ¯āĻ‡ āĻ¨āĻŋāĻļā§āĻšāĻŋāĻ¤ āĻ•āĻ°āĻ¤ā§‡ āĻšāĻŦā§‡ āĻ¯ā§‡ āĻ•āĻ¨ā§āĻŸā§‡āĻ‡āĻ¨āĻžāĻ°ā§‡āĻ° āĻ­āĻŋāĻ¤āĻ°ā§‡āĻ° āĻĒā§āĻ°āĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻ—ā§āĻ˛āĻŋ āĻāĻ•āĻœāĻ¨ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻ•āĻžāĻ°ā§€ āĻĻā§āĻŦāĻžāĻ°āĻž āĻšāĻžāĻ˛āĻŋāĻ¤ āĻšāĻ¯āĻŧ āĻ¯āĻžāĻ° āĻšā§‹āĻ¸ā§āĻŸ āĻŽā§‡āĻļāĻŋāĻ¨ā§‡ āĻ•ā§‹āĻ¨ā§‹ āĻ…āĻ§āĻŋāĻ•āĻžāĻ° āĻ¨ā§‡āĻ‡āĨ¤

āĻāĻ•āĻœāĻ¨ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻ•āĻžāĻ°ā§€ āĻ¤ā§ˆāĻ°āĻŋ āĻ•āĻ°āĻž āĻšāĻšā§āĻ›ā§‡

āĻāĻ•āĻŸāĻŋ āĻ•āĻ¨ā§āĻŸā§‡āĻ‡āĻ¨āĻžāĻ°ā§‡ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻ•āĻžāĻ°ā§€ āĻ¤ā§ˆāĻ°āĻŋ āĻ•āĻ°āĻž āĻ˛āĻŋāĻ¨āĻžāĻ•ā§āĻ¸ āĻĄāĻŋāĻ¸ā§āĻŸā§āĻ°āĻŋāĻŦāĻŋāĻ‰āĻļāĻ¨ā§‡ āĻ¤ā§ˆāĻ°āĻŋ āĻ•āĻ°āĻž āĻĨā§‡āĻ•ā§‡ āĻ†āĻ˛āĻžāĻĻāĻž āĻ¨āĻ¯āĻŧāĨ¤ āĻ¯āĻžāĻ‡āĻšā§‹āĻ•, āĻŦāĻŋāĻ­āĻŋāĻ¨ā§āĻ¨ āĻŦā§‡āĻ¸ āĻ‡āĻŽā§‡āĻœā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻ•āĻŽāĻžāĻ¨ā§āĻĄ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻŋāĻ¤ āĻšāĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĨ¤

āĻĄā§‡āĻŦāĻŋāĻ¯āĻŧāĻžāĻ¨-āĻ­āĻŋāĻ¤ā§āĻ¤āĻŋāĻ• āĻŦāĻŋāĻ¤āĻ°āĻŖā§‡āĻ° āĻœāĻ¨ā§āĻ¯, āĻ†āĻĒāĻ¨āĻžāĻ•ā§‡ āĻĄāĻ•āĻžāĻ°āĻĢāĻžāĻ‡āĻ˛ā§‡ āĻ¨āĻŋāĻŽā§āĻ¨āĻ˛āĻŋāĻ–āĻŋāĻ¤āĻ—ā§āĻ˛āĻŋ āĻ¯ā§āĻ•ā§āĻ¤ āĻ•āĻ°āĻ¤ā§‡ āĻšāĻŦā§‡:

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) āĻāĻŦāĻ‚ āĻ•āĻ¨ā§āĻŸā§‡āĻ‡āĻ¨āĻžāĻ°ā§‡āĻ° āĻŦāĻžāĻ‡āĻ°ā§‡āĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻ•āĻžāĻ°ā§€āĻ° āĻ¯āĻžāĻĻā§‡āĻ° āĻ•āĻžāĻ›ā§‡ āĻĢāĻžāĻ‡āĻ˛āĻŸāĻŋ āĻ…ā§āĻ¯āĻžāĻ•ā§āĻ¸ā§‡āĻ¸ āĻ•āĻ°āĻžāĻ° āĻ‰āĻĒāĻ¯ā§āĻ•ā§āĻ¤ āĻ…āĻ¨ā§āĻŽāĻ¤āĻŋ āĻ°āĻ¯āĻŧā§‡āĻ›ā§‡ āĻ¤āĻžāĻĻā§‡āĻ° āĻ…āĻŦāĻļā§āĻ¯āĻ‡ āĻŽāĻŋāĻ˛ āĻĨāĻžāĻ•āĻ¤ā§‡ āĻšāĻŦā§‡āĨ¤ āĻāĻ‡ āĻ•ā§āĻˇā§‡āĻ¤ā§āĻ°ā§‡, āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻ•āĻžāĻ°ā§€āĻ° āĻ¨āĻžāĻŽ āĻ•ā§‹āĻ¨ āĻŦā§āĻ¯āĻžāĻĒāĻžāĻ° āĻ¨āĻž.

āĻĒā§āĻ°āĻžāĻ¯āĻŧāĻļāĻ‡ āĻāĻ•āĻŸāĻŋ āĻ˛āĻŋāĻ¨āĻžāĻ•ā§āĻ¸ āĻ•āĻŽā§āĻĒāĻŋāĻ‰āĻŸāĻžāĻ°ā§‡, āĻāĻ•āĻœāĻ¨ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻ•āĻžāĻ°ā§€āĻ° āĻ‡āĻ‰āĻ†āĻ‡āĻĄāĻŋ āĻāĻŦāĻ‚ āĻœāĻŋāĻ†āĻ‡āĻĄāĻŋ 1000 āĻāĻ° āĻ¸āĻŽāĻžāĻ¨āĨ¤ āĻāĻ‡ āĻļāĻ¨āĻžāĻ•ā§āĻ¤āĻ•āĻžāĻ°ā§€āĻ—ā§āĻ˛āĻŋ āĻ•āĻŽā§āĻĒāĻŋāĻ‰āĻŸāĻžāĻ°ā§‡āĻ° āĻĒā§āĻ°āĻĨāĻŽ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻ•āĻžāĻ°ā§€āĻ•ā§‡ āĻŦāĻ°āĻžāĻĻā§āĻĻ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧāĨ¤

āĻ†āĻĒāĻ¨āĻžāĻ° āĻļāĻ¨āĻžāĻ•ā§āĻ¤āĻ•āĻžāĻ°ā§€ āĻ–ā§āĻāĻœā§‡ āĻŦā§‡āĻ° āĻ•āĻ°āĻž āĻ¸āĻšāĻœ:

id

āĻ†āĻĒāĻ¨āĻŋ āĻ†āĻĒāĻ¨āĻžāĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻ•āĻžāĻ°ā§€ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻ•ā§‡ āĻŦā§āĻ¯āĻžāĻĒāĻ• āĻ¤āĻĨā§āĻ¯ āĻĒāĻžāĻŦā§‡āĻ¨āĨ¤
āĻ†āĻĒāĻ¨āĻžāĻ° āĻļāĻ¨āĻžāĻ•ā§āĻ¤āĻ•āĻžāĻ°ā§€āĻ° āĻ¸āĻžāĻĨā§‡ āĻ‰āĻĻāĻžāĻšāĻ°āĻŖ āĻĨā§‡āĻ•ā§‡ 2000 āĻĒā§āĻ°āĻ¤āĻŋāĻ¸ā§āĻĨāĻžāĻĒāĻ¨ āĻ•āĻ°ā§āĻ¨ āĻāĻŦāĻ‚ āĻ¸āĻŦāĻ•āĻŋāĻ›ā§ āĻ āĻŋāĻ• āĻšāĻ¯āĻŧā§‡ āĻ¯āĻžāĻŦā§‡āĨ¤

āĻāĻ•āĻœāĻ¨ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻ•āĻžāĻ°ā§€āĻ•ā§‡ āĻāĻ•āĻŸāĻŋ UID āĻāĻŦāĻ‚ GID āĻŦāĻ°āĻžāĻĻā§āĻĻ āĻ•āĻ°āĻž

āĻ¯āĻĻāĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻ•āĻžāĻ°ā§€ āĻ†āĻ—ā§‡ āĻ¤ā§ˆāĻ°āĻŋ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧ, āĻ¤āĻŦā§‡ āĻ†āĻĒāĻ¨āĻžāĻ•ā§‡ āĻ¸āĻ¨āĻžāĻ•ā§āĻ¤āĻ•āĻžāĻ°ā§€ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻ•āĻ°āĻ¤ā§‡ āĻšāĻŦā§‡, āĻ†āĻĒāĻ¨āĻŋ āĻāĻŸāĻŋ āĻāĻ­āĻžāĻŦā§‡ āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĻ¨:

RUN usermod -u 1000 node 
  && groupmod -g 1000 node

āĻ†āĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ āĻ†āĻ˛āĻĒāĻžāĻ‡āĻ¨ āĻŦā§‡āĻ¸ āĻ‡āĻŽā§‡āĻœ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡āĻ¨, āĻ¤āĻžāĻšāĻ˛ā§‡ āĻ†āĻĒāĻ¨āĻžāĻ•ā§‡ āĻ›āĻžāĻ¯āĻŧāĻž āĻĒā§āĻ¯āĻžāĻ•ā§‡āĻœ āĻ‡āĻ¨āĻ¸ā§āĻŸāĻ˛ āĻ•āĻ°āĻ¤ā§‡ āĻšāĻŦā§‡:

RUN apk add —no-cache shadow

āĻ›āĻŦāĻŋ āĻ¤ā§ˆāĻ°āĻŋ āĻ•āĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻ•āĻ¨ā§āĻŸā§‡āĻ‡āĻ¨āĻžāĻ°ā§‡āĻ° āĻ­āĻŋāĻ¤āĻ°ā§‡ āĻ‡āĻ‰āĻœāĻžāĻ° āĻ†āĻ‡āĻĄāĻŋ āĻĒāĻžāĻ¸ āĻ•āĻ°āĻž

āĻ¯āĻĻāĻŋ āĻ†āĻĒāĻ¨āĻžāĻ° āĻ†āĻ‡āĻĄāĻŋ āĻāĻŦāĻ‚ āĻĒā§āĻ°āĻ•āĻ˛ā§āĻĒā§‡ āĻ•āĻžāĻœ āĻ•āĻ°āĻž āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻ˛ā§‹āĻ•ā§‡āĻ° āĻ†āĻ‡āĻĄāĻŋ āĻŽāĻŋāĻ˛ā§‡ āĻ¯āĻžāĻ¯āĻŧ, āĻ¤āĻŦā§‡ āĻĄāĻ•āĻžāĻ°āĻĢāĻžāĻ‡āĻ˛ā§‡ āĻāĻ‡ āĻ†āĻ‡āĻĄāĻŋāĻŸāĻŋ āĻ‰āĻ˛ā§āĻ˛ā§‡āĻ– āĻ•āĻ°ā§āĻ¨āĨ¤ āĻ¤āĻŦā§‡ āĻĒā§āĻ°āĻžāĻ¯āĻŧāĻ‡ āĻ‡āĻ‰āĻœāĻžāĻ° āĻ†āĻ‡āĻĄāĻŋ āĻŽā§‡āĻ˛ā§‡ āĻ¨āĻžāĨ¤

āĻ†āĻĒāĻ¨āĻŋ āĻ¯āĻž āĻšāĻžāĻ¨ āĻ¤āĻž āĻ•ā§€āĻ­āĻžāĻŦā§‡ āĻ…āĻ°ā§āĻœāĻ¨ āĻ•āĻ°āĻŦā§‡āĻ¨ āĻ¤āĻž āĻ…āĻŦāĻŋāĻ˛āĻŽā§āĻŦā§‡ āĻĒāĻ°āĻŋāĻˇā§āĻ•āĻžāĻ° āĻ¨āĻ¯āĻŧāĨ¤ āĻ†āĻŽāĻžāĻ° āĻœāĻ¨ā§āĻ¯, āĻĄāĻ•āĻžāĻ°āĻ•ā§‡ āĻ†āĻ¯āĻŧāĻ¤ā§āĻ¤ āĻ•āĻ°āĻžāĻ° āĻĒā§āĻ°āĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻ¯āĻŧ āĻāĻŸāĻŋ āĻ›āĻŋāĻ˛ āĻ¸āĻŦāĻšā§‡āĻ¯āĻŧā§‡ āĻ•āĻ āĻŋāĻ¨ āĻœāĻŋāĻ¨āĻŋāĻ¸āĨ¤ āĻ…āĻ¨ā§‡āĻ• āĻĄāĻ•āĻžāĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻ•āĻžāĻ°ā§€āĻ°āĻž āĻŦā§āĻāĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĻ¨ āĻ¨āĻž āĻ¯ā§‡ āĻāĻ•āĻŸāĻŋ āĻšāĻŋāĻ¤ā§āĻ°ā§‡āĻ° āĻœā§€āĻŦāĻ¨ā§‡ āĻŦāĻŋāĻ­āĻŋāĻ¨ā§āĻ¨ āĻ¸ā§āĻ¤āĻ° āĻ°āĻ¯āĻŧā§‡āĻ›ā§‡āĨ¤ āĻĒā§āĻ°āĻĨāĻŽāĻ¤, āĻ›āĻŦāĻŋāĻŸāĻŋ āĻāĻ•āĻŸāĻŋ āĻĄāĻ•āĻžāĻ°āĻĢāĻžāĻ‡āĻ˛ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡ āĻāĻ•āĻ¤ā§āĻ°āĻŋāĻ¤ āĻšāĻ¯āĻŧāĨ¤ āĻāĻ•āĻŸāĻŋ āĻ‡āĻŽā§‡āĻœ āĻĨā§‡āĻ•ā§‡ āĻāĻ•āĻŸāĻŋ āĻ§āĻžāĻ°āĻ• āĻšāĻžāĻ˛āĻžāĻ¨ā§‹āĻ° āĻ¸āĻŽāĻ¯āĻŧ, Dockerfile āĻ†āĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻž āĻšāĻ¯āĻŧ āĻ¨āĻž.

āĻ‡āĻŽā§‡āĻœ āĻ¤ā§ˆāĻ°āĻŋ āĻ•āĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻ•āĻžāĻ°ā§€ āĻ¤ā§ˆāĻ°āĻŋ āĻ•āĻ°āĻž āĻ†āĻŦāĻļā§āĻ¯āĻ•āĨ¤ āĻāĻ•āĻ‡ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻ•āĻžāĻ°ā§€ āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŖā§‡āĻ° āĻ•ā§āĻˇā§‡āĻ¤ā§āĻ°ā§‡ āĻĒā§āĻ°āĻ¯ā§‹āĻœā§āĻ¯ āĻ¯āĻžāĻ° āĻ…āĻ§ā§€āĻ¨ā§‡ āĻĒā§āĻ°āĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻ—ā§āĻ˛āĻŋ āĻšāĻžāĻ˛ā§ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡ā§ˇ āĻāĻ° āĻŽāĻžāĻ¨ā§‡ āĻšāĻ˛ āĻ¯ā§‡ āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻ…āĻŦāĻļā§āĻ¯āĻ‡ āĻ•āĻ¨ā§āĻŸā§‡āĻ‡āĻ¨āĻžāĻ°ā§‡āĻ° āĻ­āĻŋāĻ¤āĻ°ā§‡ UID (GID) āĻĒāĻžāĻ¸ āĻ•āĻ°āĻ¤ā§‡ āĻšāĻŦā§‡āĨ¤

āĻĄāĻ•āĻžāĻ°āĻĢāĻžāĻ‡āĻ˛ā§‡ āĻŦāĻšāĻŋāĻ°āĻžāĻ—āĻ¤ āĻ­ā§‡āĻ°āĻŋāĻ¯āĻŧā§‡āĻŦāĻ˛ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻžāĻ° āĻœāĻ¨ā§āĻ¯ āĻ¨āĻŋāĻ°ā§āĻĻā§‡āĻļāĻžāĻŦāĻ˛ā§€ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻž āĻšāĻ¯āĻŧ ENV и ARG. āĻ¨āĻŋāĻ°ā§āĻĻā§‡āĻļāĻžāĻŦāĻ˛ā§€āĻ° āĻŦāĻŋāĻ¸ā§āĻ¤āĻžāĻ°āĻŋāĻ¤ āĻ¤ā§āĻ˛āĻ¨āĻž āĻāĻ–āĻžāĻ¨ā§‡.

Dockerfile

ARG UID=1000
ARG GID=1000
ENV UID=${UID}
ENV GID=${GID}
RUN usermod -u $UID node 
  && groupmod -g $GID node

āĻ†āĻĒāĻ¨āĻŋ āĻāĻ‡ āĻŽāĻ¤ āĻĄāĻ•āĻžāĻ°-āĻ•āĻŽā§āĻĒā§‹āĻœ āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§‡ āĻ†āĻ°ā§āĻ—ā§āĻŽā§‡āĻ¨ā§āĻŸ āĻĒāĻžāĻ¸ āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĻ¨:

Docker-āĻ°āĻšāĻ¨āĻž

build:
  context: ./src/backend
  args:
    UID: 1000
    GID: 1000

PS āĻĄāĻ•āĻžāĻ°ā§‡āĻ° āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻœāĻŸāĻŋāĻ˛āĻ¤āĻž āĻ†āĻ¯āĻŧāĻ¤ā§āĻ¤ āĻ•āĻ°āĻ¤ā§‡, āĻĄāĻ•ā§āĻŽā§‡āĻ¨ā§āĻŸā§‡āĻļāĻ¨ āĻŦāĻž āĻ¨āĻŋāĻŦāĻ¨ā§āĻ§āĻ—ā§āĻ˛āĻŋ āĻĒāĻĄāĻŧāĻž āĻ¯āĻĨā§‡āĻˇā§āĻŸ āĻ¨āĻ¯āĻŧāĨ¤ āĻ†āĻĒāĻ¨āĻžāĻ•ā§‡ āĻ…āĻ¨ā§‡āĻ• āĻ…āĻ¨ā§āĻļā§€āĻ˛āĻ¨ āĻ•āĻ°āĻ¤ā§‡ āĻšāĻŦā§‡, āĻ†āĻĒāĻ¨āĻžāĻ•ā§‡ āĻĄāĻ•āĻžāĻ°ā§‡āĻ° āĻ…āĻ¨ā§āĻ­ā§‚āĻ¤āĻŋ āĻĒā§‡āĻ¤ā§‡ āĻšāĻŦā§‡āĨ¤

āĻ‰āĻ¤ā§āĻ¸: www.habr.com

āĻāĻ•āĻŸāĻŋ āĻŽāĻ¨ā§āĻ¤āĻŦā§āĻ¯ āĻœā§āĻĄāĻŧā§āĻ¨