无法理解 Nomad 上的网络工作原理

无法理解 Nomad 上的网络工作原理

有人能解释一下为什么我无法通过 nomad 访问在 docker 容器中运行的网站,或者我做错了什么吗?我是系统和网络方面的初学者。

我想让容器 http 监听 127.0.0.1:8088,以便 nginx 可以代理。

Nomad服务器和客户端在同一台机器上运行

机器是 fedora,禁用 SELinux,禁用防火墙。

我的期望是:请求 <server_ip>:8088 响应网站

我得到的答复是:响应是连接被拒绝。

游牧民族会议:

data_dir  = "/opt/nomad/data"
bind_addr = "0.0.0.0"
log_level = "DEBUG"

server {
  # license_path is required for Nomad Enterprise as of Nomad v1.1.1+
  #license_path = "/etc/nomad.d/license.hclic"
  enabled          = true
  bootstrap_expect = 1
}
acl {
   enabled = true
}

client {
  enabled = true
  servers = ["127.0.0.1"]
}

游牧工作:


job "ctprods-app" {
  datacenters = ["*"]

  group "ctprods-group" {
    count = 1
    network {
      port "http" {
         static = 8088
         to = 8088
      }
    }
    task "ctprods-task" {
      driver = "docker"
      env {
          ENVIRONMENT = "production"
      }
      config {
        image = "ctaque/ctprods:latest"
        ports = [
          "http"
        ]
      }
    }
  }
}

nginx 块:

location / {
    proxy_set_header Host $host;
    proxy_set_header X-Forwarded-For $remote_addr;
    proxy_pass http://127.0.0.1:8088/;
}

ss-nplut:

tcp LISTEN  0  4096 <server_public_ip>:8088 0.0.0.0:*

游牧民工作港口地图: 游牧工作港口地图

游牧工作正在运行: 游牧作业正在运行

相关内容