docker:从 tomcat 容器连接到 mysql 容器
docker 中的容器互联是一个较为复杂的话题,详细内容将在后续章节中介绍。 续前 2 个章节的内容,我们创建了一个 mysql 容器和一个 tomcat 容器,可以使用 「docker ps」来查看他们的状态。
core@localhost ~/base $ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
5a02ce457c87 tutum/tomcat:8.0 "/run.sh" 16 minutes ago Up 16 minutes 0.0.0.0:80->8080/tcp insane_hawking
fb4b9ab6a2ba dl.dockerpool.com:5000/mysql:5.7 "/entrypoint.sh mysq 16 hours ago Up 16 hours 0.0.0.0:3306->3306/tcp db001
我们看到这里我们直接把 mysql 的 3306 端口直接映射到了宿主主机上,tomcat 的 8080 端口映射到了宿主主机的80端口上面,他们现在其实可以直接使用宿主主机的地址互联了。在开发环境中这没什么问题,若在生产环境中,可能就会有一定的安全隐患,使用容器互联可以避免这个问题,下面我们来操作一下:
core@localhost ~/base $ docker stop db001
#使用容器的名字来停止容器
db001
core@localhost ~/base $ docker rm db001
#使用容器的名字来删除容器
db001
core@localhost ~/base $ docker run --name db001 -e MYSQL_ROOT_PASSWORD=admin -d mysql:5.7
fe9e65aaf58cd34c12f3c1ab4a3318ae3920300b0f3d0241359c904d7182376f
core@localhost ~/base $ docker stop 5a0
5a0
#使用容器的id来停止容器,效果与使用名字一样,而且一般只需要输入容器 id 的前 3 个字符就可以了
core@localhost ~/base $ docker rm 5a0
5a0
core@localhost ~/base $ docker run -d -p 80:8080 --name tomcat001 --link db001:tomysql tutum/tomcat:8.0
#解释下--link 前面的 db001 是我们要连接的数据库服务器的容器名称,后面的 tomysql 是我们要创建的这个链接的名字
e3c136d76b447e885006a43c63f5200c2012a7ce02aaa43860c7a00c130a563e
core@localhost ~/base $ docker ps
#这里我们可以看到只有tomcat的端口映射到了宿主主机上,而 mysql 的端口只有 tomcat 容器可以连接
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
e3c136d76b44 tutum/tomcat:8.0 "/run.sh" 3 seconds ago Up 2 seconds 0.0.0.0:80->8080/tcp tomcat001
fe9e65aaf58c dl.dockerpool.com:5000/mysql:5.7 "/entrypoint.sh mysq 5 minutes ago Up 5 minutes 3306/tcp db001,tomcat001/tomysql
至此,mysql和tomcat之间的连接就算完成了。
docker:从 tomcat 容器连接到 mysql 容器的更多相关文章
- docker学习-lnmp+redis之搭建mysql容器服务
一. 前期准备工作,创建配置文件目录,log文件目录,数据库DATA和WEB站点目录[root@T1 ~]# mkdir -p /lnmp/conf/{mysql,nginx,php} /lnmp/l ...
- docker 创建.netcore2.2 api容器 以及连接mysql容器
1]环境说明 操作系统:Window 10 专业版 开发工具 Vs2019专业版 Docker: Docker for Windows docker在windows上安装完毕之后可以看到 2]拉取 ...
- DOCKER 学习笔记5 Springboot+nginx+mysql 容器编排
前言 在上节的内容中,我们已经通过一个简单的实例,将Docker-compose 进行了实际的应用.这一小节中.我们将通过学习和了解,着重认识容器的编排,上一节只算是一个小小的测试.在这一节中.我们将 ...
- docker构建mysql容器及Navicat 远程连接
1. MySQL部署 1.1拉取MySQL镜像 docker pull mysql 查看镜像 docker images 1.2创建MySQL容器 首先建立所需要的 文件夹: docker run - ...
- docker部署多个mysql容器,并使用java连接
测试springboot多个数据源配置时,需要安装多个mysql容器,由于资源限制,当前只有一台虚拟机,如果在一台机器上安装多个mysql实例,是可以的,但步骤比较繁琐,使用docker来安装MySQ ...
- 使用docker创建MySQL容器,并在springboot中使用
最近在看网上找了个springboot的项目试试,在项目中需要的MySQL版本是5.7,但是本机的MySQL只有5.5.因此想着在我的服务器上跑一个MySQL:5.7的容器解决这一问题,但是在实际操作 ...
- docker安装mysql,tomcat,并且在tomcat可以访问到mysql
1.uname -an 查看当前系统版本 2.yum -y install docker 下载安装docker 3.service docker start 启动docker服务 4.docker ...
- Docker实战(五)之端口映射与容器互联
除了网络访问外,Docker还提供了两个很方便的功能来满足服务访问的基本需求:一个是允许映射容器内应用的服务端口到本地宿主主机;另一个是互联机制实现多个容器间通过容器名来快速访问. 1.端口映射实现访 ...
- 2. Docker部署tomcat, nginx, redis,及docker私有仓库
1. 部署tomcat 1.1 下载tomcat docker pull tomcat:7-jre8 1.2 部署容器 docker run -di --name=tomcat -p 8 ...
随机推荐
- Android--学习记录
最近天天被兔子激励,所以开始找工作,发现Android和iOS都会更有竞争力,所以就想学一下Android Android比iOS更开放,学习难度可能会更大,我已经做好了吃苦的准备 计划是三个月搞定, ...
- SQL - 语法收集
随机数 select cast(floor(rand()*10000) as int) GUID select newid() 判断两个日期是否为同一天 DATEDIFF(DAY,QsDate,'20 ...
- 通过ReflectionMethod,我们可以得到Person类的某个方法的信息
PHP反射api由若干类组成,可帮助我们用来访问程序的元数据或者同相关的注释交互.借助反射我们可以获取诸如类实现了那些方法,创建一个类的实例(不同于用new创建),调用一个方法(也不同于常规调用),传 ...
- 【iBoard电子学堂】【iCore双核心板】资料光盘A盘更新,版本号为A6
_____________________________________ 深入交流QQ群: A: 204255896(1000人超级群,可加入) B: 165201798(500人超级群,满员) C ...
- JAVA WEB 的JSP(9*9乘法表+*型金字塔)
运行环境及工具: (Tomcat7) + (JAVA JDK)+ (Eclipse for J2EE) 输出9*9乘法表 代码片段的练习 增加一些简单的JS功能 <%@ page import= ...
- 【转】用JIRA管理你的项目
原文地址:http://snowolf.iteye.com/blog/875529
- [转]在VS2010 VC++项目中引用Lib静态库(以Openssl为例)
本文转自:http://kb.cnblogs.com/page/94467/ Openssl是个为网络通信提供安全及数据完整性的一种安全协议,囊括了主要的密码算法.常用的密钥和证书封装管理功能以及SS ...
- Ubuntu 12.04 LTS 及ubuntu14.10 -- NFS安装
在Linux 服务器上配置好NFS 根文件系统后,在单板侧挂载NFS 文件系统,具体操作如下:ifconfig eth0 hw ether 00:10:85:18:01:84 /*配置MAC地址*/i ...
- sql like模糊查询
1.SQL LIKE 子句中使用百分号(%)字符来表示任意字符,类似于UNIX或正则表达式中的星号 (*). 2.LIKE 通常与 % 一同使用,类似于一个元字符的搜索. 3. > SELECT ...
- 【Fate/kaleid liner 魔法少女☆伊莉雅】系列中实践的、新世代的动画摄影工作流
通常的日本动画的摄影中,是以追加Cell(celluloid 赛璐珞)与背景的合成滤镜处理为主,而在[Fate/kaleid liner 魔法少女☆伊莉雅]系列的,加入了自己使用3DCG软 ...