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

docker容器修改端口和目錄映射的方法步驟

 更新時(shí)間:2025年03月27日 10:56:06   作者:AI松子666  
在使用Docker時(shí),容器的端口映射是一個(gè)核心概念,它允許容器與宿主機(jī)以及外部網(wǎng)絡(luò)進(jìn)行通信,這篇文章主要介紹了docker容器修改端口和目錄映射的方法步驟,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下

一、容器修改端口映射

一般在運(yùn)行容器時(shí),我們都會(huì)通過參數(shù) -p(使用大寫的-P參數(shù)則會(huì)隨機(jī)選擇宿主機(jī)的一個(gè)端口進(jìn)行映射)來指定宿主機(jī)和容器端口的映射,例如

docker run -it -d --name [container-name] -p 8088:80 [image-name]

這里是將容器內(nèi)的80端口映射到宿主機(jī)的8088端口

參數(shù)說明

-d 表示后臺(tái)運(yùn)行容器

-t 為docker分配一個(gè)偽終端并綁定到容器的標(biāo)準(zhǔn)輸入上

-i 是讓容器的標(biāo)準(zhǔn)輸入保持打開狀態(tài)

-p 指定映射端口

在運(yùn)行容器時(shí)指定映射端口運(yùn)行后,如果想要添加新的端口映射,可以使用以下兩種方式:

方式一:將現(xiàn)有的容器打包成鏡像,然后在使用新的鏡像運(yùn)行容器時(shí)重新指定要映射的端口

方式二:修改要端口映射的容器的配置文件

查看容器信息:

docker ps -a

查看容器的端口映射情況,在容器外執(zhí)行:

docker port 容器ID 或者 docker port 容器名稱

查找要修改容器的容器Id

docker inspect f244 | grep Id

進(jìn)到/var/lib/docker/containers 目錄下找到與 Id 相同的目錄,修改 hostconfig.json 和 config.v2.json文件:

若該容器還在運(yùn)行,先停掉

docker stop 容器ID

停掉docker服務(wù)

systemctl stop docker

修改hostconfig.json如下,添加端口綁定"9003/tcp": [{“HostIp”: “”,“HostPort”: “9003”}],表示綁定端口9003

修改config.v2.json在ExposedPorts中加上要暴露的端口,即9003

改完之后保存啟動(dòng)docker

systemctl start docker

之后可以再次查看添加的端口是否已映射綁定上

附注:

1、將容器打包成鏡像命令:

docker commit -a "king西陽(yáng)" -m "a new image" [容器名稱或id] [打包的鏡像名稱]:[標(biāo)簽]

常用OPTIONS說明:

-a :提交的鏡像作者

-c :使用Dockerfile指令來創(chuàng)建鏡像

-m :提交時(shí)的說明文字

-p :在commit時(shí),將容器暫停

2、查看宿主機(jī)端口是否和容器內(nèi)端口映射成功,在容器外執(zhí)行

netstat -an |grep 宿主機(jī)的映射端口

如果有進(jìn)程存在則表示有映射

二、容器修改目錄映射

問題背景

docker run -d -p 9999:8080 -i --name tomcat7 -v /usr/local/webapps:/usr/local/tomcat/webapps tomcat:7

• 創(chuàng)建容器時(shí),指定了目錄映射(-v)
• 如果容器運(yùn)行之后發(fā)現(xiàn)目錄映射需要改怎么辦?

刪除原有容器,重新創(chuàng)建新的容器

刪除容器

docker rm -f 容器ID/名字

重新創(chuàng)建容器

 docker run -d -p 9999:8080 -i --name tomcat7 -v /usr/local/tomcat/webapps:/usr/local/tomcat/webapps tomcat:7

重新指定需要映射的目錄

優(yōu)點(diǎn)

簡(jiǎn)單粗暴,在測(cè)試環(huán)境用的更多

缺點(diǎn)

