【问题标题】:Services Docker swarm : (wsl2) can't accessible since windows服务 Docker 群:(wsl2)无法访问,因为 Windows
【发布时间】:2022-11-03 00:19:04
【问题描述】:

我在wsl2环境中使用了docker,并且由于windows环境我调用了我的服务(导航器)docker模式群,但实际上我有访问问题。

事实上,如果我测试docker-compose up --build 那么我访问容器没有问题。 但是,如果使用带有docker stack deploy 的 docker swarm 模式来尝试访问我的服务,我将无法访问。

例如 :

在 ubuntu wsl2 中: 节点服务器:

const express = require('express');

const app = express();

app.get("/", (request, response) => {
    response.status(200).json({
        "msg":"Server running !!!"
    })
});

app.listen(4000, (req, res) => {
    console.log("Server running on port 4000");
})

码头文件:

FROM node:latest
RUN mkdir -p /src/app
WORKDIR /src/app
COPY package.json .
RUN npm install
COPY . .

CMD [ "npm", "start" ]

码头工人撰写:

version: "3"

services:
  server_node:
    image: localhost:5000/server_node
    ports:
      - 5000:4000
    

在窗口中 用于重定向到 ubuntu 环境的请求 电源外壳:

 ssh -L 5000:localhost:4000 user@localhost -N

【问题讨论】:

    标签: docker docker-swarm


    【解决方案1】:

    尝试将应用程序更改为在 0.0.0.0 而不是 localhost 上运行。

    app.listen(4000, '0.0.0.0', (req, res) => {
        console.log("Server running on port 4000");
    })
    

    【讨论】:

      猜你喜欢
      • 2021-04-13
      • 2017-10-17
      • 2022-06-29
      • 1970-01-01
      • 1970-01-01
      • 2021-04-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多