内容简介:版权声明:本文为博主尹成联系QQ77025077,微信18510341407原创文章,欢迎转载侵权不究。 https://blog.csdn.net/yincheng01/article/details/84935043
版权声明:本文为博主尹成联系QQ77025077,微信18510341407原创文章,欢迎转载侵权不究。 https://blog.csdn.net/yincheng01/article/details/84935043
1.docker部署wordpress
- 将dockerHub上的wordpress和 mysql 拉取到本地
- 创建mysql的container,端口不需要映射,数据库是wordpress去访问
- 创建wordpress的container,映射到本地的8080端口
- 访问IP:8080,可以看到wordpress的欢迎页
- 选中文,继续
- 填写信息,点击安装
- 点登录,通过两个image成功部署了wordpress
2.docker compose介绍
- 多容器的APP很难部署和管理
- docker compose就类似于批处理
- docker compose是一个命令行工具,可以通过一个yml格式的文件定义多容器的 docker 应用
- 通过一条命令就可以根据yml文件的定义去创建或者管理多个容器
- docer compose版本2只能用于单机,版本3可以用于多机
- docker-compose.yml是默认的名字,文件中有如下三种重要的概念
- Services:一个service代表一个container,这个container可以由dokerHub的image创建,也可以由本地的Dockerfile build出来的image创建
- Services的启动类似于docker run,可以给其指定network和volume,所以可以给service指定network和volume的引用
3.docker compose安装和使用
- 下载docker compose
- 赋权限
- 查看版本,显示就安装好了
- 在某个目录创建docker-compose.yml文件,这里在/home下创建,写入内容
version: '3' services: wordpress: image: wordpress ports: - 8080:80 environment: WORDPRESS_DB_HOST: mysql WORDPRESS_DB_PASSWORD: admin networks: - my-bridge mysql: image: mysql:5.5 environment: MYSQL_ROOT_PASSWORD: admin MYSQL_DATABASE: wordpress volumes: - mysql-data:/var/lib/mysql networks: - my-bridge volumes: mysql-data: networks: my-bridge: driver: bridge
- 启动docker-compose
- 另一个窗口查看容器网络状态
- 在另一个会话,查看当前docker进程
- 查看docker-compose
- 停止docker-compose
- 启动docker-compose
- 停止并删除docker-compose
- 后台运行docker-compose
- 交互运行docker-compose的方法
- 找到之前写的flask-redis,进入目录
- 创建docker-compose.yml,写入如下内容
version: "3" services: redis: image: redis web: build: context: . dockerfile: Dockerfile ports: - 8080:5000 environment: REDIS_HOST: redis
- 启动docker-compose
- 启动后,浏览器访问IP:8080,可以看到如下
- 停止并删除
4.容器扩展和负载均衡 - 启动并后台运行compose
- 查看进程,此时有一个 redis 和一个web
- 扩展web的应用部署
- 但是运行完会报错,8080端口占用
- 停止并删除compose
- 删除docker-compose.yml中的如下两行
- 启动并创建3个web服务
- 运行中也可以扩展,实现了高效快速扩展
- 查看进程
- 假如有多个web,同时访问一个redis,还需要一个负载均衡器
- 修改之前的app.py如下
- 修改之前的Dockerfile如下
- 修改之前的docker-compose.yml如下,最后加一段haproxy
- 停止并删除compose
- 运行compose
- 尝试访问
- 动态将web扩展成3个
- 查看进程
- 尝试访问
- 当访问高峰过去,还可以减少集群节点
- 查看进程
- 停止并删除compose
5.复杂应用部署
- 有两个对外的App,votingApp是对外投票用的,resultsApp会实时显示候选人得票情况
- votingApp访问量大,先把投票结果写到redis缓存,java去取结果写到数据库
- resultsApp从数据库获取最新的投票结果
- 进入目录
- 启动docker-compose
- 浏览器访问5000和5001端口
- 关闭并删除
-
学院 Go 语言视频主页
https://edu.csdn.net/lecturer/1928以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:- 如何使用 Docker 部署容器
- 如何快速部署容器化应用
- 使用Docker容器化部署实践之Django应用部署(一)
- CoreOS 基于容器部署虚拟机
- CoreOS 基于容器部署虚拟机
- Docker 容器化多应用部署
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
集创思维设计矩阵
慈思远 / 电子工业出版社 / 2017-4 / 72.00元
《集创思维设计矩阵——写给互联网人的设计指南》总结了作者从业7年以来的设计经历,在大量企业所面对的设计问题基础上,提出了枪型思维,即如何给产品更准确的定位。 在定位准确的基础上加以设计,提出了设计中高维度融合低维度的设计思维,即设计者可以从商业逻辑推演到设计逻辑,让设计更加精确;又提出了设计和计算的博弈,指出在每一步创新的基础上,设计者一定要清晰地评判设计的代价。这样设计后的产品才是可以和企......一起来看看 《集创思维设计矩阵》 这本书的介绍吧!