一、初次創(chuàng)建容器,指定宿主機(jī)和容器端口的映射,如下示例:
docker run -itd -p 11935:1935 -p 11985:1985 -p 18080:8080 -p 20903:20903 -p 18888:8888 \
--restart=always \
-v /srv/srs3/conf/:/usr/local/srs/conf/ \
-v /srv/srs3/objs/:/usr/local/srs/objs/ \
centos:7.9.2009
## -i 是讓容器的標(biāo)準(zhǔn)輸入保持打開(kāi)狀態(tài)
## -t 為docker分配一個(gè)偽終端并綁定到容器的標(biāo)準(zhǔn)輸入上
## -d 表示后臺(tái)運(yùn)行容器,可不加前臺(tái)運(yùn)行然后ctrl+q+p退出前臺(tái)
## -p 指定映射端口
## -v 路徑映射,主機(jī)路徑:容器內(nèi)路徑
## 最后是image名稱:版本號(hào)
二、對(duì)已存在運(yùn)行容器,更改端口
方式一:(刪了原來(lái)的,根據(jù)image重做)
1、停止容器
docker stop 4f4561192346(CONTAINER ID或name 下同)
2、將容器打包成鏡像
docker commit 4f4561192346 mycentos:0.1(自定義鏡像名:自定版本號(hào))
3、用“一”中的命令,通過(guò)新鏡像開(kāi)啟新容器
方式二:(直接修改現(xiàn)有容器)
1、停止容器
docker stop 4f4561192346
2、查找要修改的容器配置文件路徑
進(jìn)入到上面Id為名稱的路徑下
cd /var/lib/docker/containers/4f4561192346fe42a7770eeae5faff92d...
3、停止docker服務(wù)(注意:這句開(kāi)始不要再執(zhí)行docker命令,否則docker將自動(dòng)啟動(dòng)服務(wù),導(dǎo)致后面修改配置文件無(wú)效?。?!停止命令后會(huì)有提示)
systemctl stop docker
4、修改名稱為hostconfig.json和config.v2.json的兩個(gè)文件
hostconfig.json(修改1處)
vim config.v2.json(修改2處)
5、重新啟動(dòng)docker
systemctl start docker
6、查看容器端口
docker ps -a
也可以這樣看
=== 分隔線,啟動(dòng)后修改容器卷映射
同樣修改config.v2.json和hostconfig.json
config.v2.json
"/usr/local/srs/conf/": {
"Source": "/srv/srs/conf/",
"Destination": "/usr/local/srs/conf/",
"RW": true,
"Name": "",
"Driver": "",
"Type": "bind",
"Propagation": "rprivate",
"Spec": {
"Type": "bind",
"Source": "/srv/srs/conf/",
"Target": "/usr/local/srs/conf/"
},
"SkipMountpointCreation": false
}
hostconfig.json文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-578423.html
文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-578423.html
"/usr/local/srs/conf": {
"Source": "/srv/srs/conf",
"Destination": "/usr/local/srs/conf",
"RW": true,
"Name": "",
"Driver": "",
"Type": "bind",
"Propagation": "rprivate",
"Spec": {
"Type": "bind",
"Source": "/srv/srs/conf",
"Target": "/usr/local/srs/conf"
},
"SkipMountpointCreation": false
},
"/usr/local/srs/objs": {
"Source": "/srv/srs/objs",
"Destination": "/usr/local/srs/objs",
"RW": true,
"Name": "",
"Driver": "",
"Type": "bind",
"Propagation": "rprivate",
"Spec": {
"Type": "bind",
"Source": "/srv/srs/objs",
"Target": "/usr/local/srs/objs"
},
"SkipMountpointCreation": false
}
到了這里,關(guān)于Docker中對(duì)已存在運(yùn)行的容器修改端口映射和容器卷映射的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!