Eu uso esta imagem: dperson / samba
A imagem está definindo seu próprio ponto de entrada e não quero substituí-lo.
Preciso passar argumentos para o ponto de entrada, fácil apenas com o docker:
docker run ... dperson/samba arg1 arg2 arg3
Mas como fazer isso com o docker_compose.yml?
No momento, eu uso como solução alternativa:
command: samba.sh arg1 arg2 arg3
Mas não é satisfatório, pois forço a redefinição do ponto de entrada.
fonte
ENTRYPOINT ["executable", "param1", "param2"]
(formulário exec, preferencial)ENTRYPOINT command param1 param2
(formulário do shell) Referência: referência doVocê pode usar em
docker-compose run
vez dedocker-compose up
e aderir aos argumentos no final. Por exemplo:Se você precisar se conectar a outros contêineres do docker, use can use
--service-ports
option:fonte
Para substituir o ponto de entrada padrão, use
entrypoint
opção . Para passar os argumentos, usecommand
.Aqui está o exemplo de substituição
bash
porsh
naubuntu
imagem:Aqui está a saída:
fonte
Eu estava enfrentando o mesmo problema com o jenkins ssh slave ' jenkinsci / ssh-slave '. No entanto, meu caso foi um pouco complicado porque era necessário passar um argumento que continha espaços. Eu consegui fazê-lo como abaixo (o ponto de entrada no dockerfile está no formato exec):
fonte