docker-swarm

如何在 Docker 容器内运行和联网 Docker Swarm?
docker-swarm

如何在 Docker 容器内运行和联网 Docker Swarm?

我正在尝试让 docker swarm 在 docker-compose 中运行,其中容器充当节点的角色。出于教育目的,我希望能够通过 docker-compose 模拟分布式 swarm。 我的方法: ./swarm_compose/ |- docker-compose.yml |- shared/ |- entrypoint/ |- |- worker.sh |- |- master.sh docker-compose.yml定义了两个服务(master,worker)和一个网络(swarm_net)。 shared/是主容器和工作容器用来共享加入...

Admin

在 Docker Swarm 中保留服务
docker-swarm

在 Docker Swarm 中保留服务

假设我有 50 个维护服务(因为它们是为了创建/删除另一个服务的环境而创建的),它们在我的 docker swarm(有 100 个工作程序)中徘徊,例如未使用、副本设置为 0、可能不会再使用 - 如果再次需要,将自动重新创建(如果丢失)。 保留它们会不会有什么开销?我们是否应该考虑删除它们?如果是,为什么? ...

Admin

Docker Swarm 出现问题,可能与网络有关
docker-swarm

Docker Swarm 出现问题,可能与网络有关

我在尝试在虚拟机上使用 Docker Swarm 时遇到了困难。同样的过程在我的本地机器上运行良好。 我使用以下命令在虚拟机上初始化了 Docker Swarm: docker swarm init --advertise-addr MY_IP_HERE 然后: docker stack deploy -c docker-swarm.yml app_name 例如,docker-swarm.yml: version: '3.9' services: nginx: image: nginx:latest ports: - ...

Admin

Docker Swarm 上的 MongoDB 副本集
docker-swarm

Docker Swarm 上的 MongoDB 副本集

