34. docker swarm Dockerstack 部署 wordpress
1. 查看 docker compose depoly 语法
官网地址 : https://docs.docker.com/compose/compose-file/#deploy
ENDPOINT_MODE
取值:
vip(默认): virtual ip 容器互访等时候的虚拟 ip , 底层 通过 ipvs 访问虚拟ip 进行均衡负载
eg : endpoint_mode: vip
dnsrr : DNS round-robin 不使用 虚拟 ip 使用 真实的 ip 地址,多个 ip 地址之间使用 dns 循环 进行 均衡负载
eg : endpoint_mode: dnsrr
LABELS 帮助信息
eg: labels:
zonehoo:"eaon"
MODE
取值:
global : 这个 service 全局只有一个 , 不可以横向拓展。
eg: mode:global
replicated(默认): 可以有一个或多个, 可以进行横向拓展。
eg: mode:replicated
PLACEMENT 设置 service 的一些限制条件
取值:
constraints
eg: constraints:
- node.role == manager # 只会部署到 manager 节点
preferences
REPLICAS # 在 mode 为 replicated 时
eg:
mode:replicated # 模式为 可拓展的
replicas:3 #设置三个节点
RESOURCES 做资源的限制
eg:
resouces:
limits: # 限制该容器的资源
cpus: '0.50'
memory: 50M
reservations: # 为该容器 保留的资源
cpus: '0.25'
memory: 20M
RESTART_POLICY # 服务挂掉后 重启 的限制
restart_policy:
condition: on-failure
delay: 5s
max_attempts: 3 # 最大尝试次数
UPDATE_CONFIG: # service 更新的时候 的规则
replicas: 2
update_config:
parallelism: 2 # 可以每次更新同时 2 个replicas
delay: 10s # 每次更新 parallelism 的间隔时间
2.编写 docker-compose
#docker-compose.yml
# docker compose api 版本
version: '3'
services:
# 定义了 两个 service 分别是 名字分别是 wordpress 和 mysql
wordpress:
#image 为 word press
image: wordpress
#本地 8888 端口 映射 容器 80 端口
ports:
- 8888:80
#wordpress 连接数据库 的 host 为 mysql , passwword 为 root 类似于 -e
environment:
WORDPRESS_DB_HOST: mysql
WORDPRESS_DB_PASSWORD: root
depends_on:
- mysql
deploy:
# 可以进行横向拓展 初始化节点为3个
mode: replicated
replicas: 3
# 重启政策
restart_policy:
condition: on-failure
delay: 5s
max_attempts: 3
#更新政策
update_config:
parallelism: 1
delay: 10s
#指定连接 的网络 为 my-network
networks:
- my-network
mysql:
image: mysql:5.7.27
# 数据库 root 的 连接密码 和 所使用的数据库名称
environment:
MYSQL_ROOT_PASSWORD: root
MYSQL_DATABASE: wordpress
# 外部 mysql-data 挂载到 容器内的 /var/lib/mysql
volumes:
- mysql-data:/var/lib/mysql
#指定连接 的网络 为 my-network
networks:
- my-network
deploy:
# mysql 节点全局只有一个,不可以横向拓展
mode: global
# 只能部署到 manager 节点
placement:
constraints:
- node.role == manager
# 定义 volumes
volumes:
mysql-data:
# 定义 networks
networks:
my-network:
driver: overlay
3. 部署 wordpress
docker stack deploy wordpress
查看部署容器数量
docker stack ls
查看 容器部署具体细节
docker stack ps wordpress

查看 各个 sevice 的情况
docker stack service wordpress

