亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Docker上部署?nps?和?npc?實(shí)現(xiàn)內(nèi)網(wǎng)穿透

 更新時間:2023年04月24日 08:42:50   作者:YEUNGCHIE  
本文介紹了如何使用Docker部署nps和npc實(shí)現(xiàn)內(nèi)網(wǎng)穿透。nps是一款高性能的內(nèi)網(wǎng)穿透代理服務(wù)器,npc是nps的客戶端,可以將內(nèi)網(wǎng)服務(wù)映射到公網(wǎng)上。通過Docker的容器化技術(shù),可以方便地部署和管理nps和npc,同時保證了應(yīng)用的隔離性和安全性。

云主機(jī)上運(yùn)行 nps

創(chuàng)建映射目錄

mkdir -p ~/docker/nps/config

拉取鏡像

docker pull oldiy/nps-server

運(yùn)行容器 創(chuàng)建容器

docker run -d --name nps --net=host -v /root/docker/nps/config:/nps/conf oldiy/nps-server

現(xiàn)在 nps 已經(jīng)開始運(yùn)行了。

停止運(yùn)行容器

docker stop nps

為什么這里要停止運(yùn)行呢?

因?yàn)檫@時候在 config 目錄下已經(jīng)生成了一些配置文件,考慮到安全性,我們需要做一些改動。

修改配置

vim /root/docker/nps/config/nps.conf

打開后重點(diǎn)關(guān)注下面這幾項(xiàng):

...
bridge_port=8024    # 客戶端連接端口
...
web_username=admin  # 后臺管理用戶名
web_password=123    # 后臺管理密碼
web_port = 8080     # 后臺管理端口
...

以上是默認(rèn)的配置,建議改掉。

啟動容器

docker start nps

現(xiàn)在可以在網(wǎng)頁端訪問 <ip_addr>:<web_port>,并通過用戶名 <web_username> 和密碼 <web_password> 登錄后臺管理界面了。
能夠成功訪問后,繼續(xù)下面的步驟。

添加客戶端

點(diǎn)擊左側(cè)菜單欄的 客戶端 選項(xiàng),再點(diǎn)擊新增。

設(shè)置一個 客戶端驗(yàn)證密鑰,這里可以隨便填。壓縮、加密愿意的話也可以選 yes。

設(shè)置好后點(diǎn)擊 新增 即可。

留意一下這里的 idvkey。

本地機(jī)上運(yùn)行 npc

本地機(jī)建議選擇一臺 7*24 小時運(yùn)行的設(shè)備,一般是路由器或者 NAS ,我這里就選擇群暉了,DSM 有很好用的 docker 圖形化管理套件,所以下面用圖形化界面演示如何部署 npc 。

拉取鏡像

點(diǎn)擊菜單欄中的注冊表,搜索 npc-client,下載第一個就行。

創(chuàng)建容器

點(diǎn)擊菜單欄中的映像,找到下載好的npc,啟動。

高級設(shè)置->網(wǎng)絡(luò)中注意勾選使用與 Docker Host 相同的網(wǎng)絡(luò)。

再到高級設(shè)置->環(huán)境中修改兩個環(huán)境變量:

SERVERIP

對應(yīng)云主機(jī)的 <ip>:<bridge_port> VKEY

對應(yīng)上面添加過的客戶端的 vkey

接著一路點(diǎn)擊 應(yīng)用,啟動容器即可。

這時候在 nps 后臺可以看到客戶端已經(jīng)在線。

后臺配置 nps

前面部署 nps 時候已經(jīng)配置了一部分了,接下來要配置的就是具體需要穿透的端口了。

添加 tcp 隧道

這里舉例配置一下 Jellyfin 的 http 端口 8096。
進(jìn)入 nps 后臺管理,點(diǎn)擊左側(cè)菜單欄的 客戶端 選項(xiàng),再點(diǎn)擊新增。

類型
這里選 tcp 不用動它。 備注
隨便填,方便自己記就行。 服務(wù)器端口
指外放訪問端口,我這里跟 Jellyfin 內(nèi)網(wǎng)一致了,這里只是為了演示用默認(rèn),等下就會改掉。 目標(biāo)
指內(nèi)網(wǎng)對應(yīng)服務(wù)的地址和端口。 客戶端 id
就是上面我說了要留意一下的 id,我這里是 3

然后點(diǎn)擊 新增。

這樣一條隧道就添加好了。

至此內(nèi)網(wǎng)穿透算是部署好了。

嘗試訪問一下 Jellyfin。

容器?;?/h2>

有時候運(yùn)行的容器會自己掛掉,雖然不經(jīng)常發(fā)生,但是偶爾來一次,遇上剛好要用的時候就很煩人。
下載演示我在服務(wù)端如何讓容器?;畹模椒ū容^粗暴但有效。

創(chuàng)建目錄

創(chuàng)建目錄來存放腳本和日志文件。

mkdir -p /root/docker/nps/script
mkdir -p /root/docker/nps/log

獲取容器 ID

docker ps -q --no-trunc

會得到一長串 ID,記下來 <nps_id>。

如果你返回了多個 ID,那你應(yīng)該知道要怎么區(qū)分那個是 nps 的。

keepActive.sh

創(chuàng)建 bash 腳本,放到 /root/docker/nps/script/keepActive.sh