我尝试在 docker swarm 服务中创建 MongoDB 副本集。到目前为止一切顺利。我面临的问题是,当容器停止或移动到其他 docker 主机时,集群会中断,我无法连接到它,因为容器名称已更改,无法进行复制。 我根据 MongoDB 文档创建了一个简单的服务 (https://www.mongodb.com/compatibility/deploying-a-mongodb-cluster-with-docker) 如下: docker service create --replicas=3 --network=paas --name=databas...

Admin

Docker Swarm - 容器可以在节点之间 ping 通,但无法通过 TCP 端口进行通信
docker-swarm

Docker Swarm - 容器可以在节点之间 ping 通,但无法通过 TCP 端口进行通信

我正在三台 Linux 机器上设置新的 Docker Swarm 模式集群 - 全部都是全新安装。这三台机器的防火墙和安全模块 (AppArmor) 均已禁用,我可以确认它们可以通过端口7946(TCP 和 UDP) 和4789(UDP) 进行通信。 例如,我正在提出的其中一个堆栈: ... wikijs_db: image: postgres:11-alpine deploy: replicas: 1 environment: POSTGRES_DB: *** POSTGRES_PASSWOR...

Admin

docker service 可以替代 docker run 吗?
docker-swarm

docker service 可以替代 docker run 吗?

我正在将我的 Docker 主机转换为 Docker Swarm 节点。在此之前,我总是以 [无 vSAN] vSphere 集群的方式运行 Docker 主机/容器,每个主机的存储尽可能少,而是将其集中起来。永远不要在桥接网络上运行任何东西,只使用专用地址或主机的网络,并避免使用 compose 文件,这样我就不必记住它们在哪里,也不必在主机发生故障时丢失它们。我保留一个包含所有详细docker runs 命令的文件(以 docker ..stop X&开头..rm X以防止冲突)。文件的内容可以复制和粘贴或作为脚本运行,无论容器在哪里运行,都可以...

Admin

Docker Swarm 中的卷
docker-swarm

Docker Swarm 中的卷

运行带有卷安装和副本的服务创建,卷复制到所有工作节点,没有问题...但是文件的同步只能发生在特定节点上,例如在群集节点 1 中,当修改主机中的文件时只能在节点 1 内的容器内看到,这符合预期,但其他工作节点无法看到该文件。 我读到过一篇文章,说 Swarm 只附带标准的本地驱动程序。它无法感知 Swarm,只会在服务任务安排到的节点上为您的数据创建新卷。 我想添加/修改卷内的文件并复制到每个节点......这可能吗? ...

Admin

docker swarm 使用什么条件重定向到容器?
docker-swarm

docker swarm 使用什么条件重定向到容器?

我正在使用带有多个注释和一个 docker 映像的多个实例的 docker swarm。据我所知,在发出请求后,我与哪个容器交互没有影响。但是 swarm 领导者/管理器如何决定我正在与哪个容器对话?有什么模式吗?还是只是随机的? ...

Admin

多台物理机上的 Docker Swarm
docker-swarm

多台物理机上的 Docker Swarm

我正在使用以下说明在分布式环境中部署 Hyperledger Fabric:这里.实现分布式设置Docker Swarm是必须的。 我的一个节点位于远程(这是我学校的服务器)并且docker swarm已经初始化并准备好接受连接。 另一个节点(即本地 PC)应该加入 docker swarm,为了连接到这个 swarm,我正在使用这样的端口转发,但出现此错误:ssh [email protected] -L 2377:localhost:2377 Error response from daemon: Timeout was reached bef...

Admin

如何从部署在集群中的容器内部访问主机网络命名空间?
docker-swarm

如何从部署在集群中的容器内部访问主机网络命名空间?

我想在我的 Swarm 上全局部署一个容器,将一些 iptables 规则应用于主机的网络。具体来说,我想向一些覆盖网络添加规则,这些规则似乎位于每个覆盖网络的唯一命名空间中。 这是我的docker-compose: version: '3.8' services: test: image: docker volumes: - /var/run/docker.sock:/var/run/docker.sock - /var/run/docker/netns:/var/run/netns cap_add: ...

Admin

docker swarm 中所有已发布的服务都无法访问,但部署的容器正常运行
docker-swarm

docker swarm 中所有已发布的服务都无法访问,但部署的容器正常运行

我遇到了一个与此类似的问题;https://forums.docker.com/t/cant-access-service-in-swarm/63876。尽管我的设置略有不同,但我还没有找到解决问题的方法。 最小且可重复的示例 在至少 3 个 Ubuntu 20.04 docker swarm 管理器之间构建一个 swarm 集群。 部署服务docker service create --name test_web --replicas 3 --publish published=8080,target=80 nginxdemos/hello 检查容器...

Admin

我应该如何设置docker-swarm的音量
docker-swarm

我应该如何设置docker-swarm的音量

我计划将 docker-compose 移至 docker-swarm 以用于多节点。 我已经使用过docker-compose如下方法 version: '3' services: python: container_name: python build: ./python command: uwsgi --socket :8001 --module myapp.wsgi --py-autoreload 1 --logto /tmp/mylog.log volumes: - ./src:/code ...

Admin

访问节点内部docker-swarm的简单方法
docker-swarm

访问节点内部docker-swarm的简单方法

我expose在docker文件中使用并打开了端口。 然而问题仍然存在,@BMitch 的答案ports也是这种情况下必要的解决方案。 现在,我的第一个问题已经解决了。非常感谢。 最新更新。 我登录管理器并检查服务docker service ls和容器docker container ls。 然后发现 服务端口开放,容器端口未开放。 手动运行容器时,您可以进行如下设置-p 8000:8000。 然而在这种情况下,容器由堆栈配置 yml 启动, ports适用于服务但不适用于容器。 那么,我该如何打开集装箱港口呢? docker s...

Admin

Docker-swarm 对生产和开发的约束使用
docker-swarm

Docker-swarm 对生产和开发的约束使用

我正在本地制作 docker-swarm 项目。 目前,我有通过docker模拟的节点,就像这些底部的yml一样,每个节点都有node01 node02。 那么现在我想使用约束 deploy: replicas: 1 placement: constraints: [node.label.type == node01] #it occurs error though ,,,, 我对“node01”感到好奇?不是container_id也不是hostname。 并且我希望尽可能地对生产服务器使用通用设置。 在生产服务器中,我想我会...

Admin

端口转发服务 -> 容器
docker-swarm

端口转发服务 -> 容器

我有一项包含一个容器的服务。 容器中有一个 django 服务器,其端口 8000 打开。 我的服务和容器环境如下 docker container ls CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 500e9b49dd35 registry:5000/myapp...

Admin