最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Docker 未映射端口的解決方案(兩種無需重啟容器的訪問方法)

 更新時間:2026年04月02日 09:33:46   作者:XMYX-0  
本文介紹了兩種無需重啟MySQL容器的方法,讓你訪問其數(shù)據(jù)庫,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友參考下吧

以mysql容器為例

實驗背景

在開發(fā)和測試環(huán)境中,常遇到這種情況:

  • 容器內(nèi)運行 MySQL 數(shù)據(jù)庫
  • 容器啟動時未映射 MySQL 默認(rèn)端口 3306
  • 需要從宿主機或外部工具訪問數(shù)據(jù)庫

直接訪問宿主機端口會失敗,因為端口未映射。本文演示 兩種無需重啟原容器 的方法,讓你訪問 MySQL 容器數(shù)據(jù)庫:

  1. socat 臨時端口轉(zhuǎn)發(fā)
  2. Docker 代理容器方案(長期訪問)

實驗環(huán)境準(zhǔn)備

啟動 MySQL 容器(不映射端口):

docker run -d --name mysql-test -e MYSQL_ROOT_PASSWORD=root123 mysql:5.7.34

查看容器狀態(tài):

docker ps

輸出示例:

CONTAINER ID   IMAGE          PORTS
87162db7d5d3   mysql:5.7.34   3306/tcp, 33060/tcp

注意:3306 沒有映射到宿主機。

獲取容器內(nèi)部 IP:

docker inspect -f '{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' mysql-test

輸出示例:

192.168.1.3

方法 1:宿主機使用 socat 臨時端口轉(zhuǎn)發(fā)

socat 可以把宿主機端口臨時映射到容器內(nèi)部端口,無需重啟容器。

1. 安裝 socat

# CentOS / RHEL
yum install -y socat
# Debian / Ubuntu
apt install -y socat

2. 啟動端口轉(zhuǎn)發(fā)

# 將宿主機 3306 端口轉(zhuǎn)發(fā)到容器 3306
socat TCP-LISTEN:3306,fork TCP:192.168.1.3:3306

?? 提醒:如果宿主機已有 MySQL 在運行,請使用備用端口(如 3307)避免沖突。

3. 訪問 MySQL

mysql -h 127.0.0.1 -P 3306 -u root -p'root123'

4. 注意事項

  • socat 會占用終端,會話結(jié)束或 Ctrl+C 后轉(zhuǎn)發(fā)停止
  • 適合 臨時調(diào)試和開發(fā)

方法 2:使用 Docker 代理容器(長期方案)

如果希望長期訪問,并且在宿主機重啟或容器重啟后仍然有效,可以使用 alpine/socat 代理容器:

1. 創(chuàng)建自定義網(wǎng)絡(luò)(推薦方式)

docker network create mysql-net

2. 啟動 MySQL 容器加入網(wǎng)絡(luò)

docker run -d \
  --name mysql-test \
  --network mysql-net \
  -e MYSQL_ROOT_PASSWORD=root123 \
  mysql:5.7.34

3. 啟動代理容器

docker run -d \
  --name mysql-proxy \
  --network mysql-net \
  -p 3306:3306 \
  --restart always \
  alpine/socat \
  TCP-LISTEN:3306,fork TCP:mysql-test:3306

說明:

  • TCP-LISTEN:3306,fork:宿主機監(jiān)聽 3306
  • TCP:mysql-test:3306:轉(zhuǎn)發(fā)到 MySQL 容器

4. 訪問 MySQL

mysql -h 127.0.0.1 -P 3306 -u root -p'root123'

使用此方法,宿主機重啟、代理容器重啟,訪問依然有效。

安全提示

  • socat 暴露端口會直接開放到宿主機,請在可信網(wǎng)絡(luò)使用
  • 生產(chǎn)環(huán)境建議使用防火墻限制訪問,或通過 Docker Compose 管理端口
  • 避免在公網(wǎng)暴露數(shù)據(jù)庫端口

總結(jié)

方法適用場景特點注意事項
socat 臨時轉(zhuǎn)發(fā)臨時開發(fā)調(diào)試快速、無需改動原容器進(jìn)程結(jié)束即停止
Docker 代理容器長期訪問支持宿主機/容器重啟,類似端口映射占用宿主機端口,需注意安全

?? 最佳實踐

  • 開發(fā)環(huán)境:臨時調(diào)試可用 socat
  • 測試/長期環(huán)境:代理容器 + 自定義網(wǎng)絡(luò)
  • 生產(chǎn)環(huán)境:啟動容器時就映射端口或使用 Docker Compose 管理

