mysql|tomcat|nginx|redis在docker中的部署
2024-08-23 08:09:26
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
最新文章
- 分享基于Entity Framework的Repository模式设计(附源码)
- 关于Java static 的学习心得
- Swiper – 经典的移动触摸滑块插件【免费】
- JavaScript——同源策略
- MVC简单实例
- C#算法之向一个集合中插入随机不重复的100个数
- 电赛菜鸟营培训(一)&mdash;&mdash;STM32F103CB之LED控制
- C++ 自动指针 共享指针
- 如何用 React Native 创建一个iOS APP?(三)
- Struts2 学习笔记 10 Result部分 part1
- springmvc jstl
- LeetCode OJ 63. Unique Paths II
- Arduino入门学习
- 一张图搞定Java设计模式——工厂模式! 就问你要不要学!
- Log4j.properties属性文件
- Spark之搜狗日志查询实战
- 【quickhybrid】API多平台支撑的实现
- MySQL递归的替代方案
- Uva - 12174 - Shuffle
- 阿里云Oss对象存储