• docker实战教程(十三):docker上安装tomcat


    docker hub上面查找tomcat镜像

    docker search tomcat
    


    从docker hub上拉取tomcat镜像到本地

    docker pull tomcat
    

    docker images 查看是否有拉取到tomcat

    docker images tomcat
    

    使用tomcat镜像创建容器实例(也叫运行镜像)

    # -p 小写,主机端口:docker容器端口
    # -P 大写,随机分配端口
    # i:交互
    # t:终端
    # d:后台
    docker run -it -p 8080:8080 tomcat
    

    访问猫首页

    1. 问题:访问报404的情况

    2. 解决宿主机(虚拟机)不能访问的问题
      (1). 可能没有映射端口或者没有关闭防火墙 --排除
      (2). 把webapps.dist目录换成webapps
      真正有文件和目录的是webapps.dist,而webapps里没有内容,因此是404,需要将webapps删除,将webapps.dist重新命名为webapps

      再次访问就有内容了

    3. 解决本地不能访问的问题
      前提是本地机和宿主机的关闭了防火墙,本地仍然不能访问容器内的服务,但是本地和宿主机是可以ping通的,宿主机内能正常的访问容器服务
      这时通过查询资料,发现默认情况下,Linux是不具备ip转发功能的,需要配置
      临时配置方式:

    #1.查看是否开启转发功能:0-未开启,1-开启
    cat /proc/sys/net/ipv4/ip_forward 
    
    #2.如果未开启,则进行第2步:配置linux内核允许转发
    sysctl net.ipv4.conf.all.forwarding=1
    
    #3.将iptables FORWARD策略从DROP改为 ACCEPT
    sudo iptables -P FORWARD ACCEPT
    

    永久配置方式

    #1.编辑sysctl.conf文件
    vim /etc/sysctl.conf 
    
    #2.在文件内新增
    net.ipv4.ip_forward=1
    
    #3.重启网络
    systemctl restart network
    

    免修改版说明

    docker pull billygoo/tomcat8-jdk8
    docker run -d -p 8080:8080 --name mytomcat8 billygoo/tomcat8-jdk8
    
  • 相关阅读:
    cocos2d-x 屏幕坐标系和OPenGL坐标系转换
    cocos2d-x 判断系统语言
    cocos2d-x 动画加速与减速
    高性能网络服务器编程:为什么linux下epoll是最好,Netty要比NIO.2好?
    Netty学习三:线程模型
    java NIO原理及实例
    java多线程系列(四)---ReentrantLock的使用
    Java并发之AQS详解
    微服务踩坑之边界
    设计模式:观察者模式(有利于代码解耦)
  • 原文地址:https://www.cnblogs.com/my_captain/p/16736577.html
Copyright © 2020-2023  润新知