ืงืœื™ื™ื ื˜ืฉื™ืง ื“ืึธืงืขืจ ื‘ื™ืœื“ืขืจ ื•ื•ืึธืก ื”ืึธื‘ืŸ ื’ืขื’ืœื•ื™ื‘ื˜ ืื™ืŸ ื–ื™ืš *

[ื“ืขืจืžืึธื ื•ื ื’ ืฆื• ื“ื™ ืืžืขืจื™ืงืื ืขืจ ืงื™ื ื“ืขืจ ืคื™ื™ืข ืžื™ื™ึทืกืข "ื“ื™ ืงืœื™ื™ืŸ ืžืึธื˜ืึธืจ ื•ื•ืึธืก ืงืขืŸ" - ื‘ืขืขืจืขืš. ืœื™ื ื™ืข]*

ืงืœื™ื™ื ื˜ืฉื™ืง ื“ืึธืงืขืจ ื‘ื™ืœื“ืขืจ ื•ื•ืึธืก ื”ืึธื‘ืŸ ื’ืขื’ืœื•ื™ื‘ื˜ ืื™ืŸ ื–ื™ืš *

ื•ื•ื™ ืฆื• ืื•ื™ื˜ืึธืžืึทื˜ื™ืฉ ืฉืึทืคึฟืŸ ืงืœื™ื™ื ื˜ืฉื™ืง ื“ืึธืงืงืขืจ ื‘ื™ืœื“ืขืจ ืคึฟืึทืจ ื“ื™ื™ืŸ ื“ืึทืจืฃ

ื•ืžื’ืขื•ื•ื™ื™ื ื˜ืœืขืš ืึธื‘ืกืขืกืกื™ืึธืŸ

ืคึฟืึทืจ ื“ื™ ืœืขืฆื˜ืข ืคึผืึธืจ ืคื•ืŸ ื—ื“ืฉื™ื, ืื™ืš ื‘ื™ืŸ ืึทื‘ืกืขืกื˜ ืžื™ื˜ ื•ื•ื™ ืงืœื™ื™ืŸ ืึท ื“ืึธืงืงืขืจ ื‘ื™ืœื“ ืงืขื ืขืŸ ื–ื™ื™ืŸ ืื•ืŸ ื ืึธืš ื”ืึธื‘ืŸ ื“ื™ ืึทืคึผืœืึทืงื™ื™ืฉืึทืŸ ืคืœื™ืกื ื“ื™ืง?

ืื™ืš ืคึฟืึทืจืฉื˜ืฒ, ื“ืขืจ ื’ืขื“ืึทื ืง ืื™ื– ืžืึธื“ื ืข.

ืื™ื™ื“ืขืจ ืื™ืš ื‘ืึทืงื•ืžืขืŸ ืื™ืŸ ื“ื™ ื“ืขื˜ืึทื™ืœืก ืื•ืŸ ื˜ืขืงื ื™ืงืก, ืื™ืš ื•ื•ืึธืœื˜ ื•ื•ื™ ืฆื• ื“ืขืจืงืœืขืจืŸ ื•ื•ืึธืก ื“ืขื ืคึผืจืึธื‘ืœืขื ื‘ืึทื“ืขืจื“ ืžื™ืจ ืึทื–ื•ื™ ืคื™ืœ, ืื•ืŸ ื•ื•ื™ ืขืก ืงืึทื ืกืขืจื ื– ืื™ืจ.

ืคืืจื•ื•ืืก ื“ื™ ื’ืจื™ื™ืก ืื™ื– ื•ื•ื™ื›ื˜ื™ืง

ื“ื•ืจืš ืจื™ื“ื•ืกื™ื ื’ ื“ื™ ืื™ื ื”ืึทืœื˜ ืคื•ืŸ ื“ื™ ื“ืึธืงืงืขืจ ื‘ื™ืœื“, ืžื™ืจ ื“ืขืจืžื™ื˜ ืจืขื“ื•ืฆื™ืจืŸ ื“ื™ ืจืฉื™ืžื” ืคื•ืŸ ื•ื•ืึทืœื ืขืจืึทื‘ื™ืœื™ื˜ื™ื–. ืื™ืŸ ื“ืขืจืฆื•, ืžื™ืจ ืžืึทื›ืŸ ื“ื™ ื‘ื™ืœื“ืขืจ ืงืœื™ื ืขืจ, ื•ื•ื™ื™ึทืœ ื–ื™ื™ ืึทื ื˜ื”ืึทืœื˜ืŸ ื‘ืœื•ื™ื– ื•ื•ืึธืก ืื™ื– ื“ืืจืฃ ืฆื• ืœื•ื™ืคืŸ ืึทืคึผืœืึทืงื™ื™ืฉืึทื ื–.