访问 192.168.205.10:8888 即可
34. docker swarm Dockerstack 部署 wordpress的更多相关文章
- Docker swarm 实战-部署wordpress
Docker swarm 实战-部署wordpress 创建一个overlay的网络 docker network create -d overlay demo 6imq8da3vcwvj2n499k ...
- 35. docker swarm dockerStack 部署 投票应用
1. 编写 docker-compose.yml # docker-compose.yml version: "3" services: redis: image: redis:a ...
- 用Docker swarm快速部署Nebula Graph集群
用Docker swarm快速部署Nebula Graph集群 一.前言 本文介绍如何使用 Docker Swarm 来部署 Nebula Graph 集群. 二.nebula集群搭建 2.1 环境准 ...
- 本文介绍如何使用 Docker Swarm 来部署 Nebula Graph 集群,并部署客户端负载均衡和高可用
本文作者系:视野金服工程师 | 吴海胜 首发于 Nebula Graph 论坛:https://discuss.nebula-graph.com.cn/t/topic/1388 一.前言 本文介绍如何 ...
- 在Docker Swarm上部署Apache Storm:第2部分
[编者按]本文来自 Baqend Tech Blog,描述了如何在 Docker Swarm,而不是在虚拟机上部署和调配Apache Storm集群.文章系国内 ITOM 管理平台 OneAPM 编译 ...
- 在Docker Swarm上部署Apache Storm:第1部分
[编者按]本文来自 Baqend Tech Blog,描述了如何在 Docker Swarm,而不是在虚拟机上部署和调配Apache Storm集群.文章系国内 ITOM 管理平台 OneAPM 编译 ...
- Docker Swarm从部署到基本操作
关于Docker Swarm Docker Swarm由两部分组成: Docker集群:将一个或多个Docker节点组织起来,用户就能以集群的方式进行管理: 应用编排:有一套API用来部署和管理容器: ...
- docker swarm快速部署redis分布式集群
环境准备 四台虚拟机 192.168.2.38(管理节点) 192.168.2.81(工作节点) 192.168.2.100(工作节点) 192.168.2.102(工作节点) 时间同步 每台机器都执 ...
- [docker swarm] 从单容器走向负载均衡部署
背景 之前写过<<docker-compose真香>> 和<docker-compose.docker stack前世今生>两篇博客, 回顾一下思路: ① dock ...
随机推荐
- uni-app开发小程序-使用uni.switchTab跳转后页面不刷新的问题
uni.switchTab({ url: '/pages/discover/discover', success: function(e) { var page = getCurrentPages() ...
- lvm 通过扩容本身磁盘容量扩容
场景:sdb之前是3G容量,现在扩容了sdb的容量到8G.现在把新扩容的5G容量扩展到现有的逻辑卷中 [root@localhost ~]# pvresize /dev/sdb Physical v ...
- Centos6 import tensorflow遇到的问题
1.ImportError: /lib64/libc.so.6: version `GLIBC_2.16' not found 解决办法:升级系统glibc库至2.17版本 首先在网上下载glibc- ...
- Sklearn K均值聚类
## 版权所有,转帖注明出处 章节 SciKit-Learn 加载数据集 SciKit-Learn 数据集基本信息 SciKit-Learn 使用matplotlib可视化数据 SciKit-Lear ...
- MacOS通过ssh连接基于Virtualbox的Ubuntu虚拟机
以前总是用Windows软件putty进行ssh连接,今天尝试使用macos. 实验环境:主机:macos 10.15.3 客户机:Ubuntu 18.04 默认情况下,Ubuntu没有安装SSH,需 ...
- POJ 3368:Frequent values
Frequent values Time Limit: 2000MS Memory Limit: 65536K Total Submissions: 14764 Accepted: 5361 ...
- Atom 插件推荐
(1)atom-ternjs : js(e6)的自动补充 (2)key-binding-mode : atom 快捷键管理 (3)pre-view : pdf预览 (4)activate-power- ...
- Ubuntu16.04 在Windows10 系统下的安装(双系统)
楼主最近升级了一个固态+8G双通道内存条,重装了一下win10和ubuntu系统,过程中遇到一些问题,push上来供自己和大家参考.比较好用的博客教程直接贴链接. 一.win10系统 学校有正版软件许 ...
- CSS 弹性盒子 flex的三个属性:grow、shrink、basis
flex-grow 首先介绍flex-grow属性,flex-grow会在容器太大时(图片A.B的宽度和 < 父容器宽度)对元素作出调整. 如果图片A的flex-grow属性的值为 1,图片B的 ...
- JDBC批处理方法
每次新建Connection的时候相当于建了一座桥,每次一辆车(PreparedStatement)运送货物(ResultSet)成本太高! 每次都建立网络连接的时间远远大于本地的时间,为了处理大量的 ...