เดเดพเตป เดเดฐเต เดเดพเตผ เดเดเดฟเดเตเดเดพเตป เดชเด เดฟเดเตเดเตเดฎเตเดชเตเตพ, เดเดฆเตเดฏ เดชเดพเด เดคเตเดคเดฟเตฝ เดคเดจเตเดจเต เดเตปเดธเตเดเตเดฐเดเตเดเตผ เดเดตเดฒเดฏเดฟเดฒเตเดเตเดเต เดตเดฟเดชเดฐเตเดคเดฎเดพเดฏเดฟ เดเดเดฟเดเตเดเต, เดเดจเตเดจเดฟเดเตเดเต เดจเดฟเดเตเดเตพ เด เดคเต เดเตเดฏเตเดฏเดฐเตเดคเตเดจเตเดจเต เดชเดฑเดเตเดเต - เดเดฐเดฟเดเตเดเดฒเตเด. เด เดจเดฟเดฏเดฎเด เดเดเดจเดเดฟ เดเดพเตป เดเตผเดคเตเดคเต, เดเดจเตเดฑเต เดเตเดตเดฟเดคเดเดพเดฒเด เดฎเตเดดเตเดตเตป.
เดเตเดเตเดเดฟเดเตพเดเตเดเดพเดฏเดฟ เดเตเดฐเดฟเดเดฑเดฟ เดเดธเตเดฑเตเดฑเตผ เดเดดเตเดคเดฟเดฏ "เดฎเตเดถเดฎเดพเดฏ เดเดชเดฆเตเดถเด" เดจเดฟเดเตเดเตพ เดตเดพเดฏเดฟเดเตเดเตเดจเตเดจเต, เด เดตเตผ เดเดคเต เดเตเดฏเตเดฏเดพเตป เดชเดพเดเดฟเดฒเตเดฒ เดเดจเตเดจเดคเต เดเดคเตเดฐ เดเดณเตเดชเตเดชเดคเตเดคเดฟเดฒเตเด เดธเตเดตเดพเดญเดพเดตเดฟเดเดฎเดพเดฏเตเด เดฎเดจเดธเตเดธเดฟเดฒเดพเดเตเดเตเดจเตเดจเตเดตเตเดจเตเดจเต เดจเดฟเดเตเดเตพ เดเดพเดฃเตเดจเตเดจเต.
เดเดฐเต เดกเตเดเตเดเตผเดซเดฟเตฝ เดเดเตเดเดจเต เดถเดฐเดฟเดฏเดพเดฏเดฟ เดเดดเตเดคเดพเด เดเดจเตเดจเดคเดฟเดจเตเดเตเดเตเดฑเดฟเดเตเดเต เดงเดพเดฐเดพเดณเด เดฒเตเดเดจเดเตเดเตพ เดเดดเตเดคเดฟเดฏเดฟเดเตเดเตเดฃเตเดเต. เดเดจเตเดจเดพเตฝ เดคเตเดฑเตเดฑเดพเดฏ เดกเตเดเตเดเตผเดซเดฏเดฒเตเดเตพ เดเดเตเดเดจเต เดเดดเตเดคเดพเด เดเดจเตเดจเดคเดฟเดจเตเดเตเดเตเดฑเดฟเดเตเดเตเดณเตเดณ เดจเดฟเตผเดฆเตเดฆเตเดถเดเตเดเตพ เดเดพเตป เดเดฃเตเดเดฟเดฒเตเดฒ. เดเดพเตป เด เดตเดฟเดเดตเต เดจเดฟเดเดคเตเดคเตเดเดฏเดพเดฃเต. เดเดจเดฟเดเตเดเต เดชเดฟเดจเตเดคเตเดฃ เดฒเดญเดฟเดเตเดเตเดจเตเดจ เดชเตเดฐเตเดเดเตเดฑเตเดฑเตเดเดณเดฟเตฝ, เด เดคเตเดคเดฐเด เดกเตเดเตเดเตผ เดซเดฏเดฒเตเดเตพ เดเตเดฑเดตเดพเดฏเดฟเดฐเดฟเดเตเดเดพเด.
เดเดฒเตเดฒเดพ เดเดฅเดพเดชเดพเดคเตเดฐเดเตเดเดณเตเด เดธเดพเดนเดเดฐเตเดฏเดเตเดเดณเตเด เดกเตเดเตเดเตผเดซเดฏเดฒเตเด เดธเดพเดเตเดเตฝเดชเตเดชเดฟเดเดฎเดพเดฃเต. เดจเดฟเดเตเดเตพ เดธเตเดตเดฏเด เดคเดฟเดฐเดฟเดเตเดเดฑเดฟเดฏเตเดเดฏเดพเดฃเตเดเตเดเดฟเตฝ, เดเตเดทเดฎเดฟเดเตเดเดฃเด.
เดเดฐเต เดกเตเดเตเดเตผเดซเดฏเตฝ เดธเตเดทเตเดเดฟเดเตเดเตเดจเตเดจเต, เด เดถเตเดญเดเดฐเดตเตเด เดญเดฏเดเตเดเดฐเดตเตเดฎเดพเดฃเต
เดชเตเดฑเตเดฑเตผ (เดธเตเดจเดฟเดฏเตผ เดเดพเดต/เดฑเตเดฌเดฟ/เดชเดฟเดเดเตเดเตเดชเดฟ เดกเตเดตเดฒเดชเตเดชเตผ): เดธเดนเดชเตเดฐเดตเตผเดคเตเดคเดเดจเดพเดฏ เดตเดพเดธเดฟเดฒเดฟ, เดจเดฟเดเตเดเตพ เดเดคเดฟเดจเดเด เดกเตเดเตเดเดฑเดฟเดฒเตเดเตเดเต เดเดฐเต เดชเตเดคเดฟเดฏ เดฎเตเดกเตเดฏเตเตพ เด
เดชเตโเดฒเตเดกเต เดเตเดฏเตโเดคเดฟเดเตเดเตเดฃเตเดเต?
เดตเดพเดธเดฟเดฒเดฟ (เดเตเดจเดฟเดฏเตผ): เดเดฒเตเดฒ, เดเดจเดฟเดเตเดเต เดธเดฎเดฏเดฎเดฟเดฒเตเดฒ, เด เดกเตเดเตเดเตผ เดเดชเดฏเตเดเดฟเดเตเดเต เดเดจเดฟเดเตเดเต เด
เดคเต เดฎเดจเดธเดฟเดฒเดพเดเตเดเดพเตป เดเดดเดฟเดฏเดฟเดฒเตเดฒ. เด
เดคเดฟเตฝ เดงเดพเดฐเดพเดณเด เดฒเตเดเดจเดเตเดเดณเตเดฃเตเดเต, เด
เดคเต เดคเดฒเดเดฑเดเตเดเตเดจเตเดจเดคเดพเดฃเต.
เดชเตเดฑเตเดฑเตผ: เดเดเตเดเตพเดเตเดเต เดเดฐเต เดตเตผเดทเด เดฎเตเดฎเตเดชเต เดเดฐเต เดธเดฎเดฏเดชเดฐเดฟเดงเดฟ เดเดฃเตเดเดพเดฏเดฟเดฐเตเดจเตเดจเต. เดเดพเตป เดจเดฟเดเตเดเดณเต เดธเดนเดพเดฏเดฟเดเตเดเดเตเดเต, เดเดเตเดเตพ เด เดคเต เดชเตเดฐเดเตเดฐเดฟเดฏเดฏเดฟเตฝ เดเดฃเตเดเตเดคเตเดคเตเด. เดจเดฟเดเตเดเตพเดเตเดเต เดเดจเตเดคเดพเดฃเต เดชเตเดฐเดตเตผเดคเตเดคเดฟเดเตเดเดพเดคเตเดคเดคเตเดจเตเดจเต เดเดจเตเดจเตเดเต เดชเดฑเดฏเตเด.
เดตเดพเดธเดฟเดฒเดฟ: เดเดจเดฟเดเตเดเต เดเดฐเต เด
เดเดฟเดธเตเดฅเดพเดจ เดเดฟเดคเตเดฐเด เดคเดฟเดฐเดเตเดเตเดเตเดเตเดเดพเตป เดเดดเดฟเดฏเดฟเดฒเตเดฒ, เด
เดคเดฟเดจเดพเตฝ เด
เดคเต เดตเดณเดฐเต เดเตเดฑเดตเดพเดฃเต, เดชเดเตเดทเต เดจเดฟเดเตเดเตพเดเตเดเต เดเดตเดถเตเดฏเดฎเตเดณเตเดณเดคเตเดฒเตเดฒเดพเด เดเดฃเตเดเต.
เดชเตเดฑเตเดฑเตผ: เดเดฌเตเดฃเตเดเต เดเดฟเดคเตเดฐเดฎเตเดเตเดเตเดเต, เดจเดฟเดเตเดเตพเดเตเดเดพเดตเดถเตเดฏเดฎเตเดณเตเดณเดคเตเดฒเตเดฒเดพเด เด
เดคเดฟเดฒเตเดฃเตเดเต. เดชเดฟเดจเตเดจเต เด
เดจเดพเดตเดถเตเดฏเดฎเดพเดฏ เดชเดฒเดคเตเด เดชเดฟเดจเตเดจเตเดเต เดเดชเดเดพเดฐเดชเตเดชเตเดเตเด. เดเดฑเตเดฑเดตเตเด เดชเตเดคเดฟเดฏ เดเดพเดเต เดเดเดพเตป เดฎเดฑเดเตเดเดฐเตเดคเต, เด
เดคเตเดตเดดเดฟ เดชเดคเดฟเดชเตเดชเต เดเดฒเตเดฒเดพเดฏเตเดชเตเดชเตเดดเตเด เดเดฑเตเดฑเดตเตเด เดชเตเดคเดฟเดฏเดคเดพเดฏเดฟเดฐเดฟเดเตเดเตเด.
เดกเตเดเตเดเตผเดซเดฏเดฒเดฟเตฝ เดเดฆเตเดฏ เดตเดฐเดฟ เดฆเตเดถเตเดฏเดฎเดพเดเตเดจเตเดจเต:
FROM ubuntu:latest
เดชเตเดฑเตเดฑเตผ: เด
เดเตเดคเตเดคเดคเต เดเดจเตเดคเดพเดฃเต, เดเดเตเดเดณเตเดเต เดฎเตเดกเตเดฏเตเตพ เดเดดเตเดคเดพเตป เดเดเตเดเตพ เดเดจเตเดคเดพเดฃเต เดเดชเดฏเตเดเดฟเดเตเดเดคเต?
เดตเดพเดธเดฟเดฒเดฟ: เด
เดคเดฟเดจเดพเตฝ เดฑเตเดฌเดฟ, เดเดฐเต เดตเตเดฌเต เดธเตเตผเดตเตผ เดเดฃเตเดเต, เดเตเดฑเดเตเดเต เดธเตเดตเดจ เดกเตเดฎเดฃเตเดเตพ เดฒเตเดเตเดเต เดเตเดฏเตเดฏเดฃเด.
เดชเตเดฑเตเดฑเตผ: เด
เดคเต, เดจเดฎเตเดเตเดเต เดเดจเตเดคเดพเดฃเต เดตเตเดฃเตเดเดคเต: เดฑเตเดฌเดฟ, เดฌเดฃเตเดเตโเดฒเตผ, เดจเตเดกเตโเดเตเดเตพ, เดเดฎเตเดเตเดฎเดพเดเดฟเดเตเดเต เดเดจเตเดจเดฟเดตเดฏเตเด เดฎเดฑเตเดฑเตเดจเตเดคเดพเดฃเต... เด
เดคเต เดธเดฎเดฏเด, เดคเตเตผเดเตเดเดฏเดพเดฏเตเด เดชเตเดคเดฟเดฏ เดชเดพเดเตเดเตเดเตเดเตพ เดฒเดญเดฟเดเตเดเตเดจเตเดจเดคเดฟเดจเต เดเดฐเต เด
เดชเตโเดเตเดฐเตเดกเต เดเตเดฏเตเดฏเตเด.
เดตเดพเดธเดฟเดฒเดฟ: เดเดเตเดเตพ เดเดฐเต เดเดชเดฏเตเดเตเดคเดพเดตเดฟเดจเต เดธเตเดทเตเดเดฟเดเตเดเดฟเดฒเตเดฒ, เด
เดเตเดเดจเต เดเดเตเดเตพ เดฑเตเดเตเดเดฟเดจเต เดเตเดดเดฟเดฒเดพเดฏเดฟเดฐเดฟเดเตเดเดฟเดฒเตเดฒเต?
เดชเตเดฑเตเดฑเตผ: เด
เดคเดฟเดจเต เดเดคเดฟเดเตเดเตเด, เด
เดชเตเดชเตเตพ เดจเดฟเดเตเดเตพ เดเดชเตเดชเตเดดเตเด เด
เดตเดเดพเดถเดเตเดเตพ เดเดชเดฏเตเดเดฟเดเตเดเต เดตเดฟเดกเตเดขเดฟเดเดณเดพเดเดฃเด.
เดตเดพเดธเดฟเดฒเดฟ: เดเดจเดฟเดเตเดเต เดธเดฎเดฏเด เดตเตเดฃเด, เดเดเดฆเตเดถเด 15 เดฎเดฟเดจเดฟเดฑเตเดฑเต, เดเดฒเตเดฒเดพเด เดเดฐเตเดฎเดฟเดเตเดเต เดเดฐเต เดเดฎเดพเตปเดกเดฟเดฒเดพเดเตเดเดพเตป, เดเดพเตป เด
เดคเต เดตเดพเดฏเดฟเดเตเดเต ...
(เดธเตเดเตเดทเตเดฎเดฏเตเด เดฎเดฟเดเตเดเตเดเดจเตเดฎเดพเดฏ เดเตเดจเดฟเดฏเดฑเดฟเดจเต เดชเตเดฑเตเดฑเตผ เดชเดฐเตเดทเดฎเดพเดฏเดฟ เดคเดเดธเตเดธเดชเตเดชเตเดเตเดคเตเดคเตเดจเตเดจเต.)
เดชเตเดฑเตเดฑเตผ: เดชเตเดฐเดคเตเดฏเตเด เดเดฎเดพเตปเดกเตเดเดณเดฟเตฝ เดเดดเตเดคเตเด, เด
เดคเต เดตเดพเดฏเดฟเดเตเดเดพเตป เดเดณเตเดชเตเดชเดฎเดพเดฏเดฟเดฐเดฟเดเตเดเตเด.
เดกเตเดเตเดเตผเดซเดฏเตฝ เดตเดณเดฐเตเดจเตเดจเต:
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/*
เด เดชเตเดชเตเตพ เดเดเตเตผ เดเดตเดพเดจเตเดตเดฟเดเตเดเต, DevOps (เดเดจเตเดจเดพเตฝ เดฆเตเดตเดฟเดจเตเดเตเดเดพเตพ เดเตเดเตเดคเตฝ เดเดชเตโเดธเต), เด เดฒเดฑเดฟเดตเดฟเดณเดฟเดเตเดเตเดเตเดฃเตเดเต เดเดซเตเดธเดฟเดฒเตเดเตเดเต เดชเตเดเตเดเดฟเดคเตเดคเตเดฑเดฟเดเตเดเตเดจเตเดจเต:
AI: เดชเตเดคเตเดฏ, เดจเดฟเดเตเดเดณเตเดเต เดกเตเดตเดฒเดชเตเดชเตผเดฎเดพเตผ เดตเตเดฃเตเดเตเด เดญเดเตเดทเดฃ เดกเดพเดฑเตเดฑเดพเดฌเตเดธเต เดคเดเตผเดคเตเดคเต, เดเดคเต เดเดชเตเดชเตเตพ เด เดตเดธเดพเดจเดฟเดเตเดเตเด...
เดเดฐเต เดเตเดฑเดฟเดฏ เดเดฑเตเดฑเตเดฎเตเดเตเดเดฒเดฟเดจเตเดถเตเดทเด, เดเดเตเตผ เดเดตเดพเดจเตเดตเดฟเดเตเดเต เดคเดฃเตเดเตเดเตเดเดฏเตเด เดคเดจเตเดฑเต เดธเดนเดชเตเดฐเดตเตผเดคเตเดคเดเตผ เดเดตเดฟเดเต เดเดจเตเดคเดพเดฃเต เดเตเดฏเตเดฏเตเดจเตเดจเดคเตเดจเตเดจเต เดเดฃเตเดเตเดคเตเดคเดพเตป เดคเตเดเดเตเดเตเดเดฏเตเด เดเตเดฏเตเดฏเตเดจเตเดจเต.
AI: เดจเดฟเดเตเดเตพ เดเดจเตเดคเดพเดฃเต เดเตเดฏเตเดฏเตเดจเตเดจเดคเต?
เดตเดพเดธเดฟเดฒเดฟ: เดเดฐเต เดชเตเดคเดฟเดฏ เดฎเตเดกเตเดฏเตเดณเดฟเดจเดพเดฏเดฟ เดเดฐเต เดกเตเดเตเดเตผเดซเดฏเตฝ เดธเตเดทเตเดเดฟเดเตเดเดพเตป เดชเตเดฑเตเดฑเตผ เดเดจเตเดจเต เดธเดนเดพเดฏเดฟเดเตเดเตเดจเตเดจเต.
AI: เดเดพเดจเตเดจเตเดจเต เดจเตเดเตเดเดเตเดเต... เดจเดฟเดเตเดเตพ เดเดตเดฟเดเต เดเดจเตเดคเดพเดฃเต เดเดดเตเดคเดฟเดฏเดคเต, เดจเดฟเดเตเดเตพ เดเดฐเต เดชเตเดฐเดคเตเดฏเตเด เดเดฎเดพเตปเดกเต เดเดชเดฏเตเดเดฟเดเตเดเต เดฑเดฟเดชเตเดชเตเดธเดฟเดฑเตเดฑเดฑเดฟ เดตเตเดคเตเดคเดฟเดฏเดพเดเตเดเตเดจเตเดจเต, เดเดคเตเดฐเต เด
เดงเดฟเด เดชเดพเดณเดฟเดฏเดพเดฃเต... เดเดจเตเดจเดพเตฝ เดจเดฟเดเตเดเตพ เดเตเดเดซเดฏเตฝ เดชเดเตผเดคเตเดคเดฟเดฏเดฟเดฒเตเดฒเตเดเตเดเดฟเตฝ เดกเดฟเดชเตปเดกเตปเดธเดฟเดเตพ เดเดเตเดเดจเต เดเตปเดธเตเดฑเตเดฑเดพเตพ เดเตเดฏเตเดฏเตเด! เดชเตเดคเตเดตเต, เดเดคเต เดจเดฒเตเดฒเดคเดฒเตเดฒ.
เดชเตเดฑเตเดฑเตผ: เดฆเดฏเดตเดพเดฏเดฟ เดจเดฟเดเตเดเดณเตเดเต เดฌเดฟเดธเดฟเดจเดธเตเดธเดฟเดจเตเดเตเดเตเดฑเดฟเดเตเดเต เดชเดฑเดฏเต, เดเดเตเดเตพ เด
เดคเต เดเดเตเดเดจเตเดฏเตเดเตเดเดฟเดฒเตเด เดฎเดจเดธเตเดธเดฟเดฒเดพเดเตเดเตเด.
เดเดเตเตผ เดเดตเดพเดจเตเดตเดฟเดเตเดเต เดธเดเตเดเดเดคเตเดคเตเดเต เดจเตเดเตเดตเตเตผเดชเตเดชเดฟเดเตเดเต, เดเดฐเดพเดฃเต เดกเดพเดฑเตเดฑเดพเดฌเตเดธเต เดคเดเตผเดคเตเดคเดคเตเดจเตเดจเต เดฎเดจเดธเดฟเดฒเดพเดเตเดเดพเตป เดชเตเดเตเดจเตเดจเต.
เดชเตเดฑเตเดฑเตผ: เด เดคเต, เดชเดเตเดทเต เดเตเดกเดฟเดจเตเดเตเดเตเดฑเดฟเดเตเดเต เด เดฆเตเดฆเตเดนเด เดชเดฑเดเตเดเดคเต เดถเดฐเดฟเดฏเดพเดฃเต, เดเดเตเดเตพ เด เดคเต เดเดฟเดคเตเดฐเดคเตเดคเดฟเดฒเตเดเตเดเต เดคเดณเตเดณเตเดฃเตเดเดคเตเดฃเตเดเต. เดจเดฎเตเดเตเดเต เดเดเตป เดคเดจเตเดจเต ssh เดเด เดธเตเดชเตเดชเตผเดตเตเดธเดฑเตเด เดเตปเดธเตเดฑเตเดฑเดพเตพ เดเตเดฏเตเดฏเดพเด, เด เดฒเตเดฒเดพเดคเตเดคเดชเดเตเดทเด เดเดเตเดเตพ เดกเตเดฎเดฃเตเดเตพ เดเดฐเดเดญเดฟเดเตเดเตเด.
Vasily: เด
เดชเตเดชเตเตพ เดเดพเตป เดเดฆเตเดฏเด Gemfile, Gemfile.lock เดเดจเตเดจเดฟเดต เดชเดเตผเดคเตเดคเตเด, เดคเตเดเตผเดจเตเดจเต เดเดพเตป เดเดฒเตเดฒเดพเด เดเตปเดธเตเดฑเตเดฑเดพเตพ เดเตเดฏเตเดฏเตเด, เดคเตเดเตผเดจเตเดจเต เดเดพเตป เดฎเตเดดเตเดตเตป เดชเตเดฐเตเดเดเตเดฑเตเดฑเตเด เดชเดเตผเดคเตเดคเตเด. Gemfile เดฎเดพเดฑเตเดจเตเดจเดฟเดฒเตเดฒเตเดเตเดเดฟเตฝ, เดฒเตเดฏเตผ เดเดพเดทเตเดฏเดฟเตฝ เดจเดฟเดจเตเดจเต เดเดเตเดเตเดเตเด.
เดชเตเดฑเตเดฑเตผ: เดจเดฟเดเตเดเดณเตเดจเตเดคเดฟเดจเดพเดฃเต เด เดชเดพเดณเดฟเดเดณเตเดฎเดพเดฏเดฟ, เดเดฒเตเดฒเดพเด เดเดฐเตเดธเดฎเดฏเด เดชเดเตผเดคเตเดคเตเด. เดเดเตป เดชเดเตผเดคเตเดคเตเด. เดเดฆเตเดฏ เดตเดฐเดฟ เดคเดจเตเดจเต.
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/*
เดชเตเดฑเตเดฑเตผ: เด
เดชเตเดชเตเตพ เดชเดฟเดจเตเดจเต เดเดจเตเดคเต? เดจเดฟเดเตเดเตพเดเตเดเต เดธเตเดชเตเดชเตผเดตเตเดธเตผเดเตเดเตเดณเตเดณ เดเตเตบเดซเดฟเดเดฑเตเดเดณเตเดฃเตเดเต?
เดตเดพเดธเดฟเดฒเดฟ: เดเดฒเตเดฒ, เดเดฒเตเดฒ. เดชเดเตเดทเต เดเดพเตป เดตเตเดเด เดเตเดฏเตเดฏเตเด.
เดชเตเดฑเตเดฑเตผ: เด
เดชเตเดชเตเตพ เดจเดฟเดเตเดเตพ เด
เดคเต เดเตเดฏเตเดฏเตเด. เดเดฒเตเดฒเดพเด เดธเดฎเดพเดฐเดเดญเดฟเดเตเดเตเดจเตเดจ เดเดฐเต init เดธเตเดเตเดฐเดฟเดชเตเดฑเตเดฑเต เดจเดฎเตเดเตเดเต เดเดชเตเดชเตเตพ เดตเดฐเดฏเตเดเตเดเดพเด. เดถเดฐเดฟ, เดจเดฟเดเตเดเตพ nohup เดเดชเดฏเตเดเดฟเดเตเดเต ssh เดเดฐเดเดญเดฟเดเตเดเตเด, เด
เดคเตเดตเดดเดฟ เดเดเตเดเตพเดเตเดเต เดเดฃเตเดเตเดฏเตโเดจเดฑเดฟเดฒเตเดเตเดเต เดเดฃเดเตเดฑเตเดฑเตเดเตเดฏเตโเดคเต เดเดจเตเดคเดพเดฃเต เดคเตเดฑเตเดฑเต เดธเดเดญเดตเดฟเดเตเดเดคเตเดจเตเดจเต เดเดพเดฃเดพเตป เดเดดเดฟเดฏเตเด. เดคเตเดเตผเดจเตเดจเต เดธเตเดชเตเดชเตผเดตเตเดธเดฑเต เด
เดคเต เดฐเตเดคเดฟเดฏเดฟเตฝ เดชเตเดฐเดตเตผเดคเตเดคเดฟเดชเตเดชเดฟเดเตเดเตเด. เดถเดฐเดฟ, เด
เดชเตเดชเตเตพ เดจเดฟเดเตเดเตพ เดฏเดพเดคเตเดฐเดเตเดเดพเดฐเดจเต เดเดเดฟเดเตเดเตเด.
เดเตเดฆเตเดฏเด: เดเดจเตเดจเดพเตฝ เดเดฐเต เดชเตเดฐเตเดธเดธเตเดธเต เดเดฃเตเดเดพเดฏเดฟเดฐเดฟเดเตเดเดฃเดฎเตเดจเตเดจเต เดเดพเตป เดตเดพเดฏเดฟเดเตเดเต, เด
เดคเดฟเดจเดพเตฝ เดเดจเตเดคเต เดเตเดดเดชเตเดชเด เดธเดเดญเดตเดฟเดเตเดเดคเดพเดฏเดฟ เดกเตเดเตเดเตผ เดฎเดจเดธเตเดธเดฟเดฒเดพเดเตเดเตเดเดฏเตเด เดเดฃเตเดเตเดฏเตเดจเตผ เดชเตเดจเดฐเดพเดฐเดเดญเดฟเดเตเดเตเดเดฏเตเด เดเตเดฏเตเดฏเดพเด.
เดชเดฟ: เดตเดฟเดกเตเดขเดฟเดคเตเดคเดเตเดเตพ เดเตเดฃเตเดเต เดจเดฟเดเตเดเดณเตเดเต เดคเดฒเดฏเต เดตเดฟเดทเดฎเดฟเดชเตเดชเดฟเดเตเดเดฐเตเดคเต. เดชเตเดคเตเดตเต, เดเดเตเดเดจเต? เดเดฐเต เดชเตเดฐเดเตเดฐเดฟเดฏเดฏเดฟเตฝ เดเดคเตเดฒเตเดฒเดพเด เดเดเตเดเดจเต เดชเตเดฐเดตเตผเดคเตเดคเดฟเดชเตเดชเดฟเดเตเดเดพเด? เดเดเตเตผ เดเดตเดพเดจเตเดตเดฟเดเตเดเต เดธเตเดฅเดฟเดฐเดคเดฏเตเดเตเดเตเดฑเดฟเดเตเดเต เดเดฟเดจเตเดคเดฟเดเตเดเดเตเดเต, เด
เดฏเดพเตพเดเตเดเต เดถเดฎเตเดชเดณเด เดฒเดญเดฟเดเตเดเตเดจเตเดจเดคเต เดตเตเดฑเตเดคเตเดฏเดฒเตเดฒ. เดเตเดกเต เดเดดเตเดคเตเด เดเดจเตเดจเดคเดพเดฃเต เดเดเตเดเดณเตเดเต เดเตเดฒเดฟ. เดชเตเดคเตเดตเต, เดเดเตเดเตพ เด
เดตเดจเตเดตเตเดฃเตเดเดฟ เดกเตเดเตเดเตเดซเดฟเตฝ เดเดดเตเดคเดฟเดฏเดคเดฟเดจเต เดจเดจเตเดฆเดฟ เดชเดฑเดฏเดเตเดเต.
10 เดฎเดฟเดจเดฟเดฑเตเดฑเตเด เดชเตเดเตเดเดเดณเตเดเตเดเตเดฑเดฟเดเตเดเตเดณเตเดณ เดฐเดฃเตเดเต เดตเตเดกเดฟเดฏเตเดเดณเตเด เดชเดฟเดจเตเดจเตเดเต.
เดเตเดฆเตเดฏเด: เดเดพเตป เดเดฒเตเดฒเดพเด เดเตเดฏเตเดคเต. เดเดพเตป เดเตเดเตเดคเตฝ เด
เดญเดฟเดชเตเดฐเดพเดฏเดเตเดเตพ เดเตเตผเดคเตเดคเต.
เดชเดฟ: เดเดจเตเดจเต เดเดพเดฃเดฟเดเตเดเต!
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โ]
เดชเดฟ: เดเตเดณเตเดณเดพเด, เดเดจเดฟเดเตเดเดฟเดคเต เดเดทเตเดเดฎเดพเดฃเต. เด เดญเดฟเดชเตเดฐเดพเดฏเดเตเดเตพ เดฑเดทเตเดฏเตป เดญเดพเดทเดฏเดฟเดฒเดพเดฃเต, เดธเตเดเดฐเตเดฏเดชเตเดฐเดฆเดตเตเด เดตเดพเดฏเดฟเดเตเดเดพเดตเตเดจเตเดจเดคเตเดฎเดพเดฃเต, เดเดฒเตเดฒเดพเดตเดฐเตเด เด เดเตเดเดจเต เดชเตเดฐเดตเตผเดคเตเดคเดฟเดเตเดเตเด. เดเดพเตป เดจเดฟเดเตเดเดณเต เดเดฒเตเดฒเดพเด เดชเด เดฟเดชเตเดชเดฟเดเตเดเต, เดฌเดพเดเตเดเดฟ เดจเดฟเดเตเดเตพเดเตเดเต เดธเตเดตเดฏเด เดเตเดฏเตเดฏเดพเด. เดจเดฎเตเดเตเดเต เดเดพเดชเตเดชเดฟ เดเตเดเดฟเดเตเดเดพเตป เดชเตเดเดพเด...
เดถเดฐเดฟ, เดเดชเตเดชเตเตพ เดเดเตเดเตพเดเตเดเต เดคเดฟเดเดเตเดเตเด เดญเดฏเดเตเดเดฐเดฎเดพเดฏ เดเดฐเต เดกเตเดเตเดเตผเดซเดฏเตฝ เดเดฃเตเดเต, เด เดคเต เดเดเตเตผ เดเดตเดพเดจเตเดตเดฟเดเตเดเดฟเดจเต เดเดชเตเดเตเดทเดฟเดเตเดเดพเตป เดเดเตเดฐเดนเดฟเดเตเดเตเดจเตเดจเต, เด เดตเดจเตเดฑเต เดเดฃเตเดฃเตเดเตพ เดเดฐเดพเดดเตเดเดคเตเดคเตเดเตเดเต เดตเตเดฆเดจเดฟเดชเตเดชเดฟเดเตเดเตเด. Dockerfile, เดคเตเตผเดเตเดเดฏเดพเดฏเตเด, เดเดคเดฟเดฒเตเด เดฎเตเดถเดฎเดพเดฏเตเดเตเดเดพเด, เดชเตเตผเดฃเดคเดฏเตเดเตเดเต เดชเดฐเดฟเดงเดฟเดฏเดฟเดฒเตเดฒ. เดเดจเตเดจเดพเตฝ เดเดฐเต เดคเตเดเดเตเดเดคเตเดคเดฟเดจเดพเดฏเดฟ, เดเดคเต เดเตเดฏเตเดฏเตเด.
เดเตเดฐเดฟเดเดฑเดฟ เดเดธเตเดฑเตเดฑเดฑเดฟเดจเตเดฑเต เดเดฐเต เดเดฆเตเดงเดฐเดฃเดฟเดฏเตเดเต เด เดตเดธเดพเดจเดฟเดชเตเดชเดฟเดเตเดเดพเตป เดเดพเตป เดเดเตเดฐเดนเดฟเดเตเดเตเดจเตเดจเต:
เดจเดฟเดเตเดเตพเดเตเดเต เดเดคเตเดตเดฐเต เดเดฑเดชเตเดชเดฟเดฒเตเดฒเตเดเตเดเดฟเตฝ
เดเดเตเดเตพ เดเตเดตเดฟเดค เดชเดพเดค เดคเดฟเดฐเดเตเดเตเดเตเดคเตเดคเต,
เดชเดฟเดจเตเดจเต เดเดจเตเดคเดฟเดจเดพเดฃเตเดจเตเดจเต เดจเดฟเดเตเดเตพเดเตเดเดฑเดฟเดฏเดฟเดฒเตเดฒ
เดจเดฟเดเตเดเดณเตเดเต เดคเตเดดเดฟเตฝ เดฏเดพเดคเตเดฐ เดเดฐเดเดญเดฟเดเตเดเตเด,
เดเดเดจเดพเดดเดฟเดเดณเดฟเดฒเต เดฌเตพเดฌเตเดเตพ เดคเดเตผเดเตเดเตเด -
เดเดณเตเดเตพ เดจเดฟเดเตเดเดณเตเดเต "เดจเดจเตเดฆเดฟ" เดชเดฑเดฏเตเด.
เดจเดฟเดเตเดเตพ เดเดจเดเตเดเดณเต เดธเดนเดพเดฏเดฟเดเตเดเตเด
เดตเตเดฆเตเดฏเตเดคเดฟ เดฒเดพเดญเดฟเดเตเดเตเด.
เด เดตเดฒเดเดฌเด: www.habr.com