ืขืก ืื™ื– ื ืึธืš ืึท ืงืœื™ื™ืŸ ืžื™ื™ึทืœืข - ื‘ื™ืœื“ืขืจ ื–ืขื ืขืŸ ื“ืึทื•ื ืœืึธื•ื“ื™ื“ ืึท ื‘ื™ืกืœ ืคืึทืกื˜ืขืจ, ืึธื‘ืขืจ, ืื™ืŸ ืžื™ื™ืŸ ืžื™ื™ื ื•ื ื’, ื“ืึธืก ืื™ื– ื ื™ืฉื˜ ืึทื–ื•ื™ ื•ื•ื™ื›ื˜ื™ืง.

ื‘ื™ื˜ืข ื˜ืึธืŸ: ืื•ื™ื‘ ืื™ืจ ื–ืขื ื˜ ื–ืืจื’ืŸ ื•ื•ืขื’ืŸ ื’ืจื™ื™ืก, ื“ื™ ืึทืœืคึผื™ื™ืŸ ืงื•ืงื˜ ื–ื™ืš ืื™ื– ืงืœื™ื™ืŸ ืื•ืŸ ื•ื•ืขื˜ ืžืกืชึผืžื ืคึผืึทืกื™ืง ืื™ืจ.

ื“ื™ืกื˜ืจืึธืœืขืกืก ื‘ื™ืœื“ืขืจ

ืคึผืจืึธื™ืขืงื˜ ื“ื™ืกื˜ืจืึธืœืขืกืก ืึธืคืคืขืจืก ืึท ืกืขืœืขืงืฆื™ืข ืคื•ืŸ โ€‹โ€‹โ€‹โ€‹ื™ืงืขืจื“ื™ืง "ื“ื™ืกื˜ืจืึธืœืขืกืก" ื‘ื™ืœื“ืขืจ, ื–ื™ื™ ื˜ืึธืŸ ื ื™ื˜ ืึทื ื˜ื”ืึทืœื˜ืŸ ืคึผืขืงืœ ืžืึทื ืึทื“ื–ืฉืขืจื–, ืฉืขืœื– ืื•ืŸ ืื ื“ืขืจืข ื™ื•ื˜ื™ืœืึทื˜ื™ื– ื•ื•ืึธืก ืื™ืจ ื–ืขื ื˜ ื’ืขื•ื•ื™ื™ื ื˜ ืฆื• ื–ืขืŸ ืื•ื™ืฃ ื“ื™ ื‘ืึทืคึฟืขืœืŸ ืฉื•ืจื”. ื•ื•ื™ ืึท ืจืขื–ื•ืœื˜ืึทื˜, ื ื•ืฆืŸ ืคึผืขืงืœ ืžืึทื ืึทื“ื–ืฉืขืจื– ื•ื•ื™ pip ะธ apt ื•ื•ืขื˜ ื ื™ืฉื˜ ืึทืจื‘ืขื˜ืŸ:

FROM gcr.io/distroless/python3
RUN  pip3 install numpy

Dockerfile ื ื™ืฆืŸ Python 3 ื“ื™ืกื˜ืจืึธืœืขืกืก ื‘ื™ืœื“

Sending build context to Docker daemon  2.048kB
Step 1/2 : FROM gcr.io/distroless/python3
 ---> 556d570d5c53
Step 2/2 : RUN  pip3 install numpy
 ---> Running in dbfe5623f125
/bin/sh: 1: pip3: not found

ืคึผื™ืคึผ ืื™ื– ื ื™ืฉื˜ ืื™ืŸ ื“ื™ ื‘ื™ืœื“

