NowTunnel For Docker 安装配置说明

 

Docker镜像方式部署

# 拉取镜像
docker pull nowtunnel/nowtunnel-alpine:latest

# 运行
docker run --net host --privileged --restart=always -itd --hostname mynowtunnel --name mynowtunnel nowtunnel/nowtunnel-alpine:latest /usr/local/nowtunnel/nowtunnel-bash.sh

# Docker 运行日志
docker logs -f --tail 50 mynowtunnel

# Web control
http://宿主IP:9501
# 看到以下内容,证明已经成功运行
# NowTunnel starting. [DATE:2023-12-29 13:44:39, VER:2.1.10, LST:0.0.0.0:9501, INS: ]

 

Docker运行环境安装

已有docker环境可跳过

# CentOS
# 安装依赖包
yum install -y yum-utils device-mapper-persistent-data lvm2
# 源
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
yum makecache fast
# 安装最新稳定版本的docker
yum install docker-ce

# Ubuntu
sudo apt remove docker.io docker-doc docker-compose docker-compose-v2 podman-docker containerd runc
sudo apt install ca-certificates curl gnupg lsb-release
sudo install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
sudo chmod a+r /etc/apt/keyrings/docker.gpg
echo \
    "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \
    $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \
    sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt update
sudo apt install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

# 开启内核转发功能
echo "net.ipv4.ip_forward = 1" >> /etc/sysctl.conf
echo "net.ipv6.conf.all.forwarding = 1" >> /etc/sysctl.conf
sysctl -p

 

基于 Dockerfile 构建

采用最小操作系统alpine linux实现完整nowtunnel功能

Dockerfile

FROM alpine:3.19
ARG ARCH

RUN apk update && apk add --no-cache ca-certificates wireguard-tools iptables iptables-legacy iproute2 wget vim iputils && rm -rf /var/cache/apk/*

RUN rm /sbin/iptables && ln -s /sbin/iptables-legacy /sbin/iptables
RUN rm /sbin/ip6tables && ln -s /sbin/ip6tables-legacy /sbin/ip6tables

RUN wget -qO- https://download.nowtunnel.com/nowtunnel-linux-${ARCH}.tar.gz | tar -xz -C /usr/local/ && \
chmod +x /usr/local/nowtunnel/nowtunnel && \
chmod +x /usr/local/nowtunnel/nowtunnel-bash.sh && \
chmod 755 /usr/local/nowtunnel/cache && \
chmod 755 /usr/local/nowtunnel/log

RUN echo "net.ipv4.ip_forward = 1" >> /etc/sysctl.conf
RUN echo "net.ipv6.conf.all.forwarding = 1" >> /etc/sysctl.conf

WORKDIR /app

CMD ["/bin/bash", "/usr/local/nowtunnel/nowtunnel-bash.sh"]

# Build
docker build --build-arg ARCH=x86_64 -t nowtunnel/nowtunnel-alpine:latest .
#docker build --build-arg ARCH=aarch64 -t nowtunnel/nowtunnel-alpine:latest .

# Run
docker run --net host --privileged --restart=always -itd --hostname mynowtunnel --name mynowtunnel nowtunnel/nowtunnel-alpine:latest /usr/local/nowtunnel/nowtunnel-bash.sh

# Docker 运行日志
docker logs -f --tail 50 mynowtunnel

# Web control
http://宿主IP:9501
# 看到以下内容,证明已经成功运行
# NowTunnel starting. [DATE:2023-12-29 13:44:39, VER:2.1.10, LST:0.0.0.0:9501, INS: ]

 

客户端管理

浏览器打开 http://你的IP:9501 管理该客户端
帐号: admin 密码: nowtunnel
此时环境配置完成,进一步配置请浏览 配置管理