Докер состоит из слоев. В начале любого Dockerfile вы указываете ОС, набирая, например, FROM python:3
Я считаю, что если вы добавите еще одну ОС. Образ будет сохранять среду из первой ОС и устанавливать поверх нее среду env. По сути, ваше изображение будет иметь обе среды.
Если вы создадите образ python из команды выше и назовете его docker build -t 'this_python' .
, то создайте новый файл Docker с первой строкой: FROM this_python
, чтобы новое изображение имелоPython, и вы можете установить что-нибудь поверх этого.
Лучше всего, чтобы размер вашего докера был как можно меньше. Установите только то, что требуется.
Быстрый пример
FROM python:3
FROM ubuntu:latest
RUN apt-get update
Приведенный выше Dockerfile дает образ с установленными Python и Ubuntu. Но это не то, как вы должны это делать. Лучше использовать FROM ubuntu:latest
, а затем установить Python поверх него.