全球主机交流论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

CeraNetworks网络延迟测速工具IP归属甄别
查看: 309|回复: 0

两分钟 使用docker compose启动一个gost 用于端口转发

[复制链接]
发表于 2025-4-9 11:32:00 | 显示全部楼层 |阅读模式
本文介绍的内容是:
在更方便使用docker的服务器环境中,如何快速通过docker compose启动一个gost程序,用于端口转发

前提条件:
在确实是更方便使用docker的环境中启动
服务器上开放相应端口(如已经开放可以忽略)

具体步骤:
1.新建一个文件夹,名为gost
  1. mkdir gost
复制代码

2.进入这个文件夹,创建一个名为docker-compose.yaml的文件
  1. cd gost
  2. vim docker-compose.yaml
复制代码

3.编辑文件,填入以下内容(command部分需要编辑,请参阅流程4)
  1. services:
  2.   hysteria:
  3.     image: 'gogost/gost'
  4.     container_name: gost
  5.     restart: always
  6.     network_mode: host
  7.     deploy:
  8.       resources:
  9.         limits:
  10.           cpus: '1.0'
  11.           memory: 256M
  12.     command:
  13.       - "-L=udp://:443/192.168.1.1:443?keepalive=true&ttl=60s"
复制代码

4.按照需要编辑command部分,该处格式为:

  1. "-L=协议://:本地使用的端口号/远程主机地址:远程端口号?附加选项"
复制代码


比如我想要让访问到这一台主机的443端口的请求转发到远程主机192.168.1.1的443端口,我就可以这么写:

  1. "-L=tcp://:443/192.168.1.1:443?keepalive=true&ttl=60s"
复制代码


其中keepalive选项为长连接功能是否开启,若开启,则存在关闭超时,若无,则相应转发连接传输完数据后会立马被关闭。
其中ttl选项为长连接的关闭超时,仅在keepalive开启后有效。当相应具备长连接功能的转发连接开启后,超过相应秒数没有数据传输,相应的连接将会被关闭。
请按照需要修改此处的选项。可同时存在多个转发项。但不允许多项同时使用相同的端口号。

5.保存,退出,运行

  1. :wq

  2. docker compose up -d
复制代码


6.查看运行状态

  1. docker logs gost
复制代码


如果出现的json日志中没有报错代表运行成功

7.若需要修改转发端口,此时直接修改相应目录下的 docker-compose.yaml 文件中的command部分即可,修改完成后需要重新生成并启动一下容器方可正常生效。

  1. docker compose down && docker compose up -d
复制代码
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|全球主机交流论坛

GMT+8, 2025-4-26 16:27 , Processed in 0.056231 second(s), 8 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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