7 docker容器演练
时间:2020-04-16
本文章向大家介绍7 docker容器演练,主要包括7 docker容器演练使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
一 环境说明:
tomat mysql nginx 三个容器,如下图,目的让nginx反向代理tomcat,并且连接数据库
二 tomcat配置
里面跑了两个应用程序,一个是tomcat自带的程序端口8080,另一个是java -jar 启动的程序端口8000
demo-0.0.1-SNAPSHOT.jar 这个jar包里面填写了数据库的一些信息
启动tomcat 容器
docker run -p 8080:8080 -d --rm --name tomcat_jdk -v /mydockerfile/tomcat/test:/usr/local/apache-tomcat-7.0.63/webapps/test -v /mydockerfile/tomcat/tomcatlogs/:/usr/local/apache-tomcat-7.0.63/logs --privileged=true hnftomcat java -jar /usr/local/apache-tomcat-7.0.63/webapps/test/demo-0.0.1-SNAPSHOT.jar
三 nginx配置
反向代理了两个应用,分别是8080和8000
1 nginx配置文件如下:
upstream tm {
server 172.17.0.2:8000; #tomcat容器的ip,jar包的端口
}
upstream tomcat {
server 172.17.0.2:8080; #tomat的端口
}
server {
listen 80;
server_name www.tomcat.com;
access_log /var/log/nginx/host.access.log main;
location / {
proxy_pass http://tomcat;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Real-IP $remote_addr;
}
}
server {
listen 80;
server_name www.hu.com;
access_log /var/log/nginx/host.access.log main;
location /pc/ {
alias /usr/share/nginx/html/;
index index.html index.htm;
}
location / {
proxy_pass http://tm;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Real-IP $remote_addr;
}
location /tomcat/ {
proxy_pass http://tomcat;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Real-IP $remote_addr;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/share/nginx/html;
}
}
2 启动nginx容器
docker run -p 80:80 --rm -v /mydockerfile/nginx/conf:/etc/nginx/conf.d/ -v /mydockerfile/nginx/logs/:/var/log/nginx -v /mydockerfile/nginx/html/:/usr/share/nginx/html -d nginx
浏览器访问 ,访问之前,绑定两个域名
http://www.hu.com/pc/这里面的数据是从数据库读取过来的
下面是代理的tomcat,www.tomcat.com
四 启动mysql容器
docker run -p 3306:3306 --name mysql --rm -v /mydockerfile/mysql/conf:/etc/mysql/conf.d -v /mydockerfile/mysql/logs:/logs -v /mydockerfile/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.6
原文地址:https://www.cnblogs.com/huningfei/p/12713795.html
- 微信小程序示例 - 表单
- TensorFlow中的feed与fetch
- TensorFlow中常量与变量的基本操作演示
- 如何写出好的 JavaScript —— 浅谈 API 设计
- 分析DAO的漏洞
- Phoenix - Hbase与SQL
- 2018年,让你的数据库变更快的十个建议
- Hadoop如何使用Zookeeper来保障高可用?
- HTTP 压力测试工具 wrk
- 理解 Linux shell 中的一个方言:2>&1
- 大家知道什么是git中的 .gitignore吗?
- MySQL 8.0 新特性 :隐藏索引 Invisible Indexes
- 如何监控MySQL的复制延迟?
- Uber 的 Docker Mysql 应用
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- 一篇文章带你使用 Python搞定对 Excel 表的读写和处理(xlsx文件的处理)
- 从 rollup 初版源码学习打包原理
- leetcode树之相同的树
- Mysql Sql 语句练习题 (50道)
- 【每日一具16】来了!扫描图片批量漂白修正软件
- 实现一个 webpack loader 和 webpack plugin
- 万字长文带你走进 JavaScript 的世界
- windows中常见后门持久化方法总结
- Python3爬虫实战【点触验证码】 — 模拟登陆bilibili
- BOM 是个什么玩意!
- Educational Codeforces Round 81 (Rated for Div. 2) B - Infinite Prefixes
- python-利用python写一个购物小程序
- Java技巧收录一 那些你相见恨晚的快捷键和代码注释模板
- Educational Codeforces Round 81 (Rated for Div. 2) C.Obtain The String
- 深入了解 webpack 模块加载原理