diff --git a/neutrino-proxy-client/Dockerfile b/neutrino-proxy-client/Dockerfile index 401f5ffd..e2a41943 100644 --- a/neutrino-proxy-client/Dockerfile +++ b/neutrino-proxy-client/Dockerfile @@ -3,10 +3,13 @@ FROM openjdk:21-jdk-oracle #RUN sed -i 's/dl-cdn.alpinelinux.org/mirrors.aliyun.com/g' /etc/apk/repositories && \ # apk update && apk add wget unzip vim && apk add -U tzdata && \ # ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && echo 'Asia/Shanghai' >/etc/timezone +# 设置时区为北京时间 +ENV TZ=Asia/Shanghai +RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone RUN mkdir -p /root/neutrino-proxy/config WORKDIR /root/neutrino-proxy COPY ./target/neutrino-proxy-client.jar /root/neutrino-proxy/neutrino-proxy-client.jar -COPY ./src/main/resources/app.yml /root/neutrino-proxy/config +COPY ./src/main/resources/app-copy.yml /root/neutrino-proxy/config/app.yml #VOLUME ["/root/neutrino-proxy"] ENTRYPOINT ["java","-jar","neutrino-proxy-client.jar","config=./config/app.yml"] diff --git a/neutrino-proxy-client/src/main/resources/app-copy.yml b/neutrino-proxy-client/src/main/resources/app-copy.yml new file mode 100644 index 00000000..bbc05203 --- /dev/null +++ b/neutrino-proxy-client/src/main/resources/app-copy.yml @@ -0,0 +1,41 @@ +solon.logging.logger: + "root": + level: info + +neutrino: + proxy: + tunnel: + # 线程池相关配置,用于技术调优,可忽略 + thread-count: 50 + # 隧道SSL证书配置 + key-store-password: ${STORE_PASS:123456} + jks-path: ${JKS_PATH:classpath:/test.jks} + # 服务端IP + server-ip: ${SERVER_IP:localhost} + # 服务端端口(对应服务端app.yml中的tunnel.port、tunnel.ssl-port) + server-port: ${SERVER_PORT:9002} + # 是否启用SSL(注意:该配置必须和server-port对应上) + ssl-enable: ${SSL_ENABLE:true} + # 客户端连接唯一凭证 + license-key: ${LICENSE_KEY:} + # 客户端唯一身份标识(可忽略,若不设置首次启动会自动生成) + client-id: ${CLIENT_ID:} + # 是否开启隧道传输报文日志(日志级别为debug时开启才有效) + transfer-log-enable: ${CLIENT_LOG:false} + # 是否开启心跳日志 + heartbeat-log-enable: ${HEARTBEAT_LOG:false} + # 重连设置 + reconnection: + # 重连间隔(秒) + interval-seconds: 10 + # 是否开启无限重连(未开启时,客户端license不合法会自动停止应用,开启了则不会,请谨慎开启) + unlimited: false + client: + udp: + # 线程池相关配置,用于技术调优,可忽略 + boss-thread-count: 5 + work-thread-count: 20 + # udp傀儡端口范围 + puppet-port-range: 10000-10500 + # 是否开启隧道传输报文日志(日志级别为debug时开启才有效) + transfer-log-enable: ${CLIENT_LOG:false} diff --git a/neutrino-proxy-client/src/main/resources/app.yml b/neutrino-proxy-client/src/main/resources/app.yml index 056f5e98..c513862e 100644 --- a/neutrino-proxy-client/src/main/resources/app.yml +++ b/neutrino-proxy-client/src/main/resources/app.yml @@ -1,6 +1,9 @@ solon: config: add: ./app.yml + app: + name: neutrino-proxy-client + version: @revision@ # 日志级别 solon.logging.appender: console: @@ -13,6 +16,7 @@ solon.logging.appender: solon.logging.logger: "root": level: info + neutrino: application: name: neutrino-proxy-client diff --git a/neutrino-proxy-server/Dockerfile b/neutrino-proxy-server/Dockerfile index a497051b..a76b3829 100644 --- a/neutrino-proxy-server/Dockerfile +++ b/neutrino-proxy-server/Dockerfile @@ -3,10 +3,13 @@ FROM openjdk:21-jdk-oracle #RUN sed -i 's/dl-cdn.alpinelinux.org/mirrors.aliyun.com/g' /etc/apk/repositories && \ # apk update && apk add wget unzip vim && apk add -U tzdata && \ # ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && echo 'Asia/Shanghai' >/etc/timezone +# 设置时区为北京时间 +ENV TZ=Asia/Shanghai +RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone RUN mkdir -p /root/neutrino-proxy/config WORKDIR /root/neutrino-proxy COPY ./target/neutrino-proxy-server.jar /root/neutrino-proxy/neutrino-proxy-server.jar -COPY ./src/main/resources/app.yml /root/neutrino-proxy/config +COPY ./src/main/resources/app-copy.yml /root/neutrino-proxy/config/app.yml #VOLUME ["/root/neutrino-proxy"] ENTRYPOINT ["java","-jar","neutrino-proxy-server.jar","config=./config/app.yml"] diff --git a/neutrino-proxy-server/src/main/resources/app-copy.yml b/neutrino-proxy-server/src/main/resources/app-copy.yml new file mode 100644 index 00000000..0aecb5ae --- /dev/null +++ b/neutrino-proxy-server/src/main/resources/app-copy.yml @@ -0,0 +1,59 @@ +server: + # 服务端web端口,用于支持HTTP接口,管理后台页面访问 + port: 8888 +# 日志级别 +solon.logging.logger: + "root": + level: info + +neutrino: + proxy: + # 隧道相关配置-用于维持服务端与客户端的通信 + tunnel: + # 线程池相关配置,用于技术调优,可忽略 + boss-thread-count: 2 + work-thread-count: 10 + # 隧道非SSL端口 + port: ${OPEN_PORT:9000} + # 隧道SSL端口 + ssl-port: ${SSL_PORT:9002} + # 隧道SSL证书配置 + key-store-password: ${STORE_PASS:123456} + key-manager-password: ${MGR_PASS:123456} + jks-path: ${JKS_PATH:classpath:/test.jks} + # 是否开启隧道传输报文日志(日志级别为debug时开启才有效) + transfer-log-enable: ${TUNNEL_LOG:false} + # 是否开启心跳日志 + heartbeat-log-enable: ${HEARTBEAT_LOG:false} + server: + tcp: + # 线程池相关配置,用于技术调优,可忽略 + boss-thread-count: 5 + work-thread-count: 20 + # http代理端口,默认80 + http-proxy-port: ${HTTP_PROXY_PORT:80} + # https代理端口,默认443 (需要配置域名、证书) + https-proxy-port: ${HTTPS_PROXY_PORT:443} + # 如果不配置,则不支持域名映射 + domain-name: ${DOMAIN_NAME:} + # https证书配置 + key-store-password: ${HTTPS_STORE_PASS:} + jks-path: ${HTTPS_JKS_PATH:} + # 是否开启代理服务报文日志(日志级别为debug时开启才有效) + transfer-log-enable: ${SERVER_LOG:false} + udp: + # 线程池相关配置,用于技术调优,可忽略 + boss-thread-count: 5 + work-thread-count: 20 + # 是否开启代理服务报文日志(日志级别为debug时开启才有效) + transfer-log-enable: ${SERVER_LOG:false} + data: + db: + # 数据库类型,目前支持h2、mysql、mariadb + type: ${DB_TYPE:h2} + # 数据库连接URL + url: ${DB_URL:jdbc:h2:file:./data/db;MODE=MySQL;AUTO_SERVER=TRUE} + # 数据库用户名 + username: ${DB_USER:} + # 数据库密码 + password: ${DB_PASSWORD:}