您好,登錄后才能下訂單哦!
本文小編為大家詳細介紹“docker怎么運行花生殼實現(xiàn)內(nèi)外網(wǎng)穿透”,內(nèi)容詳細,步驟清晰,細節(jié)處理妥當,希望這篇“docker怎么運行花生殼實現(xiàn)內(nèi)外網(wǎng)穿透”文章能幫助大家解決疑惑,下面跟著小編的思路慢慢深入,一起來學習新知識吧。
環(huán)境:centos 7 ,64位
1、創(chuàng)建一個指定的文件夾作為安裝示例所用,該示例文件夾為“hsk-nwct”?!癶sk-nwct”內(nèi)創(chuàng)建“app”文件夾作為docker容器掛載出來的文件。
2、在“app”內(nèi)下載花生殼linux安裝包
本服務(wù)下載的版本是“phddns_5.2.0_amd64.rpm”,然后創(chuàng)建容器內(nèi)執(zhí)行的安裝命令文件“a.sh”?!癮.sh”文件內(nèi)容
#!/bin/sh a="開始啟動 docker phddns 花生殼服務(wù)" echo $a echo "進入安裝包所在文件夾" cd app/ echo "花生殼服務(wù)檢測" if command -v phddns >/dev/null 2>&1;then echo "服務(wù)已安裝" phddns status else echo "服務(wù)未安裝,執(zhí)行安裝" rpm -ivh phddns_5.2.0_amd64.rpm echo "服務(wù)完成、設(shè)置開機啟動" phddns enable fi
該命令是先檢測容器內(nèi)有沒有安裝過花生殼應(yīng)用,沒有則執(zhí)行安裝的流程。
3、退出“app”文件,在“hsk-nwct”內(nèi)運行容器。執(zhí)行如下命令:
docker run --privileged=true --restart=always -e TZ="Asia/Shanghai" \ -d --net=host --name hskct2023 \ -v /root/docker/hsk-nwct/app:/app \ dokken/centos-7:latest
第一次運行,可以考慮將“ --restart=always”去掉,方便查看容器是否運行成功,使用如下命令:
docker logs hskct2023
4、在運行的容器內(nèi)安裝花生殼,命令如下:
docker exec -it hskct2023 /bin/bash /app/a.sh
執(zhí)行完后,可以看到如下
可以考慮在容器內(nèi)繼續(xù)執(zhí)行 ”phddns status“ 查看是否啟動成功。記住 ”sn“碼,將它綁定到“設(shè)備列表”即可,管理端地址是:花生殼管理 。
5、試錯展示,最開始時是將第3、第4 步的兩個命令合在一起的,后來發(fā)現(xiàn),容器運行一會兒就自動退出了,查看日志也是提示安裝成功了,并沒有其他什么報錯。后來了解到容器運行就退出的幾個原因:
docker容器運行必須有一個前臺進程, 如果沒有前臺進程執(zhí)行,容器認為空閑,就會自行退出
容器運行的命令如果不是那些一直掛起的命令( 運行top,tail、循環(huán)等),就是會自動退出
這個是 docker 的機制問題
很明顯, 第四步的執(zhí)行“a.sh”的命令并不會一直掛著的,所以他會安裝完花生殼應(yīng)用就自己關(guān)閉退出了。試錯命令如下:
docker run --privileged=true --restart=always -e TZ="Asia/Shanghai" \ -d --net=host --name hskct2023 \ -v /root/docker/hsk-nwct/app:/app \ dokken/centos-7:latest /bin/bash /app/a.sh
6、每次都要輸入命令,為圖方便,我將需要執(zhí)行的命令整合了一下。在“hsk-nwct”內(nèi)創(chuàng)建“test.sh”文件,內(nèi)編輯
#!/bin/sh a="開始啟動 docker hsk 花生殼內(nèi)外網(wǎng)穿透 服務(wù)" echo $a docker stop hskct2023 docker rm hskct2023 docker run --privileged=true --restart=always -e TZ="Asia/Shanghai" \ -d --net=host --name hskct2023 \ -v /root/docker/hsk-nwct/app:/app \ dokken/centos-7:latest echo "容器啟動成功,開始執(zhí)行安裝" docker exec -it hskct2023 /bin/bash /app/a.sh exit exit
運行成功的示例:
7、其他命令,記錄一下方便回顧:
刪除花生殼的命令:yum remove phddns -y
讀到這里,這篇“docker怎么運行花生殼實現(xiàn)內(nèi)外網(wǎng)穿透”文章已經(jīng)介紹完畢,想要掌握這篇文章的知識點還需要大家自己動手實踐使用過才能領(lǐng)會,如果想了解更多相關(guān)內(nèi)容的文章,歡迎關(guān)注億速云行業(yè)資訊頻道。
免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。