如果是數(shù)據(jù)庫(kù)、服務(wù)器相關(guān)的容器,創(chuàng)建新的容器,又得重新配置相關(guān)東西了

修改容器配置文件(重點(diǎn))

暫停 Docker 服務(wù)

systemctl stop docker

進(jìn)入 Docker 容器配置文件目錄下

cd /var/lib/docker/containers/
ls

進(jìn)入某個(gè)容器的配置文件目錄下

容器ID 就是文件夾名稱,可通過 docker ps -aq 來查看,不過這是縮寫,對(duì)照起來看就行

cd c614b6db4aed0c8d0c742baa09ff4e2c24761703586460b68633d7b66e62c633
ls

修改 config.v2.json

vim config.v2.json

輸入 / ,搜索映射的目錄(webapps)

也可以找到 MountPoints

若需要重新指定主機(jī)上的映射目錄,則改綠圈的兩個(gè)地方

若需要重新指定容器上的映射目錄,則改藍(lán)圈的兩個(gè)地方

MountPoints 節(jié)點(diǎn)

其實(shí)是一個(gè) json 結(jié)構(gòu)的數(shù)據(jù),下圖

重新啟動(dòng) Docker 服務(wù)

systemctl stop docker
docker start tomcat7
cd /usr/local/tomcat/webapps
ls

重新映射目錄成功?。?/p>

注意

• 如果想修改 Docker 容器隨著 Docker 服務(wù)啟動(dòng)而自啟動(dòng),可看:https://www.cnblogs.com/poloyy/p/13985567.html

• 如果想修改 Docker 的映射端口,可看:https://www.cnblogs.com/poloyy/p/13940554.html

• 改 hostconfig.json 并不會(huì)成功哦

優(yōu)點(diǎn)

直接操作配置文件沒有副作用,算簡(jiǎn)單

缺點(diǎn)

需要暫停 Docker 服務(wù),會(huì)影響其他正常運(yùn)行的 Docker 容器

使用 docker commit 命令

停止 Docker 容器

docker stop tomcat7

使用 commit 構(gòu)建新鏡像

docker commit tomcat7 new_tomcat7
docker images

使用新鏡像重新創(chuàng)建一個(gè) Docker 容器

docker run -d -p 9999:8080 -i --name tomcat77 -v /usr/local/tomcat/webapps:/usr/local/tomcat/webapps tomcat:7

修改新容器的名字

如果新容器想用回舊容器的名字,需要先刪了舊容器,再改名

docker rm -f tomcat7
docker rename tomcat77 tomcat7
docker ps

優(yōu)點(diǎn)

• 無(wú)需停止 Docker 服務(wù),不影響其他正在運(yùn)行的容器

• 舊容器有的配置和數(shù)據(jù),新容器也會(huì)有,不會(huì)造成數(shù)據(jù)或配置丟失,對(duì)新舊容器都沒有任何影響

缺點(diǎn)

需要生成新的鏡像和容器,管理鏡像和容器的時(shí)間成本會(huì)上升

總結(jié)

