เปเบกเบทเปเบญเบเปเบญเบเบฎเบฝเบเบเบฑเบเบฅเบปเบ, เปเบเบเบปเบเบฎเบฝเบเบเปเบฒเบญเบดเบ, เบเบนเปเบชเบญเบเปเบเปเบเบฑเบเบฅเบปเบเปเบเบปเปเบฒเปเบเปเบเบชเบตเปเปเบเบเปเบเบเบฒเบเบเบฑเบเบเบฑเบ, เปเบฅเบฐเบซเบผเบฑเบเบเบฒเบเบเบฑเปเบเบเบญเบเบงเปเบฒเปเบเบปเปเบฒเบเปเปเบเบงเบเปเบฎเบฑเบเปเบเบงเบเบฑเปเบ - เบเปเปเปเบเบตเบเปเบฎเบฑเบเปเบฅเบตเบ. เบเปเบญเบเบเบทเปเบเบปเบเบฅเบฐเบเบฝเบเบเบตเปเบเบฑเบเบเบตเปเบฅเบฐเบเบฐเบซเบผเบญเบเบเบตเบงเบดเบเบเบญเบเบเปเบญเบ.
เบเปเบฒเบเปเบเปเบญเปเบฒเบ "เบเปเบฒเปเบเบฐเบเปเบฒเบเบตเปเบเปเปเบเบต" เปเบเบ Grigory Oster เบเปเปเบเบฑเบเปเบเบฑเบเบเปเบญเบ, เปเบฅเบฐเบเปเบฒเบเปเบซเบฑเบเบงเปเบฒเบกเบฑเบเบเปเบฒเบเปเบฅเบฐเปเบเบฑเบเบเปเบฒเบกเบฐเบเบฒเบเบเบตเปเบกเบฑเบเบฎเบธเปเบเบเบถเปเบเบงเปเบฒเบเบงเบเปเบเบปเบฒเบเปเปเบเบงเบเปเบฎเบฑเบเบชเบดเปเบเบเบตเป.
เบเบปเบเบเบงเบฒเบกเบเปเบฒเบเบงเบเบซเบผเบฒเบเปเบเปเบเบทเบเบเบฝเบเบเปเบฝเบงเบเบฑเบเบงเบดเบเบตเบเบฒเบเบเบฝเบ Dockerfile เบขเปเบฒเบเบเบทเบเบเปเบญเบ. เปเบเปเบเปเบญเบเบเปเปเปเบเปเบเบปเบเบเปเบฒเปเบเบฐเบเปเบฒเบเปเบฝเบงเบเบฑเบเบงเบดเบเบตเบเบฒเบเบเบฝเบ Dockerfiles เบเบตเปเบเปเปเบเบทเบเบเปเบญเบ. เบเปเบญเบเบเปเบฒเบฅเบฑเบเบเบทเปเบกเบเปเบญเบเบซเบงเปเบฒเบเบเบตเป. เปเบฅเบฐเบเบฒเบเบเบตเปเบเปเบเบเบเบฒเบเบเบตเปเบเปเบญเบเปเบเปเบฎเบฑเบเบเบฒเบเบชเบฐเบซเบเบฑเบเบชเบฐเบซเบเบนเบ, เบเบฐเบกเบต dockerfiles เบเบฑเปเบเบเปเบฒเบงเบซเบเปเบญเบเบฅเบปเบ.
เบฅเบฑเบเบชเบฐเบเบฐ, เบชเบฐเบเบฒเบเบฐเบเบฒเบเปเบฅเบฐ Dockerfile เบเบฑเบเบซเบกเบปเบเปเบกเปเบเบชเบปเบกเบกเบธเบเบเบดเบเบฒเบ. เบเปเบฒเบเปเบฒเบเบฎเบฑเบเบฎเบนเปเบเบปเบงเปเบญเบ, เบเปเบญเบฐเปเบ.
เบเบฒเบเบชเปเบฒเบ Dockerfile, ominous เปเบฅเบฐเบเบตเปเบฎเปเบฒเบ
Peter (เบเบนเปเบเบฑเบเบเบฐเบเบฒเบญเบฒเบงเบธเปเบช java/rubby/php): เปเบเบทเปเบญเบเบฎเปเบงเบกเบเบฒเบ Vasily, เบเปเบฒเบเปเบเปเบญเบฑเบเปเบซเบฅเบเปเบกเบเบนเบเปเบซเบกเปเปเบชเป Docker เปเบฅเปเบงเบเป?
Vasily (junior): เบเปเป, เบเปเบญเบเบเปเปเบกเบตเปเบงเบฅเบฒ, เบเปเบญเบเบเปเปเบชเบฒเบกเบฒเบเบเบดเบเปเบเปเบเบฑเบ Docker เบเบตเป. เบกเบตเบซเบผเบฒเบเบเบปเบเบเบงเบฒเบกเบเปเบฝเบงเบเบฑเบเบกเบฑเบ, เบกเบฑเบ dizzying.
เปเบเปเบ: เบเบงเบเปเบฎเบปเบฒเบกเบตเบเปเบฒเบเบปเบเปเบงเบฅเบฒเบซเบเบถเปเบเบเบตเบเปเบญเบเบซเบเปเบฒเบเบตเป. เปเบซเปเบเปเบญเบเบเปเบงเบเปเบเบปเปเบฒ, เบเบงเบเปเบฎเบปเบฒเบเบฐเบเบดเบเบกเบฑเบเบญเบญเบเปเบเบเบฐเบเบงเบเบเบฒเบ. เบเบญเบเบเปเบญเบเบงเปเบฒเบญเบฑเบเปเบเปเบเปเบเปเปเปเบเปเบชเบณเบฅเบฑเบเปเบเบปเปเบฒ.
Vasily: เบเปเบญเบเบเปเปเบชเบฒเบกเบฒเบเปเบฅเบทเบญเบเบฎเบนเบเบเบฒเบเบเบทเปเบเบเบฒเบเปเบเบทเปเบญเปเบซเปเบกเบฑเบเบซเบเปเบญเบ, เปเบเปเบกเบตเบเบธเบเบขเปเบฒเบเบเบตเปเบเปเบฒเบเบเปเบญเบเบเบฒเบ.
Peter: เปเบญเบปเบฒเบฎเบนเบเบเบฒเบ ubuntu, เบกเบฑเบเบกเบตเบเบธเบเบชเบดเปเบเบเบตเปเบเปเบฒเบเบเปเบญเบเบเบฒเบ. เปเบฅเบฐเบชเบดเปเบเบเบตเปเบเปเปเบเปเบฒเปเบเบฑเบเบเปเบฒเบเบงเบเบซเบผเบฒเบเบเบฐเบกเบฒเปเบ handy เบเปเปเบกเบฒ. เปเบฅเบฐเบขเปเบฒเบฅเบทเบกเปเบชเปเปเบเบฑเบเบซเบผเปเบฒเบชเบธเบเปเบเบทเปเบญเปเบซเปเปเบงเบตเบเบฑเบเบซเบผเปเบฒเบชเบธเบเบชเบฐเปเปเบต.
เปเบฅเบฐเปเบเบงเบเปเบฒเบญเบดเบเบเบฐเบเบฒเบเบปเบเบขเบนเปเปเบ Dockerfile:
FROM ubuntu:latest
เปเบเปเบ: เบเปเปเปเบ, เบเบงเบเปเบฎเบปเบฒเปเบเปเบซเบเบฑเบเปเบเบทเปเบญเบเบฝเบเปเบกเบเบนเบเบเบญเบเบเบงเบเปเบฎเบปเบฒ?
Vasily: เบเบฑเปเบเบเบฑเปเบ ruby, เบกเบตเปเบเบทเปเบญเบเปเบกเปเบเปเบฒเบเปเบงเบฑเบเปเบเบเปเปเบฅเบฐ daemons เบเบฒเบเบเปเบฅเบดเบเบฒเบเบเบนเปเบเบงเบเบเบทเบเปเบเบตเบเบเบปเบง.
เปเบเปเบ: เปเบกเปเบเปเบฅเปเบง, เบเบงเบเปเบฎเบปเบฒเบเปเบญเบเบเบฒเบเบซเบเบฑเบ: ruby, bundler, nodejs, imagemagick เปเบฅเบฐเบชเบดเปเบเบญเบทเปเบเปเบ ... เปเบฅเบฐเปเบเปเบงเบฅเบฒเบเบฝเบงเบเบฑเบ, เปเบฎเบฑเบเบเบฒเบเบเบปเบเบฅเบฐเบเบฑเบเปเบเบทเปเบญเปเบซเปเปเบเปเปเบเบฑเบเปเบเบเปเบซเบกเป.
Vasily: เปเบฅเบฐเบเบงเบเปเบฎเบปเบฒเบเบฐเบเปเปเบชเปเบฒเบเบเบนเปเปเบเปเปเบเบทเปเบญเบงเปเบฒเบเบงเบเปเบฎเบปเบฒเบเบฐเบเปเปเบขเบนเปเบเบฒเบเปเบเปเบฎเบฒเบเบเป?
เปเบเปเบ: Fuck เบกเบฑเบ, เบซเบผเบฑเบเบเบฒเบเบเบฑเปเบเบเปเบฒเบเบเบฑเบเบเปเบญเบ fool เบเบฐเบกเบฒเบเบเบตเปเบกเบตเบชเบดเบเบเบด.
Vasily: เบเปเบญเบเบเปเบญเบเบเบฒเบเปเบงเบฅเบฒ, เบเบฐเบกเบฒเบ 15 เบเบฒเบเบต, เปเบเบทเปเบญเปเบญเบปเบฒเบกเบฑเบเบเบฑเบเบซเบกเบปเบเบฎเปเบงเบกเบเบฑเบเปเบเบฑเบเบเปเบฒเบชเบฑเปเบเบเบฝเบง, เบเปเบญเบเบญเปเบฒเบเบงเปเบฒ ...
(เปเบเปเบเบเบฑเบเบเบฑเบเบซเบงเบฐเบเบงเบเบเปเบญเบเบเปเบญเบเบเบตเปเบชเบธเบเบธเบก เปเบฅเบฐเบชเบฐเบซเบผเบฒเบเบซเบผเบฒเบ.)
เปเบเปเบ: เบเบฝเบเปเบเบเปเบฒเบชเบฑเปเบเปเบเบเบเปเบฒเบเบซเบฒเบ, เบกเบฑเบเบเบฐเบญเปเบฒเบเบเปเบฒเบเบเบถเปเบ.
Dockerfile เปเบเบตเบเปเบซเบเป:
FROM ubuntu:latest
RUN apt-get update
RUN apt-get upgrade
RUN apt-get -y install libpq-dev imagemagick gsfonts ruby-full
RUN gem install bundler
RUN curl -sL https://deb.nodesource.com/setup_9.x | sudo bash -
RUN apt-get install -y nodejs
RUN bundle install --without development test --path vendor/bundle
RUN rm -rf /usr/local/bundle/cache/*.gem
RUN apt-get clean
RUN rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*
เบซเบผเบฑเบเบเบฒเบเบเบฑเปเบ, Igor Ivanovich, DevOps (เปเบเป Ops เบซเบผเบฒเบเบเปเบงเบฒ Dev), เบฅเบฐเปเบเบตเบเปเบเบปเปเบฒเปเบเปเบเบซเปเบญเบเบเบฒเบเปเบเบเบฎเปเบญเบเบงเปเบฒ:
AI: Petya, เบเบนเปเบเบฑเบเบเบฐเบเบฒเบเบญเบเปเบเบปเปเบฒเปเบเปเบเปเบฒเบฅเบฒเบเบเบฒเบเบเปเปเบกเบนเบเบญเบฒเบซเบฒเบเบญเบตเบเปเบเบทเปเบญเบซเบเบถเปเบ, เบเบตเปเบเบฐเบชเบดเปเบเบชเบธเบ ...
เบซเบผเบฑเบเบเบฒเบเบเบฒเบเบเบฐเบเบฐเบเบฑเบเปเบฅเบฑเบเบเปเบญเบ, Igor Ivanovich เปเบขเบฑเบเบฅเบปเบเปเบฅเบฐเปเบฅเบตเปเบกเบเบญเบเบซเบฒเบชเบดเปเบเบเบตเปเปเบเบทเปเบญเบเบฎเปเบงเบกเบเบฒเบเบเบญเบเบฅเบฒเบงเปเบฎเบฑเบเบขเบนเปเบเบตเปเบเบตเป.
AI: เปเบเบปเปเบฒเปเบฎเบฑเบเบซเบเบฑเบเบขเบนเป?
Vasily: Peter เบเปเบฒเบฅเบฑเบเบเปเบงเบเบเปเบญเบเบชเปเบฒเบ Dockerfile เบชเปเบฒเบฅเบฑเบเปเบกเบเบนเบเปเบซเบกเป.
AI: เปเบซเปเบเปเบญเบเปเบเบดเปเบ ... เปเบเบปเปเบฒเบเบฝเบเบซเบเบฑเบเบขเบนเปเบเบตเปเบเบตเป, เปเบเบปเปเบฒเปเบฎเบฑเบเบเบงเบฒเบกเบชเบฐเบญเบฒเบเบเปเบญเบเปเบเบฑเบเบกเปเบฝเบเบเปเบงเบเบเปเบฒเบชเบฑเปเบเปเบเบเบเปเบฒเบเบซเบฒเบ, เบเบตเปเปเบกเปเบเบเบฑเปเบเปเบเบตเปเบกเปเบเบตเบก ... เปเบเปเปเบเบปเปเบฒเบเบฐเบเบดเบเบเบฑเปเบ dependencies เปเบเบงเปเบเบเปเบฒเบเปเบฒเบเบเปเปเปเบเปเบเบฑเบเบฅเบญเบ Gemfile! เปเบฅเบฐเปเบเบเบเบปเปเบงเปเบ, เบเบตเปเปเบกเปเบเบเปเปเบเบต.
เปเบเปเบ: เบเบฐเบฅเบธเบเบฒเปเบเบเปเบฝเบงเบเบฑเบเบเบธเบฅเบฐเบเบดเบเบเบญเบเปเบเบปเปเบฒ, เบเบงเบเปเบฎเบปเบฒเบเบฐเบเบดเบเปเบเบงเปเบ.
Igor Ivanovich เบเบญเบเบซเบฒเบเปเบเบขเปเบฒเบเปเบชเบเปเบชเบปเปเบฒเปเบฅเบฐเบญเบญเบเปเบเบเบญเบเบซเบฒเบเบนเปเบเบตเปเบเปเบฒเบฅเบฒเบเบเบฒเบเบเปเปเบกเบนเบ.
เปเบเปเบ: เปเบกเปเบเปเบฅเปเบง, เปเบเปเบฅเบฒเบงเปเบงเบปเปเบฒเบเบทเบเบเปเบญเบเบเปเบฝเบงเบเบฑเบเบฅเบฐเบซเบฑเบ, เบเบงเบเปเบฎเบปเบฒเบเปเบฒเปเบเบฑเบเบเปเบญเบเบเบนเปเบกเบฑเบเปเบเบปเปเบฒเปเบเปเบเบฎเบนเบเบเบฒเบ. เปเบฅเบฐเปเบซเปเบเบดเบเบเบฑเปเบ ssh เปเบฅเบฐเบเบนเปเปเบเบดเปเบเปเบเบเปเบเบเบฑเบเบเบต, เบเปเบฒเบเปเปเบเบฑเปเบเบเบฑเปเบเบเบงเบเปเบฎเบปเบฒเบเบฐเปเบฅเบตเปเบกเบเบปเปเบ daemon.
Vasily: เบซเบผเบฑเบเบเบฒเบเบเบฑเปเบเบเปเบญเบเบเบฐเบเบฑเบเบฅเบญเบ Gemfile เปเบฅเบฐ Gemfile.lock, เบซเบผเบฑเบเบเบฒเบเบเบฑเปเบเบเปเบญเบเบเบฐเบเบดเบเบเบฑเปเบเบเบธเบเบขเปเบฒเบ, เปเบฅเบฐเบซเบผเบฑเบเบเบฒเบเบเบฑเปเบเบเปเบญเบเบเบฐเบเบฑเบเบฅเบญเบเปเบเบเบเบฒเบเบเบฑเบเบซเบกเบปเบ. เบเปเบฒ Gemfile เบเปเปเบเปเบฝเบเปเบเบ, เบเบฑเปเบเบเบฐเบเบทเบเปเบญเบปเบฒเบกเบฒเบเบฒเบ cache.
เปเบเปเบ: เปเบเบฑเบเบซเบเบฑเบเปเบเบปเปเบฒเบเบถเปเบเบกเบตเบเบฑเปเบเปเบซเบผเบปเปเบฒเบเบตเป, เบเบฑเบเบฅเบญเบเบเบธเบเบขเปเบฒเบเปเบเบเบฑเปเบเบเบฝเบง. เบชเบณเปเบเบปเบฒเบเบฑเบเบเบต. เปเบชเบฑเปเบเบเปเบฒเบญเบดเบเบซเบผเบฒเบ.
เบเบฝเบงเบเบตเป Dockerfile เปเบเบดเปเบเบเบทเบงเปเบฒเบเบตเป:
FROM ubuntu:latest
COPY ./ /app
WORKDIR /app
RUN apt-get update
RUN apt-get upgrade
RUN apt-get -y install libpq-dev imagemagick gsfonts ruby-full ssh supervisor
RUN gem install bundler
RUN curl -sL https://deb.nodesource.com/setup_9.x | sudo bash -
RUN apt-get install -y nodejs
RUN bundle install --without development test --path vendor/bundle
RUN rm -rf /usr/local/bundle/cache/*.gem
RUN apt-get clean
RUN rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*
เปเบเปเบ: เบเบฑเปเบเบเบฑเปเบ, เบเปเปเปเบเปเบกเปเบเบซเบเบฑเบ? เบเปเบฒเบเบกเบต config เบชเปเบฒเบฅเบฑเบ supervisor เบเป?
Vasily: เบเปเป, เบเปเป. เปเบเปเบเปเบญเบเบเบฐเปเบฎเบฑเบเบกเบฑเบเปเบง.
เปเบเปเบ: เปเบฅเปเบงเปเบเบปเปเบฒเบเบฐเปเบฎเบฑเบเบกเบฑเบ. เบเบญเบเบเบตเปเปเบซเปเปเบเปเบกเบเบปเบงเปเบฑเบเบชเบท init เบเบตเปเบเบฐเปเบเบตเบเบเบปเบงเบเบธเบเบขเปเบฒเบ. เบเบปเบเบฅเบปเบ, เบเบฑเปเบเบเบฑเปเบเบเปเบฒเบเปเบฅเบตเปเบกเบเบปเปเบ ssh, เบเปเบงเบ nohup, เปเบเบทเปเบญเปเบซเปเบเบงเบเปเบฎเบปเบฒเบชเบฒเบกเบฒเบเปเบเบทเปเบญเบกเบเปเปเบเบฑเบ container เปเบฅเบฐเปเบเบดเปเบเบชเบดเปเบเบเบตเปเบเบดเบเบเบฒเบ. เบซเบผเบฑเบเบเบฒเบเบเบฑเปเบ, เบเปเบฒเปเบเบตเบเบเบฒเบเบเบนเปเบเบธเบกเบเบฒเบเปเบเบเบฒเบเบเบฝเบงเบเบฑเบ. เปเบฅเปเบง, เบเปเบฒเบเบเบฝเบเปเบเปเปเบฅเปเบเบเบนเปเปเบเบเบชเบฒเบ.
เบเบฒเบก: เปเบเปเบเปเบญเบเบญเปเบฒเบเบงเปเบฒเบเบงเบเบกเบตเบเบฐเบเบงเบเบเบฒเบเบซเบเบถเปเบ, เบเบฑเปเบเบเบฑเปเบ Docker เบเบฐเบฎเบนเปเบงเปเบฒเบกเบตเบเบฒเบเบขเปเบฒเบเบเบดเบเบเบฒเบเปเบฅเบฐเบชเบฒเบกเบฒเบ restart container เปเบเป.
เบ: เบขเปเบฒเบฅเบปเบเบเบงเบเบซเบปเบงเบเบญเบเปเบเบปเปเบฒเบเปเบงเบเปเบฅเบทเปเบญเบเปเบฎเปเบชเบฒเบฅเบฐ. เปเบฅเบฐเปเบเบเบเบปเปเบงเปเบ, เปเบเบงเปเบ? เบเปเบฒเบเบเปเบฒเปเบเบตเบเบเบฒเบเบเบฑเบเบซเบกเบปเบเบเบตเปเปเบเบงเปเบเปเบเบเบฐเบเบงเบเบเบฒเบเบเบฝเบง? เปเบซเป Igor Ivanovich เบเบดเบเบเปเบฝเบงเบเบฑเบเบเบงเบฒเบกเบซเบกเบฑเปเบเบเบปเบ, เบกเบฑเบเบเปเปเปเบกเปเบเบชเปเบฒเบฅเบฑเบเบเปเปเบกเบตเบซเบเบฑเบเบเบตเปเบฅเบฒเบงเปเบเปเบฎเบฑเบเปเบเบดเบเปเบเบทเบญเบ. เบงเบฝเบเบเบญเบเบเบงเบเปเบฎเบปเบฒเปเบกเปเบเบเบฒเบเบเบฝเบเบฅเบฐเบซเบฑเบ. เปเบฅเบฐเปเบเบเบเบปเปเบงเปเบ, เปเบซเปเบฅเบฒเบงเปเบงเบปเปเบฒเบงเปเบฒเบเบญเบเปเบเบเบตเปเบเบงเบเปเบฎเบปเบฒเบเบฝเบ Dockefile เบชเปเบฒเบฅเบฑเบเบฅเบฒเบง.
10 เบเบฒเบเบตเปเบฅเบฐเบชเบญเบเบงเบดเบเบตเปเบญเบเปเบฝเบงเบเบฑเบเปเบกเบงเบเปเปเบกเบฒ.
เบเบฒเบก: เบเปเบญเบเปเบเปเปเบฎเบฑเบเบเบธเบเบขเปเบฒเบเปเบฅเปเบง. เบเปเบฒเบเบฐเปเบเบปเปเบฒเปเบเปเปเบเบตเปเบกเบเปเบฒเปเบซเบฑเบเปเบเบตเปเบกเปเบเบตเบก.
P: เบชเบฐเปเบเบเปเบซเปเปเบซเบฑเบ!
เปเบงเบตเบเบฑเบเบซเบผเปเบฒเบชเบธเบเบเบญเบ Dockerfile:
FROM ubuntu:latest
# ะะพะฟะธััะตะผ ะธัั
ะพะดะฝัะน ะบะพะด
COPY ./ /app
WORKDIR /app
# ะะฑะฝะพะฒะปัะตะผ ัะฟะธัะพะบ ะฟะฐะบะตัะพะฒ
RUN apt-get update
# ะะฑะฝะพะฒะปัะตะผ ะฟะฐะบะตัั
RUN apt-get upgrade
# ะฃััะฐะฝะฐะฒะปะธะฒะฐะตะผ ะฝัะถะฝัะต ะฟะฐะบะตัั
RUN apt-get -y install libpq-dev imagemagick gsfonts ruby-full ssh supervisor
# ะฃััะฐะฝะฐะฒะปะธะฒะฐะตะผ bundler
RUN gem install bundler
# ะฃััะฐะฝะฐะฒะปะธะฒะฐะตะผ nodejs ะธัะฟะพะปัะทัะตััั ะดะปั ัะฑะพัะบะธ ััะฐัะธะบะธ
RUN curl -sL https://deb.nodesource.com/setup_9.x | sudo bash -
RUN apt-get install -y nodejs
# ะฃััะฐะฝะฐะฒะปะธะฒะฐะตะผ ะทะฐะฒะธัะธะผะพััะธ
RUN bundle install --without development test --path vendor/bundle
# ะงะธััะธะผ ะทะฐ ัะพะฑะพะน ะบััะธ
RUN rm -rf /usr/local/bundle/cache/*.gem
RUN apt-get clean
RUN rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*
# ะะฐะฟััะบะฐะตะผ ัะบัะธะฟั, ะฟัะธ ััะฐััะต ะบะพะฝัะตะนะฝะตัะฐ, ะบะพัะพััะน ะทะฐะฟัััะธั ะฒัะต ะพััะฐะปัะฝะพะต.
CMD [โ/app/init.shโ]
P: เบเบดเปเบเปเบซเบเป, เบเปเบญเบเบกเบฑเบเบกเบฑเบ. เปเบฅเบฐเบเปเบฒเปเบซเบฑเบเปเบเบฑเบเบเบฒเบชเบฒเบฅเบฑเบเปเบเบ, เบชเบฐเบเบงเบเปเบฅเบฐเบญเปเบฒเบเปเบเป, เบเบธเบเบเบปเบเบเบฐเปเบฎเบฑเบเบงเบฝเบเปเบเบเบเบฑเปเบ. เบเปเบญเบเปเบเปเบชเบญเบเปเบเบปเปเบฒเบเบธเบเบขเปเบฒเบ, เปเบเบปเปเบฒเบชเบฒเบกเบฒเบเปเบฎเบฑเบเบชเปเบงเบเบเบตเปเปเบซเบผเบทเบญเบเปเบงเบเบเบปเบงเปเบญเบ. เปเบเบเบดเบเบเบฒเปเบเบเบณเบเบฑเบ...
เปเบฅเปเบง, เบเบญเบเบเบตเปเบเบงเบเปเบฎเบปเบฒเบกเบต Dockerfile เบเบตเปเบเบตเปเบฎเปเบฒเบเบขเปเบฒเบเบชเบปเบกเบเบนเบ, เบชเบฒเบเบเบฒเบเบตเปเบเบฐเปเบฎเบฑเบเปเบซเป Igor Ivanovich เบเปเบญเบเบเบฒเบเปเบเบปเบฒเปเบฅเบฐเบเบฒเบเบญเบเบฅเบฒเบงเบเบฐเปเบเบฑเบเบเบงเบเบญเบตเบเบญเบฒเบเบดเบเบซเบเบถเปเบ. Dockerfile, เปเบเปเบเบญเบ, เบญเบฒเบเบเบฐเบฎเปเบฒเบเปเบฎเบเบเบงเปเบฒเปเบเบปเปเบฒ, เบเปเปเบกเบตเบเบญเบเปเบเบเบเปเบฒเบเบฑเบเบเปเปเบเบงเบฒเบกเบชเบปเบกเบเบนเบเปเบเบ. เปเบเปเบชเปเบฒเบฅเบฑเบเบเบฒเบเปเบฅเบตเปเบกเบเบปเปเบ, เบเบตเปเบเบฐเปเบฎเบฑเบ.
เบเปเบฒเบเบฐเปเบเบปเปเบฒเบเปเบชเบดเปเบเบชเบธเบเบเปเบงเบเบเปเบฒเปเบงเบปเปเบฒเบเบฒเบ Grigory Oster:
เบเปเบฒเบเปเบฒเบเบเปเปเปเบเปเปเบเบงเปเบฒเปเบเบทเปเบญ
เบเบงเบเปเบฎเบปเบฒเปเบฅเบทเบญเบเปเบชเบฑเปเบเบเบฒเบเปเบเบเบตเบงเบดเบ,
เปเบฅเบฐเบเปเบฒเบเบเปเปเบฎเบนเปเบงเปเบฒเปเบเบฑเบเบซเบเบฑเบ
เปเบฅเบตเปเบกเบเบปเปเบเบเบฒเบเปเบเบตเบเบเบฒเบเปเบฎเบเบเบฒเบเบเบญเบเบเปเบฒเบ,
เบซเบฑเบเปเบเบกเปเบเปเบเบซเปเบญเบเปเบเบ -
เบเบฐเบเบฒเบเบปเบเบเบฐเปเบงเบปเปเบฒเบงเปเบฒ "เบเปเบเบญเบเปเบ" เบเบฑเบเบเปเบฒเบ.
เปเบเบปเปเบฒเบเบฐเบเปเบงเบเบเบฐเบเบฒเบเบปเบ
เบเบฐเบขเบฑเบเปเบเบเปเบฒ.
เปเบซเบผเปเบเบเปเปเบกเบนเบ: www.habr.com