首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Docker映射详解,没问题了!

小伙伴儿们,大家好!上一篇我们了解到了Docker容器的操作命令——久等了!Docker容器常用命令 今天来学习Docker端口映射!持续更新,敬请期待!

思维导图:

1,Docker映射是什么?

容器里面运行着应用,外部需要访问交互,涉及到容器里面的端口和宿主机之间的映射;

通过端口映射,我们就可以从外部访问宿主机的指定端口来访问到容器的应用

2,如何实现Docker映射?

这里我们以Tomcat为例子,我们看看如何在外部通过Docker端口映射来访问宿主主机里面的Tomca。

2.1,下载tomcat容器镜像

下载镜像:docker pull tomcat:tag,不加版本号的话默认是下载最新版本

查看所有镜像:docker images,我这里是已经下载了三个版本的tomcat

2.2,创建并启动tomcat容器

创建启动tomcat容器:docker run --name tomcat1 -d tomcat :latest, 其中-d是表示后台运行容器,tomcat1是容器名称,tomcat :latest是注明版本号

查看正在运行的容器:docker ps

2.3,开放端口映射命令

映射命令:docker run --name 容器名称 -d -p (服务器端口):(Docker端口) image-name

--name:自定义容器名,不指定时,docker会自动生成一个名称

-d:表示后台运行容器

服务器端口:这里的tomcat端口是8080

Docker端口:我们任意设置一个端口号,但是前提是这个端口号不能被占用

image-name:指定运行的镜像名称以及Tag,这里也可以用镜像ID都可以的

这个时候我们的端口以及搭建好了,我们在浏览器中输入服务器ip地址(查看命令:ip addr show)再加上Docker端口就可以访问了。

结果,就这??

2.4,关于访问映射端口出现404问题

这个问题相信刚开始搭建的时候应该都遇到过,我查了一下原因如下:

解决办法:

我们先进入到tomcat的目录:

进入之后,修改webappswebapps2或者修改webapps.distwebapps就可以了

我们先来看看效果:

3,提交运行容器成为镜像

上述运行成功之后,也存在一定问题,如果不退当前容器的情况下,运行端口端口映射的tomcat是可以访问到首页的;但是,我们只是在这个容器中修改了 命名,我们重启了这个容器,修改的命名就会恢复。

为了防止恢复问题,我们自己把修改后的镜像映射成新的镜像

命令:docker commit -a=“作者名” -m=“备注” 运行时容器ID 新镜像名称

然后我们就可以用新镜像来重新访问映射端口的应用了

非常方便!


好了,今天就先分享到这里了,下期继续给大家带来Docker的使用后续内容!

  • 发表于:
  • 本文为 InfoQ 中文站特供稿件
  • 首发地址https://www.infoq.cn/article/a05ee3274903e974b0cb2e436
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券