• Docker之Tomcat容器连接mysql容器


    步骤1:拉取mysql镜像,拉取命令如下:(拉取MySQL镜像时最好指定一个常用版本,不加版本号默认拉取 latest 版本,一般生产环境以求稳为主)

    docker pull mysql:5.7
    

    步骤2:拉取tomcat镜像,拉取命令如下:

    docker pull tomcat
    

    步骤3:创建mysql的一个容器,容器的名字是db001,创建命令如下:

    docker run --name db001 -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7
    

    其中:
    1)db001是自定义的mysql容器的别名
    2)MYSQL_ROOT_PASSWORD=123456 是mysql数据root用户的密码
    3)mysql是mysql的镜像名称,,5.7是版本号

    步骤4:启动tomcat容器,并与mysql建立连接,tomcat镜像的名字是myweb,创建命令如下:

    docker run -it -p 8080:8080 --link db001:dbhost -d tomcat
    

    其中:
    1)db001是步骤3中创建的mysql容器的名字,可以通过其访问数据库;
    2)dbhost是个别名,web程序访问mysq数据可以通过其访问;

    3)此时,在容器内部,会在/etc/hosts文件中用别名创建几个条目,如下:

     

    说明连接成功。

     数据库连接池配置:

    附:

    将自己的web项目部署到tomcat容器方法:
    将打包后的war项目推送到宿主机器,然后使用如下命令拷贝到tomcat容器中的webapps目录下:

    docker cp myweb.war {web容器id}:/usr/local/tomcat/webapps/
    

    或者直接以挂载的方式让tomcat容器直接获取本地war文件:

    docker run -d -v /usr/docker_file/Demo.war:/usr/local/tomcat/webapps/Demo.war -p 8080:8080 tomcat
    

    以上两种方式建议在测试环境使用,毕竟要经常修改代码 ,下面方式可以放到生产上使用。也是官网建议的方式

    vi Dockerfile

    from tomcat:latest    #你的 tomcat的镜像
    MAINTAINER XXX@qq.com    #作者       (这一步可以不要,在新版本中已经是一个废弃的字段)
    COPY NginxDemo.war   /usr/local/tomcat/webapps  #放置到tomcat的webapps目录下
    

    然后生成新的镜像:

    docker build -t web-demo:v1 .
    

     

  • 相关阅读:
    .net基础学java系列(一)视野
    技术栈
    Apollo(阿波罗)携程开源配置管理中心
    .NET 动态调用WCF
    RPC 工作原理
    ServiceStack 简单使用
    PRC 框架选择
    栈vs堆,最详细的对比
    使用SuperSocket打造逾10万长连接的Socket服务
    开源项目练习EF+jQueryUI前后端分离设计
  • 原文地址:https://www.cnblogs.com/yds941268778/p/12776303.html
Copyright © 2020-2023  润新知