mysql|tomcat|nginx|redis在docker中的部署
MySQL部署
拉取MySQL镜像
docker pull mysql
查看镜像
创建MySQL容器
docker run -di --name pinyougou_mysql -p 33306:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql
-p 代表端口映射,格式为 宿主机映射端口:容器运行端口
-e 代表添加环境变量 MYSQL_ROOT_PASSWORD是root用户的登陆密码
进入MySQL容器,登陆MySQL
进入mysql容器
docker exec -it pinyougou_mysql /bin/bash
登陆mysql
mysql -u root -p
远程登陆MySQL
(1)我们在我们本机的电脑上去连接虚拟机Centos中的Docker容器,这里192.168.247.130是虚拟机操作系统的IP
(2)在本地客户端执行建库脚本
执行“资源/建库语句/pinyougoudb.sql”
查看容器IP地址
我们可以通过以下命令查看容器运行的各种数据
docker inspect pinyougou_mysql
运行效果如下:
我们可以看到我们的数据库服务器的IP是172.17.0.2
tomcat部署
拉取tomcat镜像
docker pull tomcat:7-jre7
创建tomcat容器
创建容器用于部署单点登录系统(CAS) -p表示地址映射
docker run -di --name=pinyougou_tomcat -p 9000:8080 -v /usr/local/myhtml:/usr/local/tomcat/webapps --privileged=true tomcat:7-jre7
部署web应用
(1)修改cas系统的配置文件,修改数据库连接的url
<bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource" p:driverClass="com.mysql.jdbc.Driver" p:jdbcUrl="jdbc:mysql://172.17.0.6:3306/pinyougoudb?characterEncoding=utf8" p:user="root" p:password="123456" />
测试:地址栏输入:http://192.168.247.135:9000/cas/login
Nginx部署
拉取Nginx镜像
docker pull nginx
创建Nginx容器
docker run -di --name=pinyougou_nginx -p 80:80 nginx/bin/bash
测试Nginx
浏览器地址栏输入: http://192.168.247.135
配置反向代理
官方的nginx镜像,nginx配置文件nginx.conf 在/etc/nginx/目录下。
在容器内编辑配置文件不方便,我们可以先将配置文件从容器内拷贝到宿主机,编辑修改后再拷贝回去。
(1)从容器拷贝配置文件到宿主机
docker cp pinyougou_nginx:/etc/nginx/nginx.conf nginx.conf
(2)编辑nginx.conf,添加反向代理配置
upstream tomcat-cas { server 172.17.0.7:8080; } server { listen 80; server_name passport.pinyougou.com; location / { proxy_pass http://tomcat-cas; index index.html index.htm; } }
(3)将修改后的配置文件拷贝到容器
docker cp nginx.conf pinyougou_nginx:/etc/nginx/nginx.conf
(4)重新启动容器
docker restart pinyougou_nginx
(5)设置域名指向
192.168.247.135 passport.pinyougou.com
浏览器测试:http://passport.pinyougou.com/cas/login
Redis部署
拉取Redis镜像
docker pull redis
创建Redis容器
docker run -di --name=pinyougou_redis -p 6379:6379 redis
客户端测试
在你的本地电脑命令提示符下,用window版本redis测试
redis-cli -h 192.168.247.135
mysql|tomcat|nginx|redis在docker中的部署的更多相关文章
- Docker部署Mysql, Tomcat, Nginx, Redis
1. Mysql部署 问题及解决方案 容器内的网络和外部机器不能直接通信 外部机器和宿主机可以直接通信 宿主机和容器可以直接通信 当容器中的网络服务需要被外部机器访问时,可以将容器中提供服务的端口映射 ...
- Docker Compose 容器编排 NET Core 6+MySQL 8+Nginx + Redis
环境: CentOS 8.5.2111Docker 20.10.10Docker-Compose 2.1.0 服务: db redis web nginx NET Core 6+MySQL 8+N ...
- tomcat+nginx+redis实现均衡负载、session共享(一)
在项目运营时,我们都会遇到一个问题,项目需要更新时,我们可能需先暂时关闭下服务器来更新.但这可能会出现一些状况: 1.用户还在操作,被强迫终止了(我们可以看日志等没人操作的时候更新,但总可能会有万一) ...
- 【转载】tomcat+nginx+redis实现均衡负载、session共享(一)
http://www.cnblogs.com/zhrxidian/p/5432886.html 在项目运营时,我们都会遇到一个问题,项目需要更新时,我们可能需先暂时关闭下服务器来更新.但这可能会出现一 ...
- (转)tomcat+nginx+redis实现均衡负载、session共享(一)
在项目运营时,我们都会遇到一个问题,项目需要更新时,我们可能需先暂时关闭下服务器来更新.但这可能会出现一些状况: 1.用户还在操作,被强迫终止了(我们可以看日志等没人操作的时候更新,但总可能会有万一) ...
- tomcat+nginx+redis集群试验
Nginx负载平衡 + Tomcat + 会话存储Redis配置要点 使用Nginx作为Tomcat的负载平衡器,Tomcat的会话Session数据存储在Redis,能够实现0当机的7x24 运 ...
- 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 ...
- Docker部署Tomcat,Nginx,Redis应用
一.tomcat部署 1.拉取tomcat镜像 docker pull tomcat:7-jre7 2创建tomcat容器 创建容器用于部署单点登录系统(CAS) -p表示地址映射 docker r ...
- linux系统下安装jdk,mysql,tomcat 和redis 和jedis入门案例
Day47笔记Linux+redis入门 Day47 知识讲解:Jedis 1.Linux上jdk,mysql,tomcat安装(看着文档安装) 准备工作: 因为JDK,TOMCAT,MYSQL的 ...
随机推荐
- Database基础(七):部署集群基础环境、MySQL-MMM架构部署、MySQL-MMM架构使用
一.部署集群基础环境 目标: 本案例要求为MySQL集群准备基础环境,完成以下任务操作: 数据库授权 部署MySQL双主多从结构 配置本机hosts解析记录 方案: 使用4台RHEL 6虚拟机,如下图 ...
- Delphi RegisterHotKey 设置系统热键
Symbolic constant name Value (hexadecimal) Keyboard (or mouse) equivalent VK_LBUTTON 01 Left mouse b ...
- vi 编辑器使用指南
一.Unix编辑器概述编辑器是使用计算机的重要工具之一,在各种操作系统中,编辑器都是必不可少的部件.Unix及其相似的ix操作系统系列中,为方便各种用户在各个不同的环境中使用,提供了一系列的ex编辑器 ...
- 56、salesforce学习笔记(三)
Date类型 Datetime nowDatetime = Datetime.now(); Datetime datetime1 = Datetime.newInstance(2015,3,1,13, ...
- spring boot找不到或无法加载主类 io.renren.RenrenApplication
spring boot找不到或无法加载主类 io.renren.RenrenApplication 出现问题: spring boot 项目以前一直是好好的,用mvn clean package 打包 ...
- angular.js实现二级tab切换
<div class="guide-type"> <h3 ng-class="{true:'active', false:''}[tab == 'pc' ...
- 算法刷题笔记-stack-四则运算
题目描述: 给定一个含有数字和运算符的字符串,为表达式添加括号,改变其运算优先级以求出不同的结果.你需要给出所有可能的组合的结果.有效的运算符号包含 +, - 以及 * . 示例 1: 输入: &qu ...
- Perceptron Algorithm 感知器算法及其实现
Rosenblatt于1958年发布的感知器算法,算是机器学习鼻祖级别的算法.其算法着眼于最简单的情况,即使用单个神经元.单层网络进行监督学习(目标结果已知),并且输入数据线性可分.我们可以用该算法来 ...
- Spring Boot 2.1.6 发布了!
Java技术栈 www.javastack.cn 优秀的Java技术公众号 最新消息: Spring Boot 2.1.6 昨天正式发布了,日常更新一些依赖和修复一些 BUG,没什么硬菜! 重点来了, ...
- C++之循环体内变量
今天做PAT题目时候看人家解答: #include <cstdio> #include <set> using namespace std; int main() { int ...