刚启动了docker,就想部署一下试试效果,可万万没想到,接下来的路,还是不平坦,
1、发布tomcat容器
#使用宿主机端口号8888 映射到tomcat容器8080端口号
docker run -it -p 8888:8080 tomcat
运行成功后,访问地址如下:
没得说,肯定是未开放8888端口,于是进行端口开放操作
# 打开iptables配置文件
vi /etc/sysconfig/iptables
#在文件22端口开放处,依样画葫芦
-A INPUT -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 8888 -j ACCEPT
#保存文件,重启iptabls
systemctl restart iptables
再次访问,出现链接已被重置现象,这个挺麻烦,真是给面子,改遇到的,不该遇到的,都遇到了
经过资料查找,对docker容器进行了网桥重置的操作,具体操作如下:
[root@root ~]# ip link set dev docker0 down
[root@root ~]# brctl delbr docker0
[root@root ~]# brctl addbr docker0
[root@root ~]# ip addr add 172.16.10.1/24 dev docker0
[root@root ~]# ip link set dev docker0 up
[root@root ~]# ip addr
访问可以正常了,但是tomcat容器运行起来后,没有ROOT/index.html文件,我们可以自己创建一个,进行展示
# docker exec -it 容器id /bin/bash 进入容器交互控制台
docker exec -it a50a /bin/bash
#找到webapp的路径,并进去执行mkdir ROOT 创建文件夹
mkdir ROOT
# 进入ROOT路径,创建index.html ,注意,vi命令此时已失效
echo hello > index.html
到此访问成功!