#!/bin/bash
cur=$(cd $(dirname $0); pwd -P)
log="$cur/../log/log"
a=$(docker ps -q --no-trunc | grep '<nps_id>')  # 這里其實(shí)就是去匹配看看當(dāng)前運(yùn)行中的容器有沒有nps,<nps_id>改成上一步獲取到的。
if [[ "_$a" == "_" ]]; then
    docker restart nps  # 第一次重啟 nps
    if [[ $? == 0 ]]; then
        echo "Revive  $(date +'%F %T')" >> $log
    else
        echo "Failed  $(date +'%F %T')" >> $log
        systemctl restart docker.service  # 重啟失敗大概率是 docker 服務(wù)掛了,這里重啟服務(wù)
        docker restart nps
        echo "Restart $(date +'%F %T')" >> $log
    fi
else
    echo "Active  $(date +'%F %T')" >> $log
fi

如果是服務(wù) docker 掛了,且重啟失敗,那就不是保不?;畹膯栴}了,登上服務(wù)器檢查吧。

crontab.set

創(chuàng)建一個 crontab.set,用來配置定時任務(wù)。這個文件就隨便放了,一次性的。

SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root

*  *  *  *  * /root/docker/nps/script/keepActive.sh

接著運(yùn)行:

crontab crontab.set

這里是配置一分鐘運(yùn)行一次 keepActive.sh 腳本,所以如果 nps 掛了,一分鐘內(nèi)它就會重啟了。

如果你還配置了其他的定時任務(wù),那你應(yīng)該知道怎么設(shè)置 crontab,別把以前配置的任務(wù)給覆蓋了。

Docker的容器化技術(shù)為應(yīng)用的部署和管理帶來了很大的便利性,尤其是在內(nèi)網(wǎng)穿透這種需要部署多個應(yīng)用的場景下。本文介紹了如何使用Docker部署nps和npc實(shí)現(xiàn)內(nèi)網(wǎng)穿透,通過容器的隔離性和安全性,可以有效地保護(hù)應(yīng)用的安全性。同時,Docker的易用性和可擴(kuò)展性也為應(yīng)用的管理和維護(hù)帶來了很大的便利性。

到此這篇關(guān)于Docker上部署 nps 和 npc 實(shí)現(xiàn)內(nèi)網(wǎng)穿透的文章就介紹到這了,更多相關(guān)Docker上部署 nps 和 npc內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • docker-compose部署etcd集群的實(shí)現(xiàn)步驟

    docker-compose部署etcd集群的實(shí)現(xiàn)步驟

    本文主要介紹了docker-compose部署etcd集群的實(shí)現(xiàn)步驟,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-10-10
  • 詳解Docker Swarm服務(wù)發(fā)現(xiàn)和負(fù)載均衡原理

    詳解Docker Swarm服務(wù)發(fā)現(xiàn)和負(fù)載均衡原理

    這篇文章主要介紹了詳解Docker Swarm服務(wù)發(fā)現(xiàn)和負(fù)載均衡原理,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-05-05
  • 如何在mac上用docker對Oracle進(jìn)行部署使用

    如何在mac上用docker對Oracle進(jìn)行部署使用

    這篇文章主要介紹了如何在mac上用docker對Oracle進(jìn)行部署使用,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-03-03
  • supervisor下的Dockerfile的多服務(wù)鏡像封裝操作

    supervisor下的Dockerfile的多服務(wù)鏡像封裝操作

    這篇文章主要介紹了supervisor下的Dockerfile的多服務(wù)鏡像封裝操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-11-11
  • centos7更改docker倉庫的方法

    centos7更改docker倉庫的方法

    這篇文章主要介紹了centos7更改docker倉庫的方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-07-07
  • Docker基礎(chǔ)學(xué)習(xí)之?dāng)?shù)據(jù)管理

    Docker基礎(chǔ)學(xué)習(xí)之?dāng)?shù)據(jù)管理

    我們在使用Docker 的時候,會產(chǎn)生很多數(shù)據(jù),比如web服務(wù)器啊,數(shù)據(jù)庫之類的,有時我們還需要備份或復(fù)制這些數(shù)據(jù),這就需要涉及到Docker的數(shù)據(jù)管理了。這篇文章就給大家詳細(xì)的介紹Docker的數(shù)據(jù)管理,感興趣的朋友們可以參考借鑒,下面來一起看看吧。
    2016-10-10
  • 詳解Docker容器可視化監(jiān)控中心搭建

    詳解Docker容器可視化監(jiān)控中心搭建

    本篇文章主要介紹了詳解Docker容器可視化監(jiān)控中心搭建,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-04-04
  • docker中mysql開啟日志的實(shí)現(xiàn)步驟

    docker中mysql開啟日志的實(shí)現(xiàn)步驟

    本文主要介紹了docker中mysql開啟日志的實(shí)現(xiàn)步驟,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-07-07
  • docker-compose的安裝和使用詳解

    docker-compose的安裝和使用詳解

    這篇文章主要介紹了docker-compose的安裝和使用詳解,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-11-11
  • Docker部署php運(yùn)行環(huán)境(php-fpm+nginx)

    Docker部署php運(yùn)行環(huán)境(php-fpm+nginx)

    Docker?是一種流行的容器化平臺,可以幫助開發(fā)人員快速創(chuàng)建、部署和管理容器化應(yīng)用程序,本文將介紹如何使用?Docker?搭建?PHP?開發(fā)環(huán)境服務(wù)器,讓您能夠輕松地開始?PHP?開發(fā)工作,感興趣的可以了解一下
    2023-11-11

最新評論