なぜか echo ok が実行できない
$ docker run mesosphere/aws-cli echo ok
usage: aws [options] <command> <subcommand> [<subcommand> ...] [parameters]
To see help text, you can run:
...
元のDockerfileを確認する
ENTRYPOINTが指定されている。
entrypoint を削除して コマンドを実行する例
$ docker run --entrypoint= mesosphere/aws-cli echo ok
ok
entrypoint を上書きする例
$ docker run --entrypoint='hostname' mesosphere/aws-cli
e2ff1cabebf0
ところで entrypoint のコマンドには引数を渡せないっぽい?
command との違いはなんだろうと思っていたけれど、引数のないコマンド一個だけを実行するということだろうか。なるほど。その名の通りエントリーポイント。
$ docker run --entrypoint='echo ok' mesosphere/aws-cli
docker: Error response from daemon: OCI runtime create failed: container_linux.go:345: starting container process caused "exec: \"echo ok\": executable file not found in $PATH": unknown.
ERRO[0001] error waiting for container: context canceled
Dockerfileでは
ENTRYPOINT []
docker - How to remove entrypoint from parent Image on Dockerfile - Stack Overflow
docker-compose では
こうかな。
entrypoint: []
Original by Github issue
チャットメンバー募集
何か質問、悩み事、相談などあればLINEオープンチャットもご利用ください。