进行微服务开发时,通过docker swarm进行docker 集群管理,无法通过docker service logs -f 服务名,查询日志。
【情况一】: 可以看到service的名字,但待创建副本与已创建副本都为0
docker service ls

原因是没有在docker swarm集群中没有创建docker service的节点标签,没有找到所以REPLICAS为0/0,创建节点标签
docker node update –label-add env=hip_base centos-node1

其中hip_base与docker service create 中的node.labels.env相对应
【情况二】docker service ls 可以看到service的名字,且创建副本为0,镜像不断重启,
在docker swarm中的该服务节点上执行
docker ps -a

jenkins构建时出现以下错误OCI runtime create failed: container_linux.go:3
1)更新证书
docker swarm ca –rotate
2)清理docker镜像
docker system prune -a
3) 查看dockfile相关文件权限
ls -l
start.sh和start.sh没有执行权限,执行
chmod +x start.sh
chmod +x healthcheck.sh
重新执行打镜像,创建docker service,日志出现了
docker service logs -f productatom
原因分析:ftp客户端上传文件时,执行权限被去掉了
【情况三】docker service ls 可以看到service的名字,无法查看logs
docker node ls
找到leader节点,进行重启,原因是长期运行后leader节点无响应导致
