外网浏览器访问 docker 容器内服务
外部网络浏览器如何访问docker容器服务里面的内容呢
·
前言
前面写了关于docker镜像构建的知识,那如何让容器的服务暴露的外部网络呢?
访问处理
启动服务
-p,将容器的端口发布到主机
-P, 将所有暴露的端口发布到随机端口
-d,在后台运行容器并打印容器 ID
docker run -d -P --name test1 hello:v1
[root@sanxingtongxue conf]# docker run -d -P --name test1 hello:v1
fa5b2eaf74df94f93b63cca93548a0bb0b0e8a2e202abb67a42de3683a280970
或指定端口启动
docker run -d -p 5000:8000 --name test2 hello:v1
查看容器端口
[root@sanxingtongxue conf]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
fa5b2eaf74df hello:v1 "/bin/sh -c 'flask r…" 2 minutes ago Up 2 minutes 0.0.0.0:49154->8000/tcp, :::49154->8000/tcp test1
访问服务
主机内部访问:
[root@sanxingtongxue conf]# curl localhost:49154
Hello World![root@sanxingtongxue conf]#
外部浏览器网络访问主机IP:49154
常见问题
若出现,外网访问不通的情况。可能有以下原因:
防火墙端口未开启
参考文章 Linux 防火墙和端口开放管理
关闭防火墙或开启相关端口
若使用云服务打开防火墙安全组
添加规则,开放相应端口解决。
生命潦草,我在弯腰。
更多推荐
已为社区贡献3条内容
所有评论(0)