有人能解释一下为什么我无法通过 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:*