āĻāĻŽāĻŋ āĻ¯āĻāĻ¨ āĻāĻžāĻĄāĻŧāĻŋ āĻāĻžāĻ˛āĻžāĻ¤ā§ āĻļāĻŋāĻāĻāĻŋāĻ˛āĻžāĻŽ, āĻĒā§āĻ°āĻĨāĻŽ āĻĒāĻžāĻ ā§ āĻĒā§āĻ°āĻļāĻŋāĻā§āĻˇāĻ āĻāĻ˛ā§āĻā§ āĻĒāĻĨā§ āĻŽā§āĻĄāĻŧā§ āĻāĻžāĻĄāĻŧāĻŋ āĻāĻžāĻ˛āĻžāĻ˛ā§āĻ¨, āĻāĻŦāĻ āĻ¤āĻžāĻ°āĻĒāĻ° āĻŦāĻ˛āĻ˛ā§āĻ¨ āĻ¯ā§ āĻāĻĒāĻ¨āĻžāĻ° āĻāĻāĻŋ āĻāĻ°āĻž āĻāĻāĻŋāĻ¤ āĻ¨āĻ¯āĻŧ - āĻāĻāĻ¨āĻ āĻ¨āĻžāĨ¤ āĻāĻŽāĻŋ āĻ āĻŦāĻŋāĻ˛āĻŽā§āĻŦā§ āĻāĻŦāĻ āĻāĻŽāĻžāĻ° āĻŦāĻžāĻāĻŋ āĻā§āĻŦāĻ¨ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻāĻ āĻ¨āĻŋāĻ¯āĻŧāĻŽ āĻŽāĻ¨ā§ āĻ°āĻžāĻāĻž.
āĻāĻĒāĻ¨āĻŋ āĻŦāĻžāĻā§āĻāĻžāĻĻā§āĻ° āĻāĻ¨ā§āĻ¯ āĻā§āĻ°āĻŋāĻāĻ°āĻŋ āĻ āĻ¸ā§āĻāĻžāĻ°ā§āĻ° "āĻāĻžāĻ°āĻžāĻĒ āĻĒāĻ°āĻžāĻŽāĻ°ā§āĻļ" āĻĒāĻĄāĻŧā§āĻā§āĻ¨ āĻāĻŦāĻ āĻāĻĒāĻ¨āĻŋ āĻĻā§āĻāĻ¤ā§ āĻĒāĻžāĻā§āĻā§āĻ¨ āĻ¯ā§ āĻ¤āĻžāĻĻā§āĻ° āĻāĻāĻŋ āĻāĻ°āĻž āĻāĻāĻŋāĻ¤ āĻ¨āĻ¯āĻŧ āĻāĻ¤ āĻ¸āĻšāĻā§ āĻāĻŦāĻ āĻ¸ā§āĻŦāĻžāĻāĻžāĻŦāĻŋāĻāĻāĻžāĻŦā§ āĻāĻāĻŋ āĻ¤āĻžāĻĻā§āĻ° āĻŽāĻ¨ā§ āĻšāĻ¯āĻŧāĨ¤
āĻāĻŋāĻāĻžāĻŦā§ āĻāĻāĻāĻŋ āĻĄāĻāĻžāĻ°āĻĢāĻžāĻāĻ˛ āĻ¸āĻ āĻŋāĻāĻāĻžāĻŦā§ āĻ˛āĻŋāĻāĻ¤ā§ āĻšāĻ¯āĻŧ āĻ¸ā§ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻ āĻ¨ā§āĻ āĻ¨āĻŋāĻŦāĻ¨ā§āĻ§ āĻ˛ā§āĻāĻž āĻšāĻ¯āĻŧā§āĻā§āĨ¤ āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻā§āĻ˛ āĻĄāĻāĻžāĻ°āĻĢāĻžāĻāĻ˛āĻā§āĻ˛āĻŋ āĻā§āĻāĻžāĻŦā§ āĻ˛āĻŋāĻāĻ¤ā§ āĻšāĻ¯āĻŧ āĻ¸ā§ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻāĻŽāĻŋ āĻ¨āĻŋāĻ°ā§āĻĻā§āĻļāĻžāĻŦāĻ˛ā§ āĻĒāĻžāĻāĻ¨āĻŋāĨ¤ āĻāĻŽāĻŋ āĻāĻ āĻļā§āĻ¨ā§āĻ¯āĻ¸ā§āĻĨāĻžāĻ¨ āĻĒā§āĻ°āĻŖ āĻāĻ°āĻāĻŋ. āĻāĻŦāĻ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§ āĻ¯ā§ āĻĒā§āĻ°āĻāĻ˛ā§āĻĒāĻā§āĻ˛āĻŋāĻ¤ā§ āĻāĻŽāĻŋ āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨ āĻĒāĻžāĻ, āĻ¸ā§āĻāĻžāĻ¨ā§ āĻāĻŽ āĻĄāĻāĻžāĻ°āĻĢāĻžāĻāĻ˛ āĻĨāĻžāĻāĻŦā§āĨ¤
āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻāĻ°āĻŋāĻ¤ā§āĻ°, āĻĒāĻ°āĻŋāĻ¸ā§āĻĨāĻŋāĻ¤āĻŋ āĻāĻŦāĻ āĻĄāĻāĻžāĻ°āĻĢāĻžāĻāĻ˛ āĻāĻžāĻ˛ā§āĻĒāĻ¨āĻŋāĻāĨ¤ āĻ¨āĻŋāĻā§āĻā§ āĻāĻŋāĻ¨āĻ¤ā§ āĻĒāĻžāĻ°āĻ˛ā§ āĻĻā§āĻāĻāĻŋāĻ¤āĨ¤
āĻāĻāĻāĻŋ āĻĄāĻāĻžāĻ°āĻĢāĻžāĻāĻ˛ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻž, āĻ āĻļā§āĻ āĻāĻŦāĻ āĻāĻ¯āĻŧāĻžāĻ¨āĻ
āĻĒāĻŋāĻāĻžāĻ° (āĻ¸āĻŋāĻ¨āĻŋāĻ¯āĻŧāĻ° āĻāĻžāĻāĻž/āĻ°ā§āĻŦāĻŋ/āĻĒāĻŋāĻāĻāĻāĻĒāĻŋ āĻŦāĻŋāĻāĻžāĻļāĻāĻžāĻ°ā§): āĻ¸āĻšāĻāĻ°ā§āĻŽā§ āĻā§āĻ¯āĻžāĻ¸āĻŋāĻ˛āĻŋ, āĻāĻĒāĻ¨āĻŋ āĻāĻŋ āĻāĻ¤āĻŋāĻŽāĻ§ā§āĻ¯ā§ āĻĄāĻāĻžāĻ°ā§ āĻāĻāĻāĻŋ āĻ¨āĻ¤ā§āĻ¨ āĻŽāĻĄāĻŋāĻāĻ˛ āĻāĻĒāĻ˛ā§āĻĄ āĻāĻ°ā§āĻā§āĻ¨?
āĻā§āĻ¯āĻžāĻ¸āĻŋāĻ˛āĻŋ (āĻā§āĻ¨āĻŋāĻ¯āĻŧāĻ°): āĻ¨āĻž, āĻāĻŽāĻžāĻ° āĻāĻžāĻā§ āĻ¸āĻŽāĻ¯āĻŧ āĻāĻŋāĻ˛ āĻ¨āĻž, āĻāĻŽāĻŋ āĻāĻ āĻĄāĻāĻžāĻ°ā§āĻ° āĻ¸āĻžāĻĨā§ āĻāĻāĻŋ āĻŦā§āĻ° āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°āĻŋ āĻ¨āĻžāĨ¤ āĻāĻāĻŋāĻ¤ā§ āĻ
āĻ¨ā§āĻāĻā§āĻ˛āĻŋ āĻ¨āĻŋāĻŦāĻ¨ā§āĻ§ āĻ°āĻ¯āĻŧā§āĻā§, āĻāĻāĻŋ āĻāĻŽāĻāĻĒā§āĻ°āĻĻāĨ¤
āĻĒāĻŋāĻāĻžāĻ°: āĻāĻ āĻŦāĻāĻ° āĻāĻā§ āĻāĻŽāĻžāĻĻā§āĻ° āĻāĻāĻāĻŋ āĻ¸āĻŽāĻ¯āĻŧāĻ¸ā§āĻŽāĻž āĻāĻŋāĻ˛āĨ¤ āĻāĻŽāĻžāĻā§ āĻāĻĒāĻ¨āĻžāĻā§ āĻ¸āĻžāĻšāĻžāĻ¯ā§āĻ¯ āĻāĻ°āĻ¤ā§ āĻĻāĻŋāĻ¨, āĻāĻŽāĻ°āĻž āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻ¯āĻŧ āĻāĻāĻŋ āĻŦā§āĻ° āĻāĻ°āĻŦāĨ¤ āĻāĻŽāĻžāĻā§ āĻŦāĻ˛ā§āĻ¨ āĻāĻŋ āĻāĻĒāĻ¨āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻāĻžāĻ āĻāĻ°ā§ āĻ¨āĻž.
āĻā§āĻ¯āĻžāĻ¸āĻŋāĻ˛āĻŋ: āĻāĻŽāĻŋ āĻāĻāĻāĻŋ āĻŽā§āĻ˛āĻŋāĻ āĻāĻŋāĻ¤ā§āĻ° āĻāĻ¯āĻŧāĻ¨ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°āĻŋ āĻ¨āĻž āĻ¯āĻžāĻ¤ā§ āĻāĻāĻŋ āĻ¨ā§āĻ¯ā§āĻ¨āĻ¤āĻŽ āĻšāĻ¯āĻŧ, āĻ¤āĻŦā§ āĻāĻĒāĻ¨āĻžāĻ° āĻ¯āĻž āĻĻāĻ°āĻāĻžāĻ° āĻ¤āĻž āĻ°āĻ¯āĻŧā§āĻā§ā§ˇ
āĻĒāĻŋāĻāĻžāĻ°: āĻāĻŦā§āĻ¨ā§āĻā§ āĻāĻŽā§āĻāĻāĻŋ āĻ¨āĻŋāĻ¨, āĻāĻ¤ā§ āĻāĻĒāĻ¨āĻžāĻ° āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ā§āĻ¯āĻŧ āĻ¸āĻŦāĻāĻŋāĻā§ āĻ°āĻ¯āĻŧā§āĻā§āĨ¤ āĻāĻ° āĻ¯āĻž āĻ
āĻ¨ā§āĻ āĻ
āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ā§āĻ¯āĻŧ āĻāĻŋāĻ¨āĻŋāĻ¸ āĻĒāĻ°ā§ āĻāĻžāĻā§ āĻāĻ¸āĻŦā§āĨ¤ āĻāĻŦāĻ āĻ¸āĻ°ā§āĻŦāĻļā§āĻˇ āĻā§āĻ¯āĻžāĻ āĻ˛āĻžāĻāĻžāĻ¤ā§ āĻā§āĻ˛āĻŦā§āĻ¨ āĻ¨āĻž āĻ¯āĻžāĻ¤ā§ āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖāĻāĻŋ āĻ¸āĻ°ā§āĻŦāĻĻāĻž āĻ¸āĻ°ā§āĻŦāĻļā§āĻˇ āĻšāĻ¯āĻŧāĨ¤
āĻāĻŦāĻ āĻĒā§āĻ°āĻĨāĻŽ āĻ˛āĻžāĻāĻ¨ āĻĄāĻāĻžāĻ°āĻĢāĻžāĻāĻ˛ā§ āĻĒā§āĻ°āĻĻāĻ°ā§āĻļāĻŋāĻ¤ āĻšāĻ¯āĻŧ:
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 (āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻĻā§āĻŦā§āĻ° āĻā§āĻ¯āĻŧā§ āĻŦā§āĻļāĻŋ Ops), āĻ āĻĢāĻŋāĻ¸ā§ āĻāĻ¸ā§ āĻāĻŋā§āĻāĻžāĻ° āĻāĻ°ā§:
āĻāĻāĻ: āĻĒā§āĻāĻŋāĻ¯āĻŧāĻž, āĻāĻĒāĻ¨āĻžāĻ° āĻŦāĻŋāĻāĻžāĻļāĻāĻžāĻ°ā§āĻ°āĻž āĻāĻŦāĻžāĻ° āĻāĻžāĻĻā§āĻ¯ āĻĄāĻžāĻāĻžāĻŦā§āĻ¸ āĻā§āĻā§āĻā§, āĻāĻāĻ¨ āĻāĻāĻŋ āĻļā§āĻˇ āĻšāĻŦā§...
āĻāĻāĻāĻŋ āĻā§āĻ āĻ¸āĻāĻāĻ°ā§āĻˇā§āĻ° āĻĒāĻ°ā§, āĻāĻāĻ° āĻāĻāĻžāĻ¨ā§āĻāĻŋāĻ āĻ āĻžāĻ¨ā§āĻĄāĻž āĻšāĻ¯āĻŧā§ āĻ¯āĻžāĻ¯āĻŧ āĻāĻŦāĻ āĻ¤āĻžāĻ° āĻ¸āĻšāĻāĻ°ā§āĻŽā§āĻ°āĻž āĻāĻāĻžāĻ¨ā§ āĻā§ āĻāĻ°āĻā§ āĻ¤āĻž āĻā§āĻāĻā§ āĻŦā§āĻ° āĻāĻ°āĻ¤ā§ āĻļā§āĻ°ā§ āĻāĻ°ā§āĨ¤
AI: āĻāĻĒāĻ¨āĻŋ āĻāĻŋ āĻāĻ°āĻā§āĻ¨?
āĻā§āĻ¯āĻžāĻ¸āĻŋāĻ˛āĻŋ: āĻĒāĻŋāĻāĻžāĻ° āĻāĻŽāĻžāĻā§ āĻāĻāĻāĻŋ āĻ¨āĻ¤ā§āĻ¨ āĻŽāĻĄāĻŋāĻāĻ˛ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻāĻāĻāĻŋ āĻĄāĻāĻžāĻ°āĻĢāĻžāĻāĻ˛ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻ¤ā§ āĻ¸āĻžāĻšāĻžāĻ¯ā§āĻ¯ āĻāĻ°āĻā§āĨ¤
āĻāĻāĻ: āĻāĻŽāĻžāĻā§ āĻāĻāĻā§ āĻĻā§āĻā§ āĻ¨ā§āĻāĻ¯āĻŧāĻž āĻ¯āĻžāĻ... āĻāĻĒāĻ¨āĻŋ āĻāĻāĻžāĻ¨ā§ āĻā§ āĻ˛āĻŋāĻā§āĻā§āĻ¨, āĻāĻĒāĻ¨āĻŋ āĻāĻāĻāĻŋ āĻĒā§āĻĨāĻ āĻāĻŽāĻžāĻ¨ā§āĻĄ āĻĻāĻŋāĻ¯āĻŧā§ āĻ¸āĻāĻā§āĻ°āĻšāĻ¸ā§āĻĨāĻ˛ āĻĒāĻ°āĻŋāĻˇā§āĻāĻžāĻ° āĻāĻ°ā§āĻā§āĻ¨, āĻāĻāĻŋ āĻāĻāĻāĻŋ āĻ
āĻ¤āĻŋāĻ°āĻŋāĻā§āĻ¤ āĻ¸ā§āĻ¤āĻ°... āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻāĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ āĻā§āĻŽāĻĢāĻžāĻāĻ˛āĻāĻŋ āĻ
āĻ¨ā§āĻ˛āĻŋāĻĒāĻŋ āĻ¨āĻž āĻāĻ°ā§ āĻĨāĻžāĻā§āĻ¨ āĻ¤āĻŦā§ āĻāĻĒāĻ¨āĻŋ āĻā§āĻāĻžāĻŦā§ āĻ¨āĻŋāĻ°ā§āĻāĻ°āĻ¤āĻž āĻāĻ¨āĻ¸ā§āĻāĻ˛ āĻāĻ°āĻŦā§āĻ¨! āĻāĻŦāĻ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻāĻžāĻŦā§, āĻāĻāĻŋ āĻāĻžāĻ˛ āĻ¨āĻ¯āĻŧāĨ¤
āĻĒāĻŋāĻāĻžāĻ°: āĻ
āĻ¨ā§āĻā§āĻ°āĻš āĻāĻ°ā§ āĻāĻĒāĻ¨āĻžāĻ° āĻŦā§āĻ¯āĻŦāĻ¸āĻž āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻ¯āĻžāĻ¨, āĻāĻŽāĻ°āĻž āĻāĻāĻŋ āĻā§āĻ¨āĻāĻāĻžāĻŦā§ āĻŦā§āĻ° āĻāĻ°āĻŦāĨ¤
āĻāĻāĻ° āĻāĻāĻžāĻ¨ā§āĻāĻŋāĻ āĻĻā§āĻāĻā§āĻ° āĻ¸āĻžāĻĨā§ āĻĻā§āĻ°ā§āĻāĻļā§āĻŦāĻžāĻ¸ āĻĢā§āĻ˛ā§āĻ¨ āĻāĻŦāĻ āĻā§ āĻĄāĻžāĻāĻžāĻŦā§āĻ¸ āĻā§āĻā§āĻā§ āĻ¤āĻž āĻŦā§āĻ° āĻāĻ°āĻ¤ā§ āĻāĻ˛ā§ āĻ¯āĻžāĻ¨āĨ¤
āĻĒāĻŋāĻāĻžāĻ°: āĻšā§āĻ¯āĻžāĻ, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻ¤āĻŋāĻ¨āĻŋ āĻā§āĻĄ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻ¸āĻ āĻŋāĻ āĻāĻŋāĻ˛ā§āĻ¨, āĻāĻŽāĻžāĻĻā§āĻ° āĻāĻāĻŋāĻā§ āĻāĻŋāĻ¤ā§āĻ°ā§āĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻ§āĻžāĻā§āĻāĻž āĻĻāĻŋāĻ¤ā§ āĻšāĻŦā§āĨ¤ āĻāĻŦāĻ āĻāĻ¸ā§āĻ¨ āĻ āĻŦāĻŋāĻ˛āĻŽā§āĻŦā§ ssh āĻāĻŦāĻ āĻ¸ā§āĻĒāĻžāĻ°āĻāĻžāĻāĻāĻžāĻ° āĻāĻ¨āĻ¸ā§āĻāĻ˛ āĻāĻ°āĻŋ, āĻ āĻ¨ā§āĻ¯āĻĨāĻžāĻ¯āĻŧ āĻāĻŽāĻ°āĻž āĻĄā§āĻŽāĻ¨āĻā§āĻ˛āĻŋ āĻļā§āĻ°ā§ āĻāĻ°āĻŦāĨ¤
āĻā§āĻ¯āĻžāĻ¸āĻŋāĻ˛āĻŋ: āĻ¤āĻžāĻ°āĻĒāĻ° āĻāĻŽāĻŋ āĻĒā§āĻ°āĻĨāĻŽā§ Gemfile āĻāĻŦāĻ Gemfile.lock āĻāĻĒāĻŋ āĻāĻ°āĻŦ, āĻ¤āĻžāĻ°āĻĒāĻ° āĻāĻŽāĻŋ āĻ¸āĻŦāĻāĻŋāĻā§ āĻāĻ¨ā§āĻ¸āĻāĻ˛ āĻāĻ°āĻŦ, āĻāĻŦāĻ āĻ¤āĻžāĻ°āĻĒāĻ° āĻāĻŽāĻŋ āĻĒā§āĻ°ā§ āĻĒā§āĻ°ā§āĻā§āĻā§āĻ āĻāĻĒāĻŋ āĻāĻ°āĻŦāĨ¤ Gemfile āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻ¨āĻž āĻšāĻ˛ā§, āĻ¸ā§āĻ¤āĻ°āĻāĻŋ āĻā§āĻ¯āĻžāĻļā§ āĻĨā§āĻā§ āĻ¨ā§āĻāĻ¯āĻŧāĻž āĻšāĻŦā§āĨ¤
āĻĒāĻŋāĻāĻžāĻ°: āĻā§āĻ¨ āĻāĻĒāĻ¨āĻŋ āĻāĻ āĻ¸ā§āĻ¤āĻ° āĻ¸āĻā§āĻā§ āĻ¸āĻŦ, āĻāĻāĻ¯ā§āĻā§ āĻ¸āĻŦ āĻāĻĒāĻŋ. āĻāĻā§āĻ¨āĻŋ āĻāĻĒāĻŋ āĻāĻ°ā§āĻ¨āĨ¤ āĻāĻā§āĻŦāĻžāĻ°ā§ āĻĒā§āĻ°āĻĨāĻŽ āĻ˛āĻžāĻāĻ¨āĨ¤
āĻĄāĻāĻžāĻ°āĻĢāĻžāĻāĻ˛ āĻāĻāĻ¨ āĻāĻ āĻŽāĻ¤ āĻĻā§āĻāĻžāĻ¯āĻŧ:
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/*
āĻĒāĻŋāĻāĻžāĻ°: āĻ¤āĻžāĻšāĻ˛ā§, āĻāĻ°āĻĒāĻ° āĻāĻŋ? āĻāĻĒāĻ¨āĻŋ āĻ¸ā§āĻĒāĻžāĻ°āĻāĻžāĻāĻāĻžāĻ° āĻāĻ¨ā§āĻ¯ configs āĻāĻā§?
āĻā§āĻ¯āĻžāĻ¸āĻŋāĻ˛āĻŋ: āĻ¨āĻž, āĻ¨āĻžāĨ¤ āĻ¤āĻŦā§ āĻāĻŽāĻŋ āĻ¤āĻžāĻĄāĻŧāĻžāĻ¤āĻžāĻĄāĻŧāĻŋ āĻāĻ°āĻŦāĨ¤
āĻĒāĻŋāĻāĻžāĻ°: āĻ¤āĻžāĻšāĻ˛ā§ āĻ¤ā§āĻŽāĻŋ āĻāĻāĻž āĻāĻ°āĻŦā§āĨ¤ āĻāĻāĻ¨ āĻāĻāĻāĻŋ init āĻ¸ā§āĻā§āĻ°āĻŋāĻĒā§āĻ āĻ¸ā§āĻā§āĻ āĻāĻ°āĻž āĻ¯āĻžāĻ āĻ¯āĻž āĻ¸āĻŦāĻāĻŋāĻā§ āĻāĻžāĻ˛ā§ āĻāĻ°āĻŦā§āĨ¤ āĻ āĻŋāĻ āĻāĻā§, āĻ¤āĻžāĻ āĻāĻĒāĻ¨āĻŋ nohup āĻĻāĻŋāĻ¯āĻŧā§ ssh āĻļā§āĻ°ā§ āĻāĻ°ā§āĻ¨, āĻ¯āĻžāĻ¤ā§ āĻāĻŽāĻ°āĻž āĻāĻ¨ā§āĻā§āĻāĻ¨āĻžāĻ°ā§āĻ° āĻ¸āĻžāĻĨā§ āĻ¸āĻāĻ¯ā§āĻ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°āĻŋ āĻāĻŦāĻ āĻĻā§āĻāĻ¤ā§ āĻĒāĻžāĻ°āĻŋ āĻāĻŋ āĻā§āĻ˛ āĻšāĻ¯āĻŧā§āĻā§āĨ¤ āĻ¤āĻžāĻ°āĻĒāĻ° āĻāĻāĻ āĻāĻžāĻŦā§ āĻ¸ā§āĻĒāĻžāĻ°āĻāĻžāĻāĻāĻžāĻ° āĻāĻžāĻ˛āĻžāĻ¨āĨ¤ āĻāĻā§āĻāĻž, āĻ¤āĻžāĻšāĻ˛ā§ āĻāĻĒāĻ¨āĻŋ āĻļā§āĻ§ā§ āĻ¯āĻžāĻ¤ā§āĻ°ā§ āĻāĻžāĻ˛āĻžāĻ¨āĨ¤
āĻĒā§āĻ°āĻļā§āĻ¨: āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻāĻŽāĻŋ āĻĒāĻĄāĻŧā§āĻāĻŋ āĻ¯ā§ āĻāĻāĻāĻŋ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻšāĻāĻ¯āĻŧāĻž āĻāĻāĻŋāĻ¤, āĻ¤āĻžāĻ āĻĄāĻāĻžāĻ° āĻāĻžāĻ¨āĻŦā§ āĻ¯ā§ āĻāĻŋāĻā§ āĻā§āĻ˛ āĻšāĻ¯āĻŧā§āĻā§ āĻāĻŦāĻ āĻ§āĻžāĻ°āĻāĻāĻŋ āĻĒā§āĻ¨āĻ°āĻžāĻ¯āĻŧ āĻāĻžāĻ˛ā§ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤
P: āĻāĻā§āĻŦāĻžāĻā§ āĻāĻĨāĻž āĻŦāĻ˛ā§ āĻŽāĻžāĻĨāĻž āĻāĻžāĻŽāĻžāĻŦā§āĻ¨ āĻ¨āĻžāĨ¤ āĻāĻŦāĻ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻāĻžāĻŦā§, āĻāĻŋāĻāĻžāĻŦā§? āĻāĻĒāĻ¨āĻŋ āĻāĻŋāĻāĻžāĻŦā§ āĻāĻ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻ¯āĻŧ āĻāĻ āĻ¸āĻŦ āĻāĻžāĻ˛āĻžāĻŦā§āĻ¨? āĻāĻāĻ° āĻāĻāĻžāĻ¨ā§āĻāĻŋāĻāĻā§ āĻ¸ā§āĻĨāĻŋāĻ¤āĻŋāĻļā§āĻ˛āĻ¤āĻžāĻ° āĻāĻĨāĻž āĻāĻžāĻŦāĻ¤ā§ āĻĻāĻŋāĻ¨, āĻ¤āĻŋāĻ¨āĻŋ āĻ¯ā§ āĻŦā§āĻ¤āĻ¨ āĻĒāĻžāĻ¨ āĻ¤āĻž āĻāĻŋāĻā§āĻ āĻ¨āĻ¯āĻŧāĨ¤ āĻāĻŽāĻžāĻĻā§āĻ° āĻāĻžāĻ āĻšāĻ˛ āĻā§āĻĄ āĻ˛ā§āĻāĻžāĨ¤ āĻāĻŦāĻ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻāĻžāĻŦā§, āĻ¤āĻžāĻā§ āĻ§āĻ¨ā§āĻ¯āĻŦāĻžāĻĻ āĻŦāĻ˛āĻ¤ā§ āĻĻāĻŋāĻ¨ āĻ¯ā§ āĻāĻŽāĻ°āĻž āĻ¤āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻĄāĻāĻĢāĻžāĻāĻ˛ āĻ˛āĻŋāĻā§āĻāĻŋāĨ¤
10 āĻŽāĻŋāĻ¨āĻŋāĻ āĻāĻŦāĻ āĻŦāĻŋāĻĄāĻŧāĻžāĻ˛ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻĻā§āĻāĻŋ āĻāĻŋāĻĄāĻŋāĻ āĻĒāĻ°ā§āĨ¤
āĻĒā§āĻ°āĻļā§āĻ¨: āĻāĻŽāĻŋ āĻ¸āĻŦ āĻāĻ°ā§āĻāĻŋāĨ¤ āĻāĻŽāĻŋ āĻāĻ°ā§ āĻŽāĻ¨ā§āĻ¤āĻŦā§āĻ¯ āĻ¯ā§āĻ.
P: āĻāĻŽāĻžāĻā§ āĻĻā§āĻāĻžāĻ¨!
āĻĄāĻāĻžāĻ°āĻĢāĻžāĻāĻ˛ā§āĻ° āĻ¸āĻ°ā§āĻŦāĻļā§āĻˇ āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖ:
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: āĻĻā§āĻ°ā§āĻĻāĻžāĻ¨ā§āĻ¤, āĻāĻŽāĻŋ āĻāĻāĻž āĻĒāĻāĻ¨ā§āĻĻ āĻāĻ°āĻŋāĨ¤ āĻāĻŦāĻ āĻŽāĻ¨ā§āĻ¤āĻŦā§āĻ¯āĻā§āĻ˛āĻŋ āĻ°āĻžāĻļāĻŋāĻ¯āĻŧāĻžāĻ¨ āĻāĻžāĻˇāĻžāĻ¯āĻŧ, āĻ¸ā§āĻŦāĻŋāĻ§āĻžāĻāĻ¨āĻ āĻāĻŦāĻ āĻĒāĻ āĻ¨āĻ¯ā§āĻā§āĻ¯, āĻ¸āĻŦāĻžāĻ āĻ¸ā§āĻ°āĻāĻŽ āĻāĻžāĻ āĻāĻ°āĻŦā§āĨ¤ āĻāĻŽāĻŋ āĻ¤ā§āĻŽāĻžāĻā§ āĻ¸āĻŦ āĻļāĻŋāĻāĻŋāĻ¯āĻŧā§āĻāĻŋ, āĻŦāĻžāĻāĻŋāĻāĻž āĻ¤ā§āĻŽāĻŋ āĻ¨āĻŋāĻā§āĻ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°āĻŦā§āĨ¤ āĻāĻ˛ā§ āĻāĻĢāĻŋ āĻāĻžāĻ...
āĻ āĻŋāĻ āĻāĻā§, āĻāĻāĻ¨ āĻāĻŽāĻžāĻĻā§āĻ° āĻāĻžāĻā§ āĻāĻāĻāĻŋ āĻ¨āĻŋāĻā§āĻāĻ¤ āĻāĻ¯āĻŧāĻā§āĻāĻ° āĻĄāĻāĻžāĻ°āĻĢāĻžāĻāĻ˛ āĻ°āĻ¯āĻŧā§āĻā§, āĻ¯āĻž āĻĻā§āĻā§ āĻāĻāĻ° āĻāĻāĻžāĻ¨ā§āĻāĻŋāĻāĻā§ āĻāĻžāĻĄāĻŧāĻ¤ā§ āĻāĻžāĻāĻŦā§ āĻāĻŦāĻ āĻ¤āĻžāĻ° āĻā§āĻ āĻāĻ°āĻ āĻāĻ āĻ¸āĻĒā§āĻ¤āĻžāĻšā§āĻ° āĻāĻ¨ā§āĻ¯ āĻŦā§āĻ¯āĻĨāĻž āĻāĻ°āĻŦā§āĨ¤ āĻĄāĻāĻžāĻ°āĻĢāĻžāĻāĻ˛, āĻ āĻŦāĻļā§āĻ¯āĻ, āĻāĻ°āĻ āĻāĻžāĻ°āĻžāĻĒ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§, āĻĒāĻ°āĻŋāĻĒā§āĻ°ā§āĻŖāĻ¤āĻžāĻ° āĻā§āĻ¨ āĻ¸ā§āĻŽāĻž āĻ¨ā§āĻāĨ¤ āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻāĻāĻāĻŋ āĻļā§āĻ°ā§āĻ° āĻāĻ¨ā§āĻ¯, āĻāĻāĻŋ āĻāĻ°āĻ¤ā§ āĻšāĻŦā§.
āĻāĻŽāĻŋ āĻā§āĻ°āĻŋāĻāĻ°āĻŋ āĻāĻ¸ā§āĻāĻžāĻ°ā§āĻ° āĻāĻāĻāĻŋ āĻāĻĻā§āĻ§ā§āĻ¤āĻŋ āĻĻāĻŋāĻ¯āĻŧā§ āĻļā§āĻˇ āĻāĻ°āĻ¤ā§ āĻāĻžāĻ:
āĻāĻĒāĻ¨āĻŋ āĻāĻāĻ¨āĻ āĻ¨āĻŋāĻļā§āĻāĻŋāĻ¤ āĻ¨āĻž āĻšāĻ˛ā§
āĻāĻŽāĻ°āĻž āĻā§āĻŦāĻ¨ā§āĻ° āĻĒāĻĨ āĻŦā§āĻā§ āĻ¨āĻŋāĻ¯āĻŧā§āĻāĻŋ,
āĻāĻŦāĻ āĻā§āĻ¨ āĻāĻĒāĻ¨āĻŋ āĻāĻžāĻ¨ā§āĻ¨ āĻ¨āĻž
āĻāĻĒāĻ¨āĻžāĻ° āĻļā§āĻ°āĻŽ āĻ¯āĻžāĻ¤ā§āĻ°āĻž āĻļā§āĻ°ā§ āĻāĻ°ā§āĻ¨,
āĻšāĻ˛āĻāĻ¯āĻŧā§āĻ¤ā§ āĻāĻ˛ā§āĻ° āĻŦāĻžāĻ˛ā§āĻŦāĻā§āĻ˛āĻŋ āĻāĻžāĻā§āĻ¨ -
āĻ˛ā§āĻā§āĻ°āĻž āĻāĻĒāĻ¨āĻžāĻā§ "āĻ§āĻ¨ā§āĻ¯āĻŦāĻžāĻĻ" āĻŦāĻ˛āĻŦā§āĨ¤
āĻāĻĒāĻ¨āĻŋ āĻŽāĻžāĻ¨ā§āĻˇāĻā§ āĻ¸āĻžāĻšāĻžāĻ¯ā§āĻ¯ āĻāĻ°āĻŦā§āĻ¨
āĻŦāĻŋāĻĻā§āĻ¯ā§ā§ āĻŦāĻžāĻāĻāĻžāĻ.
āĻāĻ¤ā§āĻ¸: www.habr.com