Fork me on GitHub

Docker

Полезные ссылки

Загрузка registry для Docker

Настоятельно рекомендуется следовать следующим советам

  • 1 приложение = 1 контейнер.

  • Запускайте процесс на переднем плане (не используйте systemd, upstart или другие похожие инструменты).

  • Для хранения данных вне контейнера используйте тома.

  • Не иcпользуйте SSH (если вам надо залезть внутрь контейнера, используйте docker exec).

  • Избегайте ручных настроек или действий внутри контейнера.

  • Включайте только необходимый контекст — используйте .dockerignore файл (как .gitignore в git).

  • Избегайте установки ненужных пакетов — это займет лишнее дисковое пространство.

  • Используйте кэш. Добавьте контекст, который часто меняется, например, исходный код вашего проекта, в конец Dockerfile — кэш Docker будет использоваться более эффективно.

  • Будьте осторожны с томами. Вы должны помнить, какие данные находятся в томах. Поскольку тома постоянны и не исчезают вместе с контейнерами, следующий контейнер будет использовать данные, которые были созданы предыдущим контейнером.

  • Используйте переменные окружения: RUN, EXPOSE, VOLUME. Это сделает ваш Dockerfile более гибким.

FROM python:3
ADD py_log_zvonkov_pandas.py /
ADD mail-config.cfg /
ADD start-log-zvonkov.sh /
ADD go-send-mail /
RUN pip3 install pandas
RUN pip3 install xlsxwriter
RUN pip3 install requests
CMD [ "python3", "./py_log_zvonkov_pandas.py", "-cfgfile", "cfg/list-num-tel.cfg"]
CMD [ "./start-log-zvonkov.sh"]

Cоздание контейнера:

docker build -t имя_контейнера .

Запуск контейнера:

docker run -v /home/oilnur/prj/py-ui-micro/cfg/:/cfg logs2

Удаление контейнера

docker rm -f имя_контейнера

Удление образа

docker rmi -f имя_контейнера

social