我想使用正式的Docker镜像来运行Consul
docker run -d consul -P
-P应将Dockerfile中的所有EXPOSED端口映射到主机。 运行没有-P的命令工作得很好, docker ps显示这个:
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES bc23fb8b61a6 consul "docker-entrypoint.sh" 3 seconds ago Up 1 seconds 8300-8302/tcp, 8400/tcp, 8500/tcp, 8301-8302/udp, 8600/tcp, 8600/udp jovial_booth
当使用-P容器立即退出。 当我跑步
docker logs bc23fb8b61a6
我得到这个错误:
Invalid flags before the subcommand. If these flags are for the subcommand, please put them after the subcommand. usage: consul [--version] [--help] <command> [<args>] Available commands are: […]
我也试图从容器映射/var/log到本地目录,不幸的是它仍然是空的。
任何想法出了什么问题,我怎样才能访问容器的日志?
您需要在consul命令之前放置-P参数(属于docker run ):
docker run -d -P consul
否则,由Consul解释,你会得到consul命令的语法错误信息。