问题标签 [docker-stack]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
2640 浏览

docker - 未在管理器节点中运行时,Docker 服务 laravel 应用程序未运行

docker-compose.yml 这是我的 docker-compose 文件,用于使用 docker-stack 在多个实例中部署服务。如您所见,应用程序服务是在 2 个节点中运行的 laravel 和在其中一个节点中运行的数据库(mysql)。

完整代码库: https ://github.com/taragurung/Ci-CD-docker-swarm

我面临的问题。 1. 虽然在查看服务日志时服务处于运行状态,但我只能看到迁移在一个节点上成功,而在另一个节点上没有运行。请参阅下面的日志

  1. 当我使应用程序服务仅在管理器节点中运行时,应用程序运行得很好。我可以登录页面并执行所有操作,但是当我仅使用副本使应用程序服务在任何节点中运行时,登录页面就会显示,但是当尝试登录时,它会重定向到 NOT FOUND 页面

这是尝试在 3 个节点上运行时的完整日志。Bellow 是在 2 个节点上运行时的示例。您可以详细查看迁移问题 https://pastebin.com/wqjxSnv2

使用检查的服务日志docker service logs <smstake_app>

不知道是移民问题还是什么。有时我可以登录,但在单击仪表板内的链接时,我再次被重定向到未找到页面。

在此处输入图像描述

0 投票
1 回答
2137 浏览

docker - 堆栈服务容器动态主机名

我正在从 Docker Cloud 迁移到纯 Docker Swarm 设置。我缺少的一件事是容器如何将主机名设置为$SERVICE_NAME-$SLOT_NUMBER的好方法。

是否可以在 swarm stack 服务中动态设置主机名/容器名?

0 投票
2 回答
552 浏览

docker - 堆栈服务在特定接口上公开端口?

我们在 Digital Ocean 上运行堆栈。为了提高安全性,docker swarm 所有都在 Droplets 上的专用网络 (eth1) 上运行。我们有一些管理服务,我们不想在公共 IP 上公开,而是在私有 IP 上公开。

是否可以在特定接口上公开端口?或者可以创建另一个仅在私有 IP 上公开端口的入口网络?

我们现在的解决方法是,我们只是将这些服务作为普通容器运行,并在私有 IP 地址上公开端口。

0 投票
1 回答
493 浏览

docker - 如果我将服务扩展到 docker 节点大小之外会有什么影响?

我在 docker swarm 模式中有 3 个节点。

1 个 Manager 和 2 个 Worker 节点

我在这里有两个疑问?

  1. 如果我将服务扩展到比我们拥有的节点更大的数量,将会产生什么影响。(假设将一项服务扩展到 5 或 6 个

  2. 如果服务有一个限制,即它必须仅在管理器节点上运行,并且我们扩展的数量高于管理器节点的数量,那么规模会发生什么。(例如扩展到 3)

我在管理器节点中运行 mysql 服务,该服务在 docker-compose 中定义了一个约束放置以在管理器节点中运行。这是我尝试将其扩展到6时看到的效果,尽管我只有 3 个节点。显示docker service logs 4/6 运行甚至有时显示 6/6 和有时显示 5/6 波动

这里是 docker-compose.yml

0 投票
1 回答
27 浏览

docker - People are connecting through my private network

For some reason with my Minecraft server running within a docker stack, it seems like people are going through a proxy. All IP's are internal (10.255.0.16). I can not seem to find the correct way to word this problem as for where I could do a manual Google Search if anyone could help me on my way that would be awesome!

0 投票
2 回答
916 浏览

docker - docker compose 不创建容器,但我没有收到错误消息

我正在阅读 Ubuntu 17.10 上的官方 Docker CE(版本 18.03.1-ce,构建 9ee9f40)教程,但在运行服务时遇到了问题,如此所述。 该服务不会启动,但 Docker 不会告诉我原因。

问题描述

当我启动服务时,会发生以下情况:

没有返回错误,退出状态为 0,没有任何异常。但是,当获取有关堆栈的信息时...

CURRENT STATE列完全充满了拒绝。截断的错误都说"container ingress-sbox is already present in sandbox ingress_sbox"。列出各个容器如下所示:

然而,单独运行容器(即不在集群或堆栈中)完全按预期运行。

相关文件

Dockerfile

docker-compose.yml

app.py

0 投票
1 回答
3340 浏览

docker - 使用 docker stack 时挂载 tmpfs

部署独立容器时,我可以将 /dev/shm 挂载为带有自定义选项的 tmpfs,如下所示:

但是,当使用docker stack deploy. 此处的文档中似乎没有任何相关信息。与以下docker-compose.yml

/dev/shm使用默认选项安装。如何/dev/shm使用选项(rw,nosuid,nodev,exec,size=90g)安装docker stack deploy

0 投票
1 回答
1024 浏览

docker - 一个堆栈的服务与另一个堆栈之间的 Docker 通信

我正在尝试使用不同的 docker 堆栈的简单服务发现场景。
假设我有 2 个堆栈。为简单起见,我将它们命名为 stackA 和 stackB。StackA 有一个名为“serviceA”的服务,而 StackB 有一个名为“serviceB”的服务。ServiceA 和 serviceB 有一个简单的 RestApplication。

现在我想从 serviceA 调用 serviceB。了解docker服务发现的概念,按照docker官方文档,无法调用serviceB。 在另一个堆栈上发现服务或容器

根据官方文档,我正在使用serviceB.StackB,但做不到。

无法理解原因。几点:
1.每个堆栈创建自己的网络。是否因为两个堆栈不在同一个网络中而发生?
2. 如果我只需要在不同的网络中,我如何调用不同的服务

0 投票
0 回答
307 浏览

docker - docker stack deploy 生成的图像带有标签和不同的图像尺寸

我从中了解到图像在 中获得标签是正常,但我不明白为什么图像大小与标记的大小不同。我找不到任何关于此的信息,所以我求助于在 stackoverflow 上发布一个问题。谁能解释一下?<none>docker stack

这是 docker-stack.yml 文件。

顺便说一下,这种配置不起作用。我正在学习 docker swarm 及其配置。

0 投票
1 回答
2602 浏览

docker - Docker 堆栈部署不会拉取所有图像

我将 docker 用于许多不同的服务和工具。我运行一个docker stack deploy -c docker-compose.yml --with-registry-auth stack_name. 在集群本身上,只有一两个节点会拉取图像,而不会拉到其他节点上。我认为部署会导致所有节点都拉出,以便图像无处不在。然后发生的错误是no such image因为它没有被拉到那个特定的节点上。我一直在四处寻找帮助,我看到很多关于它如何正常执行此操作的页面。我是否遗漏了导致此问题的原因,任何帮助都会有所帮助。