Docker修改容器內(nèi)部文件的3種簡(jiǎn)單方法
下面三種均可修改,可自行選擇
1、進(jìn)入容器內(nèi)部修改
使用下面的命令以命令行的形式可以進(jìn)入容器的內(nèi)部對(duì)文件進(jìn)行修改。
docker exec -it 容器ID /bin/bash
不過(guò)里面沒(méi)有vim,需要自行安裝,安裝代碼如下所示。不過(guò)不推薦這種形式,因?yàn)槔镞叺奈募桥R時(shí)的,容器被刪除之后,配置就失效了,需要從新配置。
apt-get update apt-get install vim
2、通過(guò)docker cp拷貝進(jìn)行修改
可以通過(guò)下面的代碼將需要修改的文件拷貝出來(lái),修改完成之后再拷貝回去。這種方式其實(shí)和第一種差不多,只是不用安裝vim,但是容器被刪除之后,修改過(guò)的內(nèi)容也會(huì)失效。而且需要重啟容器才能生效(好像)
#將容器中的文件拷貝出來(lái) sudo docker cp 容器ID:/etc/mysql/my.cnf /home/tom/ #將容器中的文件拷貝回去 sudo docker cp /home/tom/my.cnf 容器ID:/etc/mysql/
3、使用-v掛載文件夾(推薦)
最后一種方法是在啟動(dòng)的時(shí)候使用-v將容器內(nèi)部的文件夾掛載(映射)到本地的某個(gè)路徑下,以后以后可以直接在本地修改,不需要進(jìn)入容器內(nèi)部.
#冒號(hào)前是本地路徑(需要絕對(duì)路徑),冒號(hào)后是容器中的路徑 $ docker run --name mytomcat -v /home/www/webapps:/usr/local/tomcat/webapps -d tomcat
最后重啟容器(必須要重啟,才能生效)
docker restart 容器id
附:docker修改容器內(nèi)部只讀文件
要修改 Docker 容器內(nèi)部的只讀文件,可以使用以下步驟:
首先,使用
docker ps
命令查看正在運(yùn)行的容器列表,并找到要修改的容器的名稱或 ID。使用
docker exec -it <容器名稱或ID> bash
命令進(jìn)入容器的交互式終端。在容器內(nèi)部,找到要修改的只讀文件的位置,并使用適當(dāng)?shù)木庉嬈鳎ㄈ?vi、nano 等)打開該文件。
在編輯器中,進(jìn)行所需的修改并保存文件。
退出容器的交互式終端,可以使用
exit
命令。
注意:以上步驟只適用于在容器內(nèi)部修改只讀文件。如果需要在啟動(dòng)容器時(shí)就修改只讀文件,可以通過(guò)構(gòu)建自定義的 Docker 鏡像來(lái)實(shí)現(xiàn)。
總結(jié)
到此這篇關(guān)于Docker修改容器內(nèi)部文件的3種簡(jiǎn)單方法的文章就介紹到這了,更多相關(guān)Docker修改容器內(nèi)部文件內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Linux下Docker及portainer相關(guān)配置方法
本文以CentOS 7為例,安裝docker CE版本,docker有兩種版本,社區(qū)版本CE和企業(yè)版本EE,通過(guò)實(shí)例代碼給大家介紹了Linux下Docker及portainer相關(guān)配置方法,感興趣的朋友跟隨小編一起看看吧2019-06-06Docker部署HertzBeat實(shí)時(shí)監(jiān)控告警系統(tǒng)
HertzBeat是一款開源的實(shí)時(shí)監(jiān)控告警系統(tǒng),本文就來(lái)介紹一下Docker部署HertzBeat實(shí)時(shí)監(jiān)控告警系統(tǒng),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2024-11-11docker的iptables策略詳解和用戶自定義策略的添加方式
在Docker環(huán)境下,直接修改iptables以允許特定主機(jī)訪問(wèn)指定端口時(shí),需要考慮Docker自身的iptables規(guī)則,Docker通過(guò)修改nat表的PREROUTING鏈和filter表的FORWARD鏈來(lái)處理外部對(duì)Docker容器的訪問(wèn),繞過(guò)了filter表的INPUT鏈2024-10-10使用Docker Compose部快速署ELK(親測(cè)有效)
這篇文章主要介紹了Docker Compose部署ELK的詳細(xì)過(guò)程,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-08-08使用Docker搭建MQTT服務(wù)器的過(guò)程詳解
這篇文章主要介紹了使用Docker搭建MQTT服務(wù)器的過(guò)程,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-12-12docker-compose實(shí)現(xiàn)wireshark對(duì)linux主機(jī)進(jìn)行抓包
這篇文章主要為大家介紹了docker-compose實(shí)現(xiàn)wireshark對(duì)linux主機(jī)進(jìn)行抓包腳本示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-12-12