ื™ื•ื–ืฉืึทื•ื•ืึทืœื™ ื“ืขื ืคึผืจืึธื‘ืœืขื ืื™ื– ืกืึทืœื•ื•ื“ ื“ื•ืจืš ืึท ืžืึทืœื˜ื™-ื‘ื™ื ืข ื‘ื•ื™ืขืŸ:

FROM python:3 as builder
RUN  pip3 install numpy

FROM gcr.io/distroless/python3
COPY --from=builder /usr/local/lib/python3.7/site-packages /usr/local/lib/python3.5/

ืžื•ืœื˜ื™-ื‘ื™ื ืข ืคึฟืึทืจื–ืึทืžืœื•ื ื’

ื“ืขืจ ืจืขื–ื•ืœื˜ืึทื˜ ืื™ื– ืึท ื‘ื™ืœื“ ืคื•ืŸ 130 ืžื‘ ืื™ืŸ ื’ืจื™ื™ืก. ื ื™ืฉื˜ ืฆื• ืฉืœืขื›ื˜! ืคึฟืึทืจ ืคืึทืจื’ืœื™ื™ึทืš: ื“ื™ ืคืขืœื™ืงื™ื™ึทื˜ ืคึผื™ื˜ื”ืึธืŸ ื‘ื™ืœื“ ื•ื•ื™ื™ื– 929 ืžื‘, ืื•ืŸ ื“ื™ "ื˜ื™ื ืขืจ" ืื™ื™ื ืขืจ (3,7-slim) - 179 ืžื‘, ืึทืœืคึผื™ื™ืŸ ื‘ื™ืœื“ (3,7-alpine) ืื™ื– 98,6MB, ื‘ืฉืขืช ื“ื™ ื‘ืึทื–ืข ื“ื™ืกื˜ืจืึธืœืขืกืก ื‘ื™ืœื“ ื’ืขื ื™ืฆื˜ ืื™ืŸ ื“ืขื ื‘ื™ื™ึทืฉืคึผื™ืœ ืื™ื– 50,9MB.

ืขืก ืื™ื– ืฉื™ื™ืŸ ืฆื• ืคื•ื ื˜ ืื•ื™ืก ืึทื– ืื™ืŸ ื“ื™ ืคืจื™ืขืจื“ื™ืงืข ื‘ื™ื™ึทืฉืคึผื™ืœ ืžื™ืจ ืงืึทืคึผื™ื™ื ื’ ืึท ื’ืึทื ืฅ ื•ื•ืขื’ื•ื•ื™ื™ึทื–ืขืจ /usr/local/lib/python3.7/site-packages, ื•ื•ืึธืก ืงืขืŸ ืึทื ื˜ื”ืึทืœื˜ืŸ ื“ื™ืคึผืขื ื“ืึทื ืกื™ื– ื•ื•ืึธืก ืžื™ืจ ื˜ืึธืŸ ื ื™ื˜ ื“ืึทืจืคึฟืŸ. ื›ืึธื˜ืฉ ืขืก ืื™ื– ืงืœืึธืจ ืึทื– ื“ื™ ื’ืจื™ื™ืก ื—ื™ืœื•ืง ืคื•ืŸ ืึทืœืข ื™ื’ื–ื™ืกื˜ื™ื ื’ ืคึผื™ื˜ื”ืึธืŸ ื‘ืึทื–ืข ื‘ื™ืœื“ืขืจ ื•ื•ืขืจื™ื–.

ืื™ืŸ ื“ืขืจ ืฆื™ื™ื˜ ืคื•ืŸ ืฉืจื™ื™ื‘ืŸ, Google ื“ื™ืกื˜ืจืึธืœืขืกืก ืฉื˜ื™ืฆื˜ ื ื™ืฉื˜ ืคื™ืœืข ื‘ื™ืœื“ืขืจ: Java ืื•ืŸ Python ื–ืขื ืขืŸ ื ืึธืš ืื™ืŸ ื“ืขืจ ื™ืงืกืคึผืขืจืžืขื ืึทืœ ื‘ื™ื ืข, ืื•ืŸ Python ืื™ื– ื‘ืœื•ื™ื– 2,7 ืื•ืŸ 3,5.

ืงืœื™ื™ื ื˜ืฉื™ืง ื‘ื™ืœื“ืขืจ

