问题标签 [swarm]

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 投票
0 回答
44 浏览

r - 使用 swaRm 包来识别 GPS 定位错误

我正在使用 swaRm 包来分析十进制度 GPS 数据以查找位置错误 ( https://rpubs.com/sjmgarnier/swaRm )。

首先,我从我的数据框中创建了一个 R6 对象来创建轨迹表

然后我使用代码搜索潜在的位置错误

然后返回:

我想知道是否有人可以向我解释这意味着什么?我很难相信没有位置错误,因为我有 55657 个 GPS 修复!

以下是一小部分数据:

我还应该提到,每秒都会记录一次修复,但有些情况下 GPS 失败了

0 投票
1 回答
216 浏览

docker - 使用 ansible 创建 docker swarm

我正在使用来自 github 的以下内容来了解​​ docker swarm 如何通过 ansible https://github.com/patocox/ansible-swarm-do工作

我不确定我是否可以在不在 github 上提出问题的情况下提出这个疑问,所以我来了。我遵循了 README.md 中的步骤,在 github 上找到了几种可能的解决方案后,我还更改了我的 hosts 文件:

IP_ADDRESS 是我在 digitalocean 上创建的液滴。我继续收到此错误:

我正在使用适当的 API 访问令牌执行 README.md 中给出的命令。

有人可以帮忙吗?提前致谢。

0 投票
1 回答
75 浏览

apache - VirtualBox 本地主机连接

我在 virtualbox 上连接到我的 ubuntu localhost 时遇到问题。主机操作系统是windows。在 ubuntu 上,我安装了 Perforce Swarm Dashboard - 在 Firefox 中,我使用“localhost”地址打开它。我无法从主机操作系统访问它。当然,我在 virtualbox 上运行 2 个 NIC:1 - NAT,2 - 仅限主机 当我尝试通过主机 Web 浏览器与 ubuntu 上的外部 IP 地址连接时,它显示 Apache2 ubuntu 默认页面。最奇怪的是,当我尝试在 ubuntu 上的 webbrowser 上打开 127.0.0.1(localhost ip)时 - 它再次向我显示 Apache2 页面......如何解决它?

0 投票
1 回答
1462 浏览

docker - Docker swarm 只能在运行容器的节点上访问

我目前正在 3 个节点上运行 docker swarm。首先,我将网络创建为

之后作为服务

如果我没看错,这是路由网格(= 对我来说还可以)。但是我只能在运行容器的那个节点 ip 上访问服务,即使它应该在每个节点 ip 上都可用。

如果我耗尽了某个节点,容器会在不同的节点上启动,然后它就可以在新的 ip 上使用。


**此处添加了更多信息:

  • 我重新启动了所有服务器 - 3 个工作人员,其中一个是经理
  • 启动后,似乎一切正常!
  • 我正在使用来自 docker hub 的 rabbitmq-image。Dockerfile 非常小:FROM rabbitmq:3-management容器已在 worker 2 处启动
  • 我可以从所有worker连接到rabbitmq的管理页面:worker1-ip:15672,worker2-ip:15672,worker3-ip:15672,所以我认为所有需要的端口都是开放的。
  • 大约 1 小时后,rabbitmq-container 已从工人 2 转移到工人 3 - 我不知道原因。
  • 之后,我无法再从 worker1-ip:15672、worker2-ip:15672 连接,但从 worker3-ip:15672 仍然可以正常工作!
  • 我把worker3抽干了docker node update --availability drain worker3
  • 容器从worker1开始。
  • 之后我只能从worker1-ip:15672连接,不能再从worker2或worker3连接

再进行一项测试:所有 docker 服务都在所有工作人员上重新启动,并且一切正常?!- 让我们等几个小时...

今天的状态:3 个节点中有 2 个工作正常。在经理的服务日志上:

并从工人的码头日志:

而这个来自工作人员:

我在有问题的工人上重新启动了 docker,它又开始工作了。我会跟...

** 今天的结果:

  • 2 名工人可用,1 名不可用
  • 我什么都没有
  • 经过 4 小时的“单独蜂群”,一切似乎又恢复了?!
  • 出于任何充分的理由,服务已从工作人员转移到其他工作人员,所有结果似乎都是沟通问题。
  • 相当混乱。
0 投票
1 回答
1589 浏览

java - Docker 容器主机名

我正在尝试在启动期间设置 docker 容器主机名(HOSTNAME env var),这是在 dockerfile 的 ENTRYPOINT 中指定的 .sh 脚本:

我希望 jvm 可以看到这个新主机名。

我得到的只是这样的标准 docker 主机名:

当我在容器启动后使用上面的导出手动设置主机名时,一切正常。一切都在使用 compose stackfile 以集群方式运行。

EDIT1: 我不是在容器构建期间而是在启动期间这样做

EDIT2: 要清楚,我有什么:

码头工人群:

我想要的是:

并希望在 n 容器启动期间自动设置

我如何尝试实现这一目标:

我尝试在容器启动时调用的 start.sh 文件中设置它(指向 dockerfile 中的 ENTRYPOINT 命令):

没有效果,HOSTNAME 没有被改变

0 投票
1 回答
5517 浏览

docker - 静态 IP 地址在 docker compose v3 中不起作用

从官方文档来看,静态 ip 地址应该与 docker compose v3 + docker swarm 一起使用。但我不能让它工作。

这是我的 docker compose yaml:

docker stack up -c xxx.yml test用来部署。我发现创建的容器的 ip 是 10.1.0.3, 10.1.0.5, ...

0 投票
1 回答
31 浏览

docker - 使用 Docker Swarm Mode 启动大约 45 个服务的方法

我在两个 Ubuntu 16.04 LTS 虚拟机上以 Docker Swarm 模式启动 45 个服务。每个服务都使用不同的 Docker 映像。当我基于 compose 文件执行“堆栈部署”时,所有 45 个服务都尝试立即启动。这反过来又对服务器产生了负面影响,似乎大部分工作都围绕着 Docker 映像的下载和提取。

提高磁盘(SSD 等)的速度在这里可能会有所帮助,但是,假设硬件更改不是一种选择,那么在不破坏 VM 的情况下启动这些服务的最佳方法是什么?

  • 码头工人 17.06 CE
  • Overlay2 存储驱动程序
  • Ubuntu 16.04 LTS

非常感谢您的任何建议。

0 投票
1 回答
656 浏览

rest - Docker Remote API 无法准确列出 swarm 中正在运行的容器

目前我面临以下问题:

我用 debian 设置了 3 台虚拟机并安装了 docker。没有防火墙。我创建了一个集群,让一台机器作为管理器,并加入另外两台作为工人,正如无数网页中所描述的那样。完美运行。在集群管理器上,我通过 -H :4243... 激活了远程 API 访问并重新启动了守护进程。(仅在 swarm 管理器上)'docker node ls' 使所有节点都处于活动状态。当我调用 http://:4243/nodes 时,我会看到所有节点。我创建了一个覆盖网络(很可能不需要说明我的问题。标准入口网络也应该没问题)然后我创建了一个具有 3 个副本的服务。指定名称、我的覆盖网络和一些环境参数。'docker service ps' 为我提供了每个节点使用我的图像运行一个容器的信息。在每个节点上使用“docker ps”进行双重检查也是如此。

我的问题是:调用 'http://:4243/containers/json' 我只看到一个容器,即 swarm manager 上的那个。

我希望看到 3 个容器,每个节点一个。问题是为什么?

有任何想法吗 ?

这个问题似乎不是我的问题

0 投票
4 回答
4620 浏览

linux - Alpine Linux docker 设置主机名

我在 Alpine Linux 中使用 lwieske/java-8:server-jre-8u121-slim

我想从文本文件中设置主机名以在全球范围内看到(对于所有外壳)

一切作为服务运行在 swarm

我希望每个节点都具有基于容器 ID 的唯一主机名。

0 投票
1 回答
786 浏览

docker - 如何将现有的 swarm 服务添加到网络中?

我知道,在创建服务时,我们可以指定网络。但是如果已经有一些服务,那么如何将它们添加到网络中呢?