到此這篇關(guān)于Docker 未映射端口的解決方案(兩種無需重啟容器的訪問方法)的文章就介紹到這了,更多相關(guān)Docker 未映射端口內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Docker中控制服務(wù)啟動順序的操作方法

    Docker中控制服務(wù)啟動順序的操作方法

    Docker是一種開源的應(yīng)用容器引擎,允許開發(fā)者將應(yīng)用及其依賴打包進(jìn)容器,實現(xiàn)快速、一致的部署,Docker三劍客compose、machine和swarm提供了不同層面的服務(wù)管理和編排,使得在不同環(huán)境中部署應(yīng)用變得簡單高效
    2024-10-10
  • 前端轉(zhuǎn)全棧必須要掌握的一些Docker知識

    前端轉(zhuǎn)全棧必須要掌握的一些Docker知識

    對于長期深耕于瀏覽器環(huán)境的前端開發(fā)者而言,邁向全棧并非僅僅是技術(shù)棧的延伸,更是一次思維模式的根本性轉(zhuǎn)變,這篇文章主要介紹了前端轉(zhuǎn)全棧必須要掌握的一些Docker知識,需要的朋友可以參考下
    2026-03-03
  • Docker?部署?OnlyOffice?文檔服務(wù)器的操作方法

    Docker?部署?OnlyOffice?文檔服務(wù)器的操作方法

    本文詳細(xì)介紹了如何使用Docker部署OnlyOffice文檔服務(wù)器,包括準(zhǔn)備工作、設(shè)置變量和目錄結(jié)構(gòu)、創(chuàng)建并運行OnlyOffice容器、訪問OnlyOffice文檔服務(wù)器以及配置和管理,通過這些步驟,你可以在本地快速搭建一個強大的文檔編輯平臺,感興趣的朋友一起看看吧
    2025-02-02
  • Docker?容器安裝?Dify的兩種方法詳解

    Docker?容器安裝?Dify的兩種方法詳解

    該文章介紹了如何使用Docker容器在Windows上安裝Dify,方法一通過拉取Dify鏡像并運行容器,方法二通過克隆Dify源代碼并使用DockerCompose啟動容器,兩種方法各有優(yōu)缺點,選擇哪種方法取決于具體需求,感興趣的朋友跟隨小編一起看看吧
    2025-02-02
  • docker容器中安裝vim問題解決

    docker容器中安裝vim問題解決

    本文主要介紹了docker容器中安裝vim問題解決,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-08-08
  • docker安裝Redis高可用實現(xiàn)一主二從三哨兵

    docker安裝Redis高可用實現(xiàn)一主二從三哨兵

    redis提供了哨兵模式保證redis實現(xiàn)高可用,本文主要介紹了docker安裝Redis高可用實現(xiàn)一主二從三哨兵,文中通過示例代碼介紹的非常詳細(xì),需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2024-02-02
  • 詳解docker-compose.yml文件常用模版命令

    詳解docker-compose.yml文件常用模版命令

    這篇文章主要介紹了docker-compose.yml文件常用模版命令,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友參考下吧
    2021-11-11
  • Docker v1.13.0 正式版發(fā)布

    Docker v1.13.0 正式版發(fā)布

    本文給大家分享的是Docker v1.13.0 正式版發(fā)布的信息,最近一直在學(xué)習(xí)docker中,所以關(guān)注的比較多,這里分享給大家
    2017-01-01
  • Docker上部署mysql8主從復(fù)制的實現(xiàn)

    Docker上部署mysql8主從復(fù)制的實現(xiàn)

    本文主要介紹了Docker上部署mysql8主從復(fù)制的實現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-08-08
  • docker remote api一鍵TLS加密的實現(xiàn)

    docker remote api一鍵TLS加密的實現(xiàn)

    本文主要介紹了docker remote api一鍵TLS加密的實現(xiàn),文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-11-11

最新評論

炎陵县| 商丘市| 丽水市| 大化| 定兴县| 盈江县| 固阳县| 龙川县| 旌德县| 顺义区| 商河县| 扬州市| 枣强县| 玉环县| 武陟县| 邵东县| 梧州市| 福建省| 太仓市| 蒙自县| 潞西市| 札达县| 凌海市| 萍乡市| 盐边县| 芷江| 望都县| 城固县| 西吉县| 昌吉市| 视频| 两当县| 泸水县| 浮山县| 偏关县| 于田县| 边坝县| 罗源县| 勐海县| 新竹市| 宜都市|