Acho que prefiro compartilhar o Dockerfile. Obviamente você precisa especificar uma versão na instrução FROM
em seu Dockerfile. Como, por exemplo, versões diferentes do Ubuntu terão diferentes pacotes disponíveis.
Para dependências do sistema ou -dev, você pode querer deixar a versão flutuar livremente para sempre instalar a mais recente.
Pacotes Debian / Ubuntu
Para qualquer programa instalado com apt-get
, por exemplo curl
, você pode obter o número da versão com
apt-cache policy curl | grep -oP 'Installed: \K\S+'
e edite seu Dockerfile para ler algo como
RUN apt-get install curl=7.47.0-1ubuntu2.2
Python
As versões do Python são facilmente manipuladas com pip
. Extraia todos os números de versão dos pacotes instalados e armazene-os em um arquivo de requisitos como este:
pip freeze > requirements.txt
Em seguida, na sua execução do Dockerfile
RUN pip install -r requirements.txt