ืฆื•ืจื™ืง ืฆื• ืžื™ื™ืŸ ื‘ืึทื ืขืžืขื ื™ืฉ ืžื™ื˜ ืงืจื™ื™ื™ื˜ื™ื ื’ ืงืœื™ื™ืŸ ื‘ื™ืœื“ืขืจ.

ืื™ืŸ ืึทืœื’ืขืžื™ื™ืŸ, ืื™ืš ื’ืขื•ื•ืืœื˜ ืฆื• ื–ืขืŸ ื•ื•ื™ ื“ื™ืกื˜ืจืึธืœืึทืก ื‘ื™ืœื“ืขืจ ื–ืขื ืขืŸ ืงืึทื ืกื˜ืจืึทืงื˜ืึทื“. ื“ื™ ื“ื™ืกื˜ืจื•ืœืึทืก ืคึผืจื•ื™ืขืงื˜ ื ื™ืฆื˜ Google ืก ื‘ื•ื™ืขืŸ ื’ืขืฆื™ื™ึทื’ bazel. ืึธื‘ืขืจ, ื™ื ืกื˜ืึธืœื™ื ื’ Bazel ืื•ืŸ ืฉืจื™ื™ื‘ืŸ ื“ื™ื™ืŸ ืื™ื™ื’ืขื ืข ื‘ื™ืœื“ืขืจ ื”ืื˜ ืึท ืคึผืœืึทืฅ ืคื•ืŸ ืึทืจื‘ืขื˜ (ืื•ืŸ ืฆื• ื–ื™ื™ืŸ ืขืจืœืขืš, ืจื™ื™ื ื•ื•ืขื ื˜ื™ื ื’ ื“ื™ ืจืึธื“ ืื™ื– ืฉืคึผืึทืก ืื•ืŸ ื‘ื™ืœื“ื•ื ื’ืงืจื™ื™ื–). ืื™ืš ื’ืขื•ื•ืืœื˜ ืฆื• ืคืึทืจืคึผืึธืฉืขื˜ืขืจืŸ ื“ื™ ืฉืึทืคื•ื ื’ ืคื•ืŸ ืงืœืขื ืขืจืขืจ ื‘ื™ืœื“ืขืจ: ื“ืขืจ ืึทืงื˜ ืคื•ืŸ ืฉืึทืคึฟืŸ ืึท ื‘ื™ืœื“ ื–ืึธืœ ื–ื™ื™ืŸ ื’ืึธืจ ืคึผืฉื•ื˜, ื‘ืึทื ืึทืœ. ืึทื–ื•ื™ ืึทื– ืขืก ื–ืขื ืขืŸ ืงื™ื™ืŸ ืงืึทื ืคื™ื’ื™ืขืจื™ื™ืฉืึทืŸ ื˜ืขืงืขืก ืคึฟืึทืจ ืื™ืจ, ื ืึธืจ ืื™ื™ืŸ ืฉื•ืจื” ืื™ืŸ ื“ื™ ืงืึทื ืกืึธื•ืœ: ะฟั€ะพัั‚ะพ ัะพะฑั€ะฐั‚ัŒ ะพะฑั€ะฐะท ะดะปั <ะฟั€ะธะปะพะถะตะฝะธะต>.

ืึทื–ื•ื™, ืื•ื™ื‘ ืื™ืจ ื•ื•ื™ืœืŸ ืฆื• ืžืึทื›ืŸ ื“ื™ื™ืŸ ืื™ื™ื’ืขื ืข ื‘ื™ืœื“ืขืจ, ื•ื•ื™ืกืŸ: ืขืก ืื™ื– ืึทื–ืึท ืึท ื™ื™ื ืฆื™ืง ื“ืึธืงืงืขืจ ื‘ื™ืœื“, scratch. ืงืจืึทืฆืŸ ืื™ื– ืึท "ืœื™ื™ื“ื™ืง" ื‘ื™ืœื“, ืขืก ื–ืขื ืขืŸ ืงื™ื™ืŸ ื˜ืขืงืขืก ืื™ืŸ ืขืก, ื›ืึธื˜ืฉ ืขืก ื•ื•ื™ื™ื– ื“ื•ืจืš ืคืขืœื™ืงื™ื™ึทื˜ - ื•ื•ืึทื•! - 77 ื‘ื™ื˜ืขืก.

