Contenedor Docker con expansión variable de punto de entrada y parámetros CMD

Quiero crear una imagen de Docker que actúe como un ejecutable para el cual el usuario pasa un token como una variable de entorno. El ejecutable tiene subcomandos que el usuario debe pasar a través de los dockers CMD (piense en git con autenticación a través de Env). Sin embargo, Docker no agrega el CMD al punto de entrada. La parte relevante de mi Dockerfile se ve así:

ENTRYPOINT ["/bin/sh", "-c", "/usr/bin/mycmd --token=$MY_TOKEN"]
CMD ["pull", "stuff"]

Entonces, si este contenedor se ejecuta sin ninguna anulación de CMD ysecret como la variable MY_TOKEN, esperaría

mycmd --token=secret pull stuff

para ser ejecutado Si el usuario inicia el contenedor con una anulación, p.

docker run -it -e MY_TOKEN=secret myimage push junk

Yo esperaría

mycmd --token=secret push junk

para ser ejecutado Como se mencionó anteriormente, sin embargo, solomycmd --token=secret se ejecuta, el CMD se ignora, no importa si lo anulo durante el inicio o lo configuro en el Dockerfile.

Respuestas a la pregunta(2)

Su respuesta a la pregunta