docker网络-如何让外部网络访问容器资源

时间:2021-04-18 03:01:54
docker网络-如何让外部网络访问容器资源

安装httpd 服务:

docker:/root# docker exec -it f63b2633d146 bash
bash-4.1# yum install httpd
Loaded plugins: fastestmirror docker:/root# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
107d8291c6bc 192.168.32.150:5000/zjzc_centos6.5_m1 "bash" 3 hours ago Up 3 hours prickly_colden
99037e5ed32e 192.168.32.150:5000/zjzc_centos6.5_template "bash" 4 hours ago Up 4 hours zjtest02
f63b2633d146 192.168.32.150:5000/zjzc_centos6.5_template "bash" 4 hours ago Up 4 hours zjtest01 docker commit -m "zjzc_centos6.5-m2" -a scan 1a177b16d2a6 192.168.32.150:5000/zjzc_centos6.5_m1 docker:/root# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
107d8291c6bc 192.168.32.150:5000/zjzc_centos6.5_m1 "bash" 3 hours ago Up 3 hours prickly_colden
99037e5ed32e 192.168.32.150:5000/zjzc_centos6.5_template "bash" 5 hours ago Up 5 hours zjtest02
f63b2633d146 192.168.32.150:5000/zjzc_centos6.5_template "bash" 5 hours ago Up 5 hours zjtest01
docker:/root#
docker:/root# docker commit -m "zjzc_centos6.5-m2" -a scan f63b2633d146 zjzc_centos6.5_m2
fbce1a72323329e3ce2831652f0b173056ef1111485f4d4a5a1afb6358955608 docker run -itd -p5123:80 centos-httpd bash 左边的端口是宿主机的端口 右边是docker容器的端口 docker:/root# docker run -itd -p 5123:80 zjzc_centos6.5_m2 bash
d0339cedbb2915c678a47760d4d23bf8b3f24f813f3e084413cb0624a0abe4eb
docker:/root# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
d0339cedbb29 zjzc_centos6.5_m2 "bash" 3 seconds ago Up 2 seconds 0.0.0.0:5123->80/tcp mad_hoover
107d8291c6bc 192.168.32.150:5000/zjzc_centos6.5_m1 "bash" 3 hours ago Up 3 hours prickly_colden
99037e5ed32e 192.168.32.150:5000/zjzc_centos6.5_template "bash" 5 hours ago Up 5 hours zjtest02
f63b2633d146 192.168.32.150:5000/zjzc_centos6.5_template "bash" 5 hours ago Up 5 hours zjtest01
docker:/root# docker exec -it d0339cedbb29 bash zjzc_centos6.5_m2 镜像名字: bash-4.1# service httpd start
Starting httpd: httpd: Could not reliably determine the server's fully qualified domain name, using 172.17.0.6 for ServerName
[ OK ]
bash-4.1# netstat -na
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 :::80 :::* LISTEN
Active UNIX domain sockets (servers and established)
Proto RefCnt Flags Type State I-Node Path bash-4.1# curl localhost/scan.html
aaaaaaaaa
bbbbbbbbb
ccccccccc 宿主机*问: docker:/root# curl 192.168.32.151:5123/scan.html
aaaaaaaaa
bbbbbbbbb
ccccccccc