FROM scratch

ืงืจืึทืฆืŸ ื‘ื™ืœื“

ื“ืขืจ ื’ืขื“ืึทื ืง ืคื•ืŸ ืึท ืงืจืึทืฆืŸ ื‘ื™ืœื“ ืื™ื– ืึทื– ืื™ืจ ืงืขื ืขืŸ ื ืึธื›ืžืึทื›ืŸ ืงื™ื™ืŸ ื“ื™ืคึผืขื ื“ืึทื ืกื™ื– ืคื•ืŸ ื“ืขืจ ื‘ืึทืœืขื‘ืึธืก ืžืึทืฉื™ืŸ ืื™ืŸ ืขืก ืื•ืŸ ืึธื“ืขืจ ื ื•ืฆืŸ ื–ื™ื™ ืื™ืŸ ืึท ื“ืึธืงืงืขืจืคื™ืœืข (ื“ืึธืก ืื™ื– ื•ื•ื™ ืงืึทืคึผื™ื™ื ื’ ื–ื™ื™ ืฆื• apt ืื•ืŸ ื™ื ืกื˜ืึทืœื™ืจืŸ ืคึฟื•ืŸ ืงืจืึทืฆืŸ), ืึธื“ืขืจ ืฉืคึผืขื˜ืขืจ ื•ื•ืขืŸ ื“ื™ ื“ืึธืงืงืขืจ ื‘ื™ืœื“ ืื™ื– ืžืึทื˜ื™ืจื™ืึทืœื™ื™ื–ื“. ื“ืึธืก ืึทืœืึทื•ื– ืื™ืจ ืฆื• ื’ืึธืจ ืงืึธื ื˜ืจืึธืœื™ืจืŸ ื“ื™ ืื™ื ื”ืึทืœื˜ ืคื•ืŸ ื“ื™ ื“ืึธืงืงืขืจ ืงืึทื ื˜ื™ื™ื ืขืจ, ืื•ืŸ ืึทื–ื•ื™ ื’ืึธืจ ืงืึธื ื˜ืจืึธืœื™ืจืŸ ื“ื™ ื’ืจื™ื™ืก ืคื•ืŸ ื“ืขื ื‘ื™ืœื“.

ืื™ืฆื˜ ืžื™ืจ ื“ืึทืจืคึฟืŸ ืฆื• ืขืคืขืก ืงืœื™ื™ึทื‘ืŸ ื“ื™ ื“ื™ืคึผืขื ื“ืึทื ืกื™ื–. ื™ื’ื–ื™ืกื˜ื™ื ื’ ืžื›ืฉื™ืจื™ื ื•ื•ื™ apt ืœืึธื–ืŸ ืื™ืจ ืืจืืคืงืืคื™ืข ืคึผืึทืงืึทื“ื–ืฉืึทื–, ืึธื‘ืขืจ ื–ื™ื™ ื–ืขื ืขืŸ ื˜ื™ื™ื“ ืฆื• ื“ื™ ืงืจืึทื ื˜ ืžืึทืฉื™ืŸ ืื•ืŸ ื ืึธืš ืึทืœืข, ื–ื™ื™ ืฉื˜ื™ืฆืŸ ื ื™ืฉื˜ Windows ืึธื“ืขืจ MacOS.

