docker单机上的水平扩展和负载均衡

首先我们用docker-compose.yml打包

version: '3'

services:

  wordpress:
    image: wordpress
    depends_on:
      - mysql
    environment:
      WORDPRESS_DB_HOST: mysql
      WORDPRESS_DB_PASSWORD: root
    networks:
      - my-bridge

  mysql:
    image: mysql:5.7
    environment:
      MYSQL_ROOT_PASSWORD: root
      MYSQL_DATABASE: wordpress
    volumes:
      - mysql-data:/var/lib/mysql
    networks:
      - my-bridge

  lb:
    image: dockercloud/haproxy
    links:
      - wordpress
    ports:
      - 8080:80
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock

volumes:
  mysql-data:

networks:
  my-bridge:
    driver: bridge

在docker-compose.yml文件所在目录运行命令:

docker-composr up -d

这样我们就创建了wordpress,lb,mysql三个容器

扩展wordpress:

docker-compose up --scale wordpress=3 -d

这条命令会再启动两个wordpress容器,使wordpress达到三个,且外部都是监听的8080端口,不会出现端口冲突。

你可能感兴趣的:(docker单机上的水平扩展和负载均衡)