2023. 07. 03 (mon) ํ์ต์ ๋ฆฌ
#Docker #httpd #nginx #LoadBalancing
1. Load Balancing (๋ถํ ๋ถ์ฐ)
- Load Balancing
์๋ฒ์ ๊ฐํด์ง๋ ๋ถํ๋ฅผ ๋ถ์ฐํด์ฃผ๋ ๊ธฐ์

2. Nginx๋ก ๋ก๋ ๋ฐธ๋ฐ์ฑ ๊ตฌํํ๊ธฐ
2-1. Nginx
์คํ์์ค ์น ์๋ฒ ํ๋ก๊ทธ๋จ
โ nginx๋ฅผ ๋ก๋ ๋ฐธ๋ฐ์๋ก ํ์ฉํ์ฌ ๋ก๋ ๋ฐธ๋ฐ์ฑ ๊ตฌํ
- ์ง๋ ๊ธ๊ณผ ๊ฐ์ ๊ณผ์ ์ผ๋ก httpd server๋ฅผ 2๊ฐ ๊ตฌ์ถ ํ 2๊ฐ์ server์ ๋ํ ๋ก๋ ๋ฐธ๋ฐ์ฑ ์งํ
2-2. ๊ตฌํ ์ฝ๋
- web server ๊ตฌ์ถํ๊ธฐ
์ง๋ ๊ธ์์ ๊ตฌ์ถํด๋์ dockerfile/httpd/ ๋ฅผ ๊ธฐ๋ฐ์ผ๋ก 2๊ฐ์ server ์์ฑ
docker build -t a2blog:1.1.0 docker_file/httpd/
docker run -dit --name a2blog-1 -p 8051:80 a2blog:1.1.0
docker run -dit --name a2blog-2 -p 8052:80 a2blog:1.1.0
- docker image pull
docker pull nginx:1.25.1
- dockerfile/nginx_lb ๊ฒฝ๋ก์ ํ์ผ ์์ฑ
๐ Dockerfile
FROM nginx:1.25.1
# change conf
COPY ["default.conf", "/etc/nginx/conf.d/"]
๐ default.conf
upstream blog_servers {
server a2blog-1:80; #server ์ ๋ณด
server a2blog-2:80;
}
server {
listen 80; #client๊ฐ ์์ฒญํ๋ port
location / {
proxy_pass http://blog_servers;
}
}
- docker build
docker build -t nginx_lb:1.1.0 docker_file/nginx_lb/
docker run --name ngix_lb-1 -d -p 9051:80 nginx_lb:1.1.0
- docker container ์ฐ๊ฒฐ
docker run --name ngix_lb-2 -d -p 9052:80 --link a2blog-1 --link a2blog-2 nginx_lb:1.1.0
- web server ์ ์ : localhost:9052

'๐ป Dev > Stu' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
| [Docker] Dockerfile์ ์ด์ฉํ์ฌ Apache Web Server ๊ตฌ์ถํ๊ธฐ (0) | 2023.07.03 |
|---|