到此這篇關(guān)于docker容器修改端口和目錄映射的文章就介紹到這了,更多相關(guān)docker修改端口和目錄映射內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 宿主機(jī)無(wú)法訪問docker容器中nginx服務(wù)的問題解決

    宿主機(jī)無(wú)法訪問docker容器中nginx服務(wù)的問題解決

    在虛擬機(jī)中部署Docker并安裝Nginx后,宿主機(jī)無(wú)法訪問容器內(nèi)的Nginx服務(wù),通過檢查端口映射、防火墻狀態(tài)、進(jìn)入容器內(nèi)部啟動(dòng)Nginx以及檢查/修改內(nèi)核的IP轉(zhuǎn)發(fā)設(shè)置,解決了該問題,感興趣的可以了解一下
    2024-11-11
  • Docker Buildx 簡(jiǎn)介與安裝指南(最新推薦)

    Docker Buildx 簡(jiǎn)介與安裝指南(最新推薦)

    Docker Buildx 是 Docker 官方推出的一款增強(qiáng)型構(gòu)建工具,旨在簡(jiǎn)化和優(yōu)化多架構(gòu)容器映像的構(gòu)建流程,這篇文章主要介紹了Docker Buildx 簡(jiǎn)介與安裝指南,需要的朋友可以參考下
    2024-08-08
  • Linux如何使用Docker部署DashDot訪問本地服務(wù)器面板

    Linux如何使用Docker部署DashDot訪問本地服務(wù)器面板

    DashDot是一款簡(jiǎn)單、實(shí)用的開源現(xiàn)代服務(wù)器儀表盤,主要應(yīng)用于小型?VPS?和私人的服務(wù)器(比如說NAS),它是一個(gè)界面非常漂亮的監(jiān)控服務(wù)器面板,這篇文章給大家介紹Linux使用Docker部署DashDot訪問本地服務(wù)器面板的相關(guān)知識(shí),感興趣的朋友跟隨小編一起看看吧
    2024-04-04
  • docker容器時(shí)區(qū)錯(cuò)誤問題

    docker容器時(shí)區(qū)錯(cuò)誤問題

    常出現(xiàn)docker中運(yùn)行的容器獲取到的時(shí)間與北京時(shí)間相差8小時(shí)的問題,其實(shí)是因?yàn)槿萜鬟\(yùn)行的時(shí)區(qū)不正確。本文主要介紹了docker容器時(shí)區(qū)錯(cuò)誤問題,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-12-12
  • Docker容器網(wǎng)絡(luò)基礎(chǔ)概述

    Docker容器網(wǎng)絡(luò)基礎(chǔ)概述

    這篇文章主要介紹了Docker容器網(wǎng)絡(luò)基礎(chǔ)概述,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-09-09
  • Docker 徹底刪除私有庫(kù)鏡像的操作

    Docker 徹底刪除私有庫(kù)鏡像的操作

    這篇文章主要介紹了Docker 徹底刪除私有庫(kù)鏡像的操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2021-03-03
  • Docker構(gòu)建鏡像的兩種方式實(shí)現(xiàn)

    Docker構(gòu)建鏡像的兩種方式實(shí)現(xiàn)

    從 docker 鏡像倉(cāng)庫(kù)中下載的鏡像不能滿足我們的需求時(shí),可以通過以下兩種方式對(duì)鏡像進(jìn)行更改。本文就詳細(xì)的介紹了這兩種方法,感興趣的可以了解一下
    2021-09-09
  • Windows遠(yuǎn)程連接Docker服務(wù)的操作方法

    Windows遠(yuǎn)程連接Docker服務(wù)的操作方法

    本文介紹了在Windows系統(tǒng)下如何通過配置遠(yuǎn)程連接到Docker服務(wù)端,實(shí)現(xiàn)Docker客戶端遠(yuǎn)程訪問和管理Docker容器,本文給大家介紹的非常詳細(xì),感興趣的朋友一起看看吧
    2024-11-11
  • 詳解Docker之Compose服務(wù)編排

    詳解Docker之Compose服務(wù)編排

    Compose是Docker的服務(wù)編排工具,主要用來構(gòu)建基于Docker的復(fù)雜應(yīng)用,Compose 通過一個(gè)配置文件來管理多個(gè)Docker容器,非常適合組合使用多個(gè)容器進(jìn)行開發(fā)的場(chǎng)景。興趣的小伙伴們可以參考一下
    2018-07-07
  • Docker下載加速的兩種方式

    Docker下載加速的兩種方式

    本文介紹了使用網(wǎng)易數(shù)帆和阿里云容器鏡像倉(cāng)庫(kù)進(jìn)行Docker下載加速的兩種方式,第一種是通過網(wǎng)易數(shù)帆官網(wǎng)下載鏡像,第二種是配置阿里云加速器地址到Docker中,這些方法可以幫助用戶更快速地下載Docker鏡像,提升工作效率
    2024-09-09

最新評(píng)論