Docker 制作 cpolar 内网穿透镜像

本文介绍了如何使用Docker构建并运行cpolar程序,通过Dockerfile创建镜像,并设置docker-entrypoint.sh作为启动脚本,处理环境变量。在运行镜像时,设置环境变量TOKEN以授权,并通过参数指定穿透TCP或HTTP接口。此过程适用于需要网络穿透服务的场景。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、准备文件

在这里插入图片描述

1、cpolar 程序

2、docker-entrypoint.sh - 入口文件

#!/bin/sh
if [[ -n "${TOKEN}" ]]
then
    echo "authToken is  ${TOKEN}"
    cpolar authtoken ${TOKEN}
    echo "cpolar is starting!"
    exec "$@"
else
    echo "Please set the environment variable token!!!!"
fi

$ @ 是docker run传递的参数,exec “$@” 即执行传递的命令。

使用该脚本文件的好处,可以对变量进行替换。
3、Dockerfile

FROM alpine
  
RUN mkdir /app

ENV PATH /app:$PATH

COPY docker-entrypoint.sh /app/docker-entrypoint.sh
COPY cpolar /app/cpolar

WORKDIR /app

ENTRYPOINT ["docker-entrypoint.sh"]

主要是将文件复制到基础镜像,然后将脚本设置为启动脚本。

2、构建镜像

docker build -t hausen1012/cpolar:2.0 .

3、使用镜像

docker run -d \
--name cpolar \
--net host \
-e TOKEN=<<AUTHTOKEN>> \
--restart always \
hausen1012/cpolar:2.0 \
cpolar tcp 22

如果要穿透 http 接口,则将 cpolar tcp 22 替换为 cpolar http 80

注意事项

docker run 的时候只会执行 CMD 或 ENTRYPOINT 命令,如若某些环境变量需要替换,则需要在脚本文件里面进行设置。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值