docker compose 应用案例 web负载均衡
来源:互联网 发布:买了域名怎么卖 编辑:程序博客网 时间:2024/06/06 02:27
安装docker-compose
这种方式是将Compose当做一个Python应用从pip源中安装, 其他安装方式可以自行百度。 sudo pip3 install -U docker-compose
安装完成后,可以查看docker-compose的用法: docker-compose -h
新建工作目录
本文将haproxy_web作为案例演示的工作目录。
整体文件结构如下:
docker-compose.yml 是docker-compose的配置文件,用于编排容器群。
haproxy目录下的haproxy.cfg 是haproxy负载均衡器的配置文件
web目录下是用来制作web应用容器的目录。
Dockerfile是镜像制作的文件
static views conf是web项目的静态资源, myserver是改名后的应用程序。 web目录下的之后要挂在进centos:latest容器内。
制作web应用容器
因为之前使用过golang语言的beego框架, 这里为了方便就直接使用beego框架的案例了。
在beego项目的目录下执行: go build main.go
绿色的main就是这个web项目的可执行文件, 值得注意的是本机使用的是ubuntu 64位,要使用的web服务器是centos 64位, 所以这里build就缺省了相应的构建参数。
将这个 main可执行文件 conf目录 static目录 views目录 拷贝到工作目录下的web目录下 main文件改名为myserver. 将 conf目录下的配置文件端口8080改成80端口。
web目录下结构如下:
编辑Dockerfile文件:
vim Dockerfile
文件内容如下:
FROM centos:latestWORKDIR /web-serverADD . /web-serverEXPOSE 8080RUN chmod 755 myserver CMD ./myserver
这里可以使用docker build -t myserver:1.0 .
命令来构建镜像,docker run -p 80:80 -d myserver:1.0
运行镜像, 来测试Dockerfile文件是否正确配置。
负载均衡配置
编辑负载均衡的配置文件: vim haproxy.cfg
文件内容如下:
global log 127.0.0.1 local0 log 127.0.0.1 local1 notice maxconn 4096defaults log global mode http option httplog option dontlognull timeout connect 5000ms timeout client 50000ms timeout server 50000mslisten stats bind 0.0.0.0:70 mode http stats enable stats hide-version stats scope . stats realm Haproxy\ Statistics stats uri / stats auth user:passfrontend balancer bind 0.0.0.0:80 mode http default_backend web_backendsbackend web_backends mode http option forwardfor balance roundrobin server weba weba:80 check server webb webb:80 check server webc webc:80 check option httpchk GET / http-check expect status 200
docker-compose配置
编辑docker-compose配置文件docker-compose.yml:
vim docker-compose.yml
内容如下:
weba: build: ./web expose: - 80webb: build: ./web expose: - 80webc: build: ./web expose: - 80haproxy: image: haproxy:1.6 volumes: - ./haproxy:/haproxy-override - ./haproxy/haproxy.cfg:/usr/local/etc/haproxy/haproxy.cfg:ro links: - weba - webb - webc ports: - "80:80" - "70:70"
在工作目录下运行:
docker-compose up --build
运行结果如下:
注意:
为了加速构建速度, 在之前应该拉去相应的镜像:
docker pull centos:latestdocker pull haproxy:1.6
- docker compose 应用案例 web负载均衡
- 通过Docker Compose及NGINX反向代理实现ASP.NET5应用的负载均衡
- docker-compose搭建Nginx+Tomcat负载均衡环境
- web应用负载均衡策略
- Docker虚拟主机路由应用Rancher负载均衡
- nginx负载均衡+docker部署应用
- Docker应用编排:Compose入门(待续)
- docker compose
- docker compose
- docker-compose
- docker-compose
- docker-compose
- docker-compose
- docker compose
- docker-compose
- Docker Compose
- docker compose
- Docker Compose
- 点击按钮,ajax提交报错
- [Python] openpyxl读存大数据 Exception: String longer than 32767 characters
- Java入门和进阶必读书单
- linux中的存储设备的管理
- 极限学习机应用于入侵检测(一)
- docker compose 应用案例 web负载均衡
- 极限学习机应用于入侵检测(二)
- 河内之塔算法实现(c与python)
- PyTorch笔记4-快速构建神经网络(NN)
- 下面的电路里面的推拉式输出是怎么工作的
- 论文:DCGAN
- 返回按钮提示前一页title为空设置
- ubuntu开机出现:system program problem detected
- 登录记住我功能实现