Tag: docker swarm

docker-compose v3 + apache spark,端口7077拒绝连接

我不确定这是100%编程还是系统pipe理员相关的问题。 我正在尝试在docker-swarm版本3中设置一个docker-compose文件,docker version 1.13为我的本地工作streamtestingspark。 不幸的是,端口7077只会绑定到我的swarm集群上的本地主机,因此无法从外部世界访问,我的星际应用程序试图连接到它。 有没有人有一个想法,如何得到docker组成群模式绑定到所有接口? 我发布我的端口,这工作正常说8080,但不是7070。 nmap输出: Starting Nmap 7.01 ( https://nmap.org ) at 2017-03-02 11:27 PST Nmap scan report for localhost (127.0.0.1) Host is up (0.000096s latency). Other addresses for localhost (not scanned): ::1 Not shown: 994 closed ports PORT STATE SERVICE 22/tcp open ssh 80/tcp open http 443/tcp open https 8080/tcp open […]

如何通过使用docker swarm来扩展多个暴露端口和多个卷的应用程序?

我有一个基于Java的应用程序(Jboss版本6.1社区),stream量很大。 现在我想使用docker和docker-swarm来迁移这个应用程序部署进行集群。 脚本 我的应用程序需要Docker容器中公开的两个端口,一个是Web端口(ie9080),另一个是数据库连接端口(即1521),并且在主机系统上安装的每个容器的日志目录都很less。 简单的Docker例子 docker run -it -d –name web1 -h "My Hostname" -p 9080:9080 -p 1521:1521 -v /home/web1/log:/opt/web1/jboss/server/log/ -v /home/web1/license:/opt/web1/jboss/server/license/ MYIMAGE Docker与Swarm的例子 docker service create –name jboss_service –mount type=bind,source=/home/web1/license,destination=/opt/web1/jboss/server/license/ –mount type=bind,source=/home/web1/log,destination=/opt/web1/jboss/server/log/ MYIMAGE 现在,如果我缩放/复制上面的服务2或3,它将绑定哪个主机端口和哪个挂载目录将绑定为新创build的容器? 任何人都可以帮助我得到如何规模和复制服务在这种情况下工作? 我也经历了 – –publish和 – –name global但没有任何帮助我在我的情况。 谢谢!

在Docker中限制内存和CPU使用的NGINX服务失败

我有一个主节点和5个工作节点,我在部署nginx服务时使用以下命令。 它失败- docker service create –name foo -p 32799:80 -p 32800:443 nginx –limit-cpu 0.5 –limit-memory 512M 另一方面,这个工程 – docker service create –name foo -p 32799:80 -p 32800:443 nginx 请让我知道如何减less我的CPU到1核心和限制内存到512M

将Docker容器中的nodejs App连接到Docker Swarm中的另一个docker容器中的mongodb

我已经在下面设置了docker stack(请参阅docker-compose.yml)。 它有2个服务: – 在一个(或多个)容器中运行的nodejs(回送)服务。 – 在另一个容器中运行的一个mongodb。 在我的节点应用程序中使用什么HOST来允许它连接到另一个容器中的mongodb(当前位于同一个节点上,但如果我设置了一个群集,则可能位于不同的节点上)。 我曾尝试过桥,webnet,主机IP等,但没有运气。 注意:我将主机通过环境variables“MONGODB_SERVICE_SERVICE_HOST”传递到nodejs应用程序。 提前致谢!! version: "3" services: web: image: myaccount/loopback-app:latest deploy: replicas: 2 restart_policy: condition: on-failure ports: – "8060:3000" environment: MONGODB_SERVICE_SERVICE_HOST: "webnet" depends_on: – mongo networks: – webnet mongo-database: image: mongo ports: – "27017:27017" volumes: – "/Users/jason/workspace/mongodb/db:/data/db" deploy: placement: constraints: [node.role == manager] networks: – webnet networks: webnet:

Docker:链接不同主机上的容器

如何在Docker中的不同主机上连接两个容器? 我需要通过另一个主机上的nodejs应用程序在一台主机上使用来自mongodb的数据? 任何人都可以给我这样的例子吗?

与docker使用senecajs

我目前正在一个项目的服务器端是基于nodejs(快递)。 我们主要使用docker-swarm来实现负载平衡和可伸缩性:事实上,我们构build了一个docker镜像并将其部署在4个节点之下,其余部分(负载均衡)由群集组成。 过去几天我一直在阅读关于微服务的概念,并且可以使用docker来构build微服务。 我也读过senecajs可以用来构build微服务。 它们可以结合使用吗? 我不想触摸我们目前的架构,但我仍然有兴趣使用微服务。 因此: senecajs将被用来分离express中的函数并构build微服务 docker-swarm将被用来构build容器(主要用于负载均衡和便于在任何服务器上部署)

将parameter passing给Docker群集容器

我有一个Docker Swarm集群中的三个服务器(一个主节点和两个节点)。 我想启动容器来执行一个增量值的命令。 从简单的使用Docker来做这件事非常简单: for i in `seq 1 6`; do sudo docker run –cpuset-cpus="$i" -d -v /tmp/out:/data_out -t -i image /binary $i done 正如你所看到的,我使用特定的CPU id来启动多个容器,并将相同的id作为parameter passing给容器内的binary 。 我怎样才能做到这一点,但使用我的Docker群集? 谢谢

docker swarm在检查节点细节时抛出404页未find错误

我正在build立一个群集。 我能够看到docker -H :4000 info的细节。 但是,当我尝试docker -H :4000 node ls失败。 操作系统 – RHEL 7 docker版本 : $ docker version Client: Version: 1.12.3 API version: 1.24 Go version: go1.6.3 Git commit: 6b644ec Built: OS/Arch: linux/amd64 Server: Version: 1.12.3 API version: 1.24 Go version: go1.6.3 Git commit: 6b644ec Built: OS/Arch: linux/amd64 docker信息 : $ docker -H :4000 […]

如何在Docker群组中使用docker-compose .yml时传递POSTGRES_USER envvariables

我正在创build一个PostgreSQL镜像的Docker群。 我想在该数据库上创build一个名为“数字”的用户。 这是我的docker-compose文件。 .env文件包含POSTGRES_USER和POSTGRES_PASSORD。 如果我ssh进入托pipepostgres图像的容器,我可以看到执行env时的variables。 但psql –user numbers告诉我, angular色“数字”不存在。 我应该如何通过POSTGRES_ *variables,以便创build正确的用户? version: '3' services: postgres: image: 'postgres:9.5' env_file: – ./.env ports: – '5432:5432' volumes: – 'postgres:/var/lib/postgresql/data' deploy: replicas: 1 networks: – default restart: always 这将按预期创buildpostgresql用户。 $ docker run –name some-postgres -e POSTGRES_PASSWORD=mysecretpassword -e POSTGRES_USER=numbers -d postgres

坚持loginDocker容器重启

所以我有一个微服务在.NET Core下作为Docker容器运行,并在Azure上logging到Application Insights,因为它将从EventHub获取的大量数据写入SQL Server。 每过一段时间,我都会得到一个未处理的SqlException,它似乎在后台线程上抛出,这意味着我无法捕获并处理它,我也无法修复这个错误。 解决方法是将重新启动策略设置为始终,服务重新启动。 这很好,但现在我不能跟踪Application Insights中的这个exception。 我想,未处理的exception是由CLR写入stderr,所以它出现在Docker日志中有一些grep,但是有没有办法在启动时检查它,然后将其logging到Application Insights,这样我就可以在不login的情况下发现它Swarm集群和grep重启信息?