架构之旅-集群与管理-服务
简述
本文中,将使用nginx+docker来搭建iarc-service的集群。
源代码
环境
IDE: IntelliJ IDEA
JDK: 1.8.0_u162
Build: Maven 3.0.5
Framework: Spring Boot
WebServer: Nginx
Container: Docker
开发
以下步骤在CentOS7中完成
创建Dockerfile
在iarc-service根目录下新建文件’Dockerfile’,内容如下:
1 | FROM frolvlad/alpine-oraclejdk8:slim |
构建docker镜像
docker build -t iarc/iarc-service .
运行2个docker容器
1 | $ docker run -it -p 8003:8080 --rm --name iarc-service-1 iarc/iarc-service |
配置负载均衡
配置文件路径是 /etc/nginx/nginx.conf
1 | http { |
开放8081端口
1 | $ firewall-cmd --zone=public --add-port=8081/tcp --permanent |
调试
访问
本地使用curl localhost:8081/user/getUser/123来验证,外部使用http://192.168.56.102:8081/user/getUser/123来访问
问题
由于SELinux的限制,启动nginx时报错[emerg] bind() to 0.0.0.0:8081 failed (13: Permission denied)
解决方案:
1 | 1、临时关闭selinux |
部署
无