docker stack / swarm golang port not exposed

时间:2017-04-03 18:51:41

标签: mongodb docker port swarm

我在新的群模式下有一段棘手的问题。

我只是尝试在第一个中运行go web服务器,在第二个容器中运行mongo db。因此,我使用私人测试图像和标准mongo图像。在端口27017上调用mongo服务可以正常工作。 go run main.go命令在测试服务中运行。我暴露:Dockerfile中的8080。另外端口:为go服务设置“4444:8080”(用户,测试图像)。

Dockerfile:

  1 FROM crypvert-base:latest
  2 
  3 ADD . /go/src/test
  4 WORKDIR /go/src/test
  5 
  6 RUN go get -d -v
  7 RUN go install test
  8 ENTRYPOINT /go/bin/test
  9 
 10 EXPOSE 8080

搬运工-stack.yml

  1 version: "3"
  2 
  3 services:
  4     users:
  5         image: test:latest
  6         ports:
  7             - "4444:8080"
  8         depends_on:
  9             - mongo
 10     mongo:
 11         image: mongo:latest

用户/ bootstrap.go

  8 func Bootstrap() {
 10     e := echo.New()
 19     e.Logger.Fatal(e.Start(":8080"))
 20 }

$ docker service inspect --pretty test_users

ID:     o9wz4b17bew1s66ixy0i231uu
Name:       test_users
Labels:
 com.docker.stack.namespace=test
Service Mode:   Replicated
 Replicas:  1
Placement:
ContainerSpec:
 Image:     test:latest
Resources:
Networks: kd7q422w06quendlh8xkz7r6o 
Endpoint Mode:  vip
Ports:
 PublishedPort 4444
  Protocol = tcp
  TargetPort = 8080 

0 个答案:

没有答案