我有一个单节点群。我的堆栈有两个服务。我是这样部署的:
$ docker stack deploy -c /tmp/docker-compose.yml -c /tmp/docker-compose-prod.yml ide-controller"
Creating network ide-controller_default
Creating service ide-controller_app
Creating service ide-controller_traefik
没有错误。但是,根据docker ps
,只创建了一个容器。未创建ide-controller_traefik
容器。
当我检查docker stack services
时,traefik容器显示为0/1
:
ID NAME MODE REPLICAS IMAGE PORTS
az4n6brex4zi ide-controller_app replicated 1/1 boldidea.azurecr.io/ide/controller:latest
1qp623hi431e ide-controller_traefik replicated 0/1 traefik:2.3.6 *:80->80/tcp, *:443->443/tcp
Docker服务日志没有任何内容:
$ docker service logs ide-controller_traefik -n 1000
$
docker ps -a
中没有traefik
容器,所以我无法检查日志:
$ docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
922fdff58c25 boldidea.azurecr.io/ide/controller:latest "docker-entrypoint.s…" 3 minutes ago Up 3 minutes 3000/tcp ide-controller_app.1.py8jrtmufgsf3inhqxfgkzpep
我怎样才能找出哪里出了问题,或者是什么阻止了容器的创建?
2条答案
按热度按时间mm9b1k5b1#
docker service ps <service-name/id>
有一个错误列,可以暴露libswarm在尝试创建容器时遇到的错误,例如错误的映像名称。或者,为了更详细地查看,docker service inspect <service-name/id>
具有当前和以前的服务规范,以及一些根级节点,这些节点将跟踪最后一个操作的状态及其消息。63lcw9qa2#
如果在运行docker service ps时没有显示错误,重新启动docker可能会有帮助<stack_name>