ืึทื–ื•ื™ ืื™ืš ืคึผืœืึทื ื ืขื“ ืฆื• ื‘ื•ื™ืขืŸ ืžื™ื™ืŸ ืื™ื™ื’ืŸ ื’ืขืฆื™ื™ึทื’ ื•ื•ืึธืก ื•ื•ืึธืœื˜ ืื•ื™ื˜ืึธืžืึทื˜ื™ืฉ ื‘ื•ื™ืขืŸ ืึท ื‘ืึทื–ืข ื‘ื™ืœื“ ืคื•ืŸ ื“ืขืจ ืงืœืขื ืกื˜ืขืจ ืžืขื’ืœืขืš ื’ืจื™ื™ืก ืื•ืŸ ืื•ื™ืš ืœื•ื™ืคืŸ ืงื™ื™ืŸ ืึทืคึผืœืึทืงื™ื™ืฉืึทืŸ. ืื™ืš ื’ืขื•ื•ื™ื™ื ื˜ ื•ื‘ื•ื ื˜ื• / ื“ืขื‘ื™ืึทืŸ ืคึผืึทืงืึทื“ื–ืฉืึทื–, ื’ืขืžืื›ื˜ ืึท ืกืขืœืขืงืฆื™ืข (ื‘ืึทืงื•ืžืขืŸ ืคึผืึทืงืึทื“ื–ืฉืึทื– ื’ืœื™ื™ืš ืคึฟื•ืŸ ื“ื™ ืจื™ืคึผืึทื–ืึทื˜ืึธืจื™ื–) ืื•ืŸ ืจืขืงื•ืจืกื™ื•ื•ืœื™ ื’ืขืคึฟื•ื ืขืŸ ื–ื™ื™ืขืจ ื“ื™ืคึผืขื ื“ืึทื ืกื™ื–. ื“ืขืจ ืคึผืจืึธื’ืจืึทื ืื™ื– ื’ืขื•ื•ืขืŸ ื’ืขืžื™ื™ื ื˜ ืฆื• ืื•ื™ื˜ืึธืžืึทื˜ื™ืฉ ืืจืืคืงืืคื™ืข ื“ื™ ืœืขืฆื˜ืข ืกื˜ืึทื‘ื™ืœ ื•ื•ืขืจืกื™ืข ืคื•ืŸ โ€‹โ€‹โ€‹โ€‹ื“ืขื ืคึผืขืงืœ, ืžื™ื ืึทืžื™ื™ื–ื™ื ื’ ื–ื™ื›ืขืจื”ื™ื™ื˜ ืจื™ืกืงืก ื•ื•ื™ ืคื™ืœ ื•ื•ื™ ืžืขื’ืœืขืš.

ืื™ืš ื’ืขืจื•ืคึฟืŸ ื“ืขื ื’ืขืฆื™ื™ึทื’ fetchy, ื•ื•ื™ื™ืœ ืขืจ... ื’ืขืคื™ื ื˜ ืื•ืŸ ื‘ืจืขื ื’ื˜... ื•ื•ืืก ืžืขืŸ ื“ืืจืฃ [ืคื•ืŸ ืขื ื’ืœื™ืฉ "ื‘ืจืขื ื’ืขืŸ", "ื‘ืจืขื ื’ืขืŸ" - ื‘ืขืขืจืขืš. ืœื™ื ื™ืข]. ื“ื™ ื’ืขืฆื™ื™ึทื’ ืึทืจื‘ืขื˜ ื“ื•ืจืš ืึท ื‘ืึทืคึฟืขืœ ืฉื•ืจื” ืฆื•ื‘ื™ื ื“, ืึธื‘ืขืจ ืื™ืŸ ื“ืขืจ ื–ืขืœื‘ื™ืงืขืจ ืฆื™ื™ื˜ ืึธืคืคืขืจืก ืึทืŸ ืึทืคึผื™.

ืฆื• ืึทืกืขืžื‘ืึทืœ ืึท ื‘ื™ืœื“ ื ื™ืฆืŸ fetchy (ืœืึธืžื™ืจ ื ืขืžืขืŸ ืึท ืคึผื™ื˜ื”ืึธืŸ ื‘ื™ืœื“ ื“ืึธืก ืžืึธืœ), ืื™ืจ ื ืึธืจ ื“ืึทืจืคึฟืŸ ืฆื• ื ื•ืฆืŸ ื“ื™ CLI ื•ื•ื™ ื“ืึธืก: fetchy dockerize python. ืื™ืจ ืงืขืŸ ื–ื™ื™ืŸ ื’ืขื‘ืขื˜ืŸ ืคึฟืึทืจ ื“ื™ ืฆื™ืœ ืึธืคึผืขืจื™ื™ื˜ื™ื ื’ ืกื™ืกื˜ืขื ืื•ืŸ ืงืึธื“ืขื ืึทืžืข ื•ื•ื™ื™ึทืœ fetchy ื“ืขืจื•ื•ื™ื™ึทืœ ื ื™ืฆื˜ ื‘ืœื•ื™ื– ืคึผืึทืงืึทื“ื–ืฉืึทื– ื‘ืื–ื™ืจื˜ ืื•ื™ืฃ ื“ืขื‘ื™ืึทืŸ ืื•ืŸ ื•ื‘ื•ื ื˜ื•.

ืื™ืฆื˜ ืื™ืจ ืงืขื ืขืŸ ืงืœื™ื™ึทื‘ืŸ ื•ื•ืึธืก ื“ื™ืคึผืขื ื“ืึทื ืกื™ื– ื–ืขื ืขืŸ ื ื™ืฉื˜ ื“ืืจืฃ ืื™ืŸ ืึทืœืข (ืื™ืŸ ืื•ื ื“ื–ืขืจ ืงืึธื ื˜ืขืงืกื˜) ืื•ืŸ ื•ื™ืกืฉืœื™ืกืŸ ื–ื™ื™. ืคึฟืึทืจ ื‘ื™ื™ึทืฉืคึผื™ืœ, Python ื“ืขืคึผืขื ื“ืก ืื•ื™ืฃ ืคึผืขืจืœ, ื›ืึธื˜ืฉ ืขืก ืึทืจื‘ืขื˜ ืคื™ื™ึทืŸ ืึธืŸ ืคึผืขืจืœ ืื™ื ืกื˜ืึทืœื™ืจืŸ.

ืจืขื–ื•ืœื˜ืึทื˜ืŸ

ืคึผื™ื˜ื”ืึธืŸ ื‘ื™ืœื“ ื‘ืืฉืืคืŸ ืžื™ื˜ ื“ืขื ื‘ืึทืคึฟืขืœ fetchy dockerize python3.5 ื•ื•ื™ื™ื– ื‘ืœื•ื™ื– 35MB (ืื™ืš ื‘ื™ืŸ ืžืขืจ ื•ื•ื™ ื–ื™ื›ืขืจ ืึทื– ืื™ืŸ ื“ืขืจ ืฆื•ืงื•ื ืคึฟื˜ ืขืก ืงืขื ืขืŸ ื–ื™ื™ืŸ ื’ืขืžืื›ื˜ ืืคื™ืœื• ืœื™ื™ื˜ืขืจ). ืขืก ื˜ื•ืจื ืก ืื•ื™ืก ืึทื– ืžื™ืจ ื’ืขืจืื˜ืŸ ืฆื• ื’ืึธืœืŸ ืึทื•ื•ืขืง ื ืึธืš 15 ื•ื•ื•ื• ืคื•ืŸ ื“ื™ ื“ื™ืกื˜ืจืึธืœืึทืก ื‘ื™ืœื“.

ืื™ืจ ืงืขื ืขืŸ ื–ืขืŸ ืึทืœืข ื“ื™ ื‘ื™ืœื“ืขืจ ื’ืขื–ืืžืœื˜ ื‘ื™ื– ืื™ืฆื˜ ื“ืึธ.

ืคึผืจืึธื™ืขืงื˜ - ื“ืึธ.

ืื•ื™ื‘ ืื™ืจ ืคืขืœืŸ ืคึฟืขื™ึดืงื™ื™ื˜ืŸ, ื ืึธืจ ืžืึทื›ืŸ ืึท ื‘ืงืฉื” - ืื™ืš ื•ื•ืขืœ ื–ื™ื™ืŸ ืฆื•ืคืจื™ื“ืŸ ืฆื• ื”ืขืœืคืŸ :) ืืคื™ืœื• ืžืขืจ, ืื™ืš ื‘ื™ืŸ ืื™ืฆื˜ ืืจื‘ืขื˜ืŸ ืื•ื™ืฃ ื™ื ื˜ืึทื’ืจื™ื™ื˜ื™ื ื’ ืื ื“ืขืจืข ืคึผืขืงืœ ืžืึทื ืึทื“ื–ืฉืขืจื– ืื™ืŸ ืคืขื˜ืฉื™, ืึทื–ื•ื™ ืึทื– ืขืก ืื™ื– ื ื™ื˜ ื ื•ื™ื˜ื™ืง ืคึฟืึทืจ ืžืึทืœื˜ื™-ื‘ื™ื ืข ื‘ื•ื™ืขืŸ.

ืžืงื•ืจ: www.habr.com

ืœื™ื™ื’ืŸ ืึท ื‘ืึทืžืขืจืงื•ื ื’