Docker 搭建MTProto协议上网
Docker mtproto系统环境: Debian系(其他系只需要更换apt为对应系统的软件包管理工具名称即可)
安装Docker
安装Docker相关工具
sudo apt update && sudo apt -y upgrade && sudo apt install -y docker docker.io docker-compose
启动docker
sudo systemctl enable docker && sudo systemctl start docker
验证是否安装成功
sudo docker run hello-world
mtg v2版本 docker运行
生成密钥
sudo docker pull baicailin/mtg
sudo docker run --rm baicailin/mtg generate-secret --hex trade.aliexpress.com
#会看到一串ee开头的密钥,形如:
eexxx44f3762c8a97d14f89df8c0174726164652e616c69657870726573732e636f6d
写入简单配置
echo "secret = \"把上面一步生成的密钥填进来\"" >config.toml
echo "bind-to = \"0.0.0.0:443\"" >>config.toml
运行docker镜像命令
sudo docker run -d -v $PWD/config.toml:/config.toml -p 443:443 --name baicai_mtg --restart=unless-stopped baicailin/mtg
docker-compose 启动(可代替上面这个命令启动方式)
一键启动 docker-compose.yaml 文件参考
version: "3"
services:
mtg_v2:
image: baicailin/mtg
container_name: "mtg_v2"
restart: unless-stopped
command: run /config.toml
volumes:
- ./config.toml:/config.toml
environment:
TZ: Asia/Shanghai
ports:
- "443:443"
生成MTProto协议服务配置
sudo docker exec mtg_v2 /mtg access /config.toml
mtg_v1 版本(支持adtag 赞助选项)运行
生成密钥
$ docker run --rm baicailin/mtg:1 generate-secret tls -c bing.com
eedf71035a8ed48a623d8e83e66aec4d0562696e672e636f6d
docker-compose 启动(可代替上面这个命令启动方式)
一键启动 docker-compose.yaml 文件参考:
version: "3"
services:
mtg_v1:
image: baicailin/mtg:1
container_name: "mtg_v1"
restart: unless-stopped
# deploy:
# resources:
# limits:
# cpus: 0.50
# memory: 256M
# reservations:
# memory: 128M
command: run eedf71035a8ed48a623d8e83e66aec4d0562696e672e636f6d adtag
environment:
TZ: Asia/Shanghai
# MTG_DEBUG: "true"
# MTG_BIND: "0.0.0.0:3128"
# MTG_IPV4: "公网ip:端口"
# MTG_IPV6: "公网ip:端口"
# MTG_STATS_BIND: "127.0.0.1:3129"
# network_mode: host
ports:
- "1443:3128"
- "1444:3129"
运行参数中的 adtag
可以通过tg机器人 @MTProxybot
创建获得
查看MTProto协议服务配置
在mtg v1 docker-compose.yml文件目录下运行
docker-compose logs