Discuz! BBS

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 19|回复: 0

如何让ubuntu转发12000端口到其docker 中的websocket 服务上(-p 120...

[复制链接]

393

主题

556

帖子

3294

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
3294
发表于 3 天前 | 显示全部楼层 |阅读模式


要在Ubuntu上将外部端口12000转发到Docker容器中的Websocket服务上,你需要确保Docker容器正确地运行,并且使用了正确的端口映射。这里有几个步骤可以帮助你实现这个功能:
1. 运行Docker容器

首先,确保你的Docker容器已经正确运行,并且监听的是容器内部的2700端口。你可以使用以下命令来运行你的容器,其中-p 12000:2700参数确保了将宿主机的12000端口映射到容器的2700端口。

bashCopy Code
docker run -d -p 12000:2700 --name your-container-name your-image-name

这里:

    -d 表示在后台运行容器。
    -p 12000:2700 表示将宿主机的12000端口映射到容器的2700端口。
    --name your-container-name 是给容器指定一个名字,方便管理。
    your-image-name 是你的Docker镜像名称。

2. 检查端口映射

运行以下命令来检查端口映射是否成功:

bashCopy Code
docker ps

或者查看特定容器的详细信息:

bashCopy Code
docker inspect your-container-name

在输出中查找"Ports"部分,确认12000/tcp已经映射到2700/tcp。
3. 配置防火墙(如果需要)

如果你的Ubuntu系统使用了防火墙(如UFW),你需要确保12000端口是开放的,以便外部访问。你可以使用以下命令开放端口:

bashCopy Code
sudo ufw allow 12000/tcp

4. 测试Websocket服务

一旦容器运行并正确映射了端口,你可以使用浏览器或者任何支持Websocket的客户端来测试服务。例如,你可以在浏览器中访问 ws://your-server-ip:12000 来测试Websocket连接是否成功。
5. 查看日志(如果需要)

如果遇到连接问题,查看容器的日志可能会提供一些线索:

bashCopy Code
docker logs your-container-name

6. 确保Websocket服务在容器内部正确配置和运行

最后,确保你的Websocket服务在容器内部已经正确配置并且监听在2700端口上。你可以在容器内部运行类似netstat -tuln的命令来检查监听端口。

按照这些步骤,你应该能够成功地将Ubuntu宿主机的12000端口转发到Docker容器中的Web
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|DiscuzX

GMT+8, 2025-10-25 08:51 , Processed in 0.010419 second(s), 18 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表