1.06 docker Compose多容器部署

栏目: 编程工具 · 发布时间: 5年前

内容简介:版权声明:本文为博主尹成联系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 拉取到本地
    1.06 docker Compose多容器部署 1.06 docker Compose多容器部署
  • 创建mysql的container,端口不需要映射,数据库是wordpress去访问
    1.06 docker Compose多容器部署
  • 创建wordpress的container,映射到本地的8080端口
    1.06 docker Compose多容器部署
  • 访问IP:8080,可以看到wordpress的欢迎页
    1.06 docker Compose多容器部署
  • 选中文,继续
    1.06 docker Compose多容器部署
  • 填写信息,点击安装
    1.06 docker Compose多容器部署
  • 点登录,通过两个image成功部署了wordpress
    1.06 docker Compose多容器部署 1.06 docker Compose多容器部署

2.docker compose介绍

  • 多容器的APP很难部署和管理
  • docker compose就类似于批处理
    1.06 docker Compose多容器部署
  • docker compose是一个命令行工具,可以通过一个yml格式的文件定义多容器的 docker 应用
  • 通过一条命令就可以根据yml文件的定义去创建或者管理多个容器
  • docer compose版本2只能用于单机,版本3可以用于多机
  • docker-compose.yml是默认的名字,文件中有如下三种重要的概念
    1.06 docker Compose多容器部署
  • Services:一个service代表一个container,这个container可以由dokerHub的image创建,也可以由本地的Dockerfile build出来的image创建
  • Services的启动类似于docker run,可以给其指定network和volume,所以可以给service指定network和volume的引用

3.docker compose安装和使用

  • 下载docker compose
    1.06 docker Compose多容器部署
  • 赋权限
    1.06 docker Compose多容器部署
  • 查看版本,显示就安装好了
    1.06 docker Compose多容器部署
  • 在某个目录创建docker-compose.yml文件,这里在/home下创建,写入内容
    1.06 docker Compose多容器部署
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
    1.06 docker Compose多容器部署
  • 另一个窗口查看容器网络状态
    1.06 docker Compose多容器部署 1.06 docker Compose多容器部署
  • 在另一个会话,查看当前docker进程
    1.06 docker Compose多容器部署
  • 查看docker-compose
    1.06 docker Compose多容器部署
  • 停止docker-compose
    1.06 docker Compose多容器部署
  • 启动docker-compose
    1.06 docker Compose多容器部署
  • 停止并删除docker-compose
    1.06 docker Compose多容器部署
  • 后台运行docker-compose
    1.06 docker Compose多容器部署
  • 交互运行docker-compose的方法
    1.06 docker Compose多容器部署
  • 找到之前写的flask-redis,进入目录
    1.06 docker Compose多容器部署
  • 创建docker-compose.yml,写入如下内容
version: "3"

services:

  redis:
    image: redis

  web:
    build:
      context: .
      dockerfile: Dockerfile
    ports:
      - 8080:5000
    environment:
      REDIS_HOST: redis
  • 启动docker-compose
    1.06 docker Compose多容器部署
  • 启动后,浏览器访问IP:8080,可以看到如下
    1.06 docker Compose多容器部署
  • 停止并删除
    1.06 docker Compose多容器部署 4.容器扩展和负载均衡
  • 启动并后台运行compose
    1.06 docker Compose多容器部署
  • 查看进程,此时有一个 redis 和一个web
    1.06 docker Compose多容器部署
  • 扩展web的应用部署
  • 但是运行完会报错,8080端口占用
    1.06 docker Compose多容器部署 1.06 docker Compose多容器部署
  • 停止并删除compose
    1.06 docker Compose多容器部署
  • 删除docker-compose.yml中的如下两行
    1.06 docker Compose多容器部署
  • 启动并创建3个web服务
  • 运行中也可以扩展,实现了高效快速扩展
    1.06 docker Compose多容器部署
  • 查看进程
    1.06 docker Compose多容器部署
  • 假如有多个web,同时访问一个redis,还需要一个负载均衡器
    1.06 docker Compose多容器部署
  • 修改之前的app.py如下
    1.06 docker Compose多容器部署
  • 修改之前的Dockerfile如下
    1.06 docker Compose多容器部署
  • 修改之前的docker-compose.yml如下,最后加一段haproxy
    1.06 docker Compose多容器部署
  • 停止并删除compose
    1.06 docker Compose多容器部署
  • 运行compose
    1.06 docker Compose多容器部署
  • 尝试访问
    1.06 docker Compose多容器部署
  • 动态将web扩展成3个
    1.06 docker Compose多容器部署
  • 查看进程
    1.06 docker Compose多容器部署
  • 尝试访问
    1.06 docker Compose多容器部署
  • 当访问高峰过去,还可以减少集群节点
    1.06 docker Compose多容器部署
  • 查看进程
    1.06 docker Compose多容器部署
  • 停止并删除compose
    1.06 docker Compose多容器部署

5.复杂应用部署

  • 有两个对外的App,votingApp是对外投票用的,resultsApp会实时显示候选人得票情况
  • votingApp访问量大,先把投票结果写到redis缓存,java去取结果写到数据库
  • resultsApp从数据库获取最新的投票结果
    1.06 docker Compose多容器部署
  • 进入目录
    1.06 docker Compose多容器部署
  • 启动docker-compose
    1.06 docker Compose多容器部署
  • 浏览器访问5000和5001端口
    1.06 docker Compose多容器部署 1.06 docker Compose多容器部署
  • 关闭并删除
    - 1.06 docker Compose多容器部署

学院 Go 语言视频主页

https://edu.csdn.net/lecturer/1928

[清华团队带你实战区块链开发]

( https://ke.qq.com/course/344443?tuin=3d17195d )

扫码获取海量视频及源码 QQ群:

721929980

1.06 docker Compose多容器部署

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

集创思维设计矩阵

集创思维设计矩阵

慈思远 / 电子工业出版社 / 2017-4 / 72.00元

《集创思维设计矩阵——写给互联网人的设计指南》总结了作者从业7年以来的设计经历,在大量企业所面对的设计问题基础上,提出了枪型思维,即如何给产品更准确的定位。 在定位准确的基础上加以设计,提出了设计中高维度融合低维度的设计思维,即设计者可以从商业逻辑推演到设计逻辑,让设计更加精确;又提出了设计和计算的博弈,指出在每一步创新的基础上,设计者一定要清晰地评判设计的代价。这样设计后的产品才是可以和企......一起来看看 《集创思维设计矩阵》 这本书的介绍吧!

MD5 加密
MD5 加密

MD5 加密工具

SHA 加密
SHA 加密

SHA 加密工具

HEX HSV 转换工具
HEX HSV 转换工具

HEX HSV 互换工具