시놀로지 나스에 우성짱님의 멀티 사이트 docker-compose를 참고해 웹서버를 구축했는데, 생각지도 못한 난관이 생겼습니다.
도커에 올라가있는 nginx에서 역방향 프록시를 사용해 dsm으로 연결을 해주고 있었는데, docker-compose down 후 docker-compose up -d 를 하게 되면 IP를 새로 받아오게 되면서 게이트웨이가 변경되던 것. 즉..
IP로 뭔가를 주고받을때 접속이 불가능한 현상이 생기게 됩니다.
이것 뿐 아니라 어떠한 용도로 IP 또는 대역을 고정시켜야 할 필요가 있을 때 참고가 될 수 있을듯 해 남겨둡니다.
제가 실제 사용하는 docker-compose.yml 을 일부 가져온것이라, 용도에 맞추어 사용하시면 될 것 같습니다.
version: '3'
services:
db:
image: mariadb:latest
container_name: db
restart: unless-stopped
env_file: .env
environment:
- TZ=Asia/Seoul
volumes:
- ./data/dbdata:/var/lib/mysql
- ./db:/docker-entrypoint-initdb.d
networks:
default_bridge:
ipv4_address: 172.26.0.10
nginx:
depends_on:
- php
image: nginx:alpine
container_name: nginx
environment:
- TZ=Asia/Seoul
restart: unless-stopped
ports:
- "80:80"
- "443:443"
volumes:
- ./site:/var/www/html
- ./nginx/conf.d:/etc/nginx/conf.d
- ./nginx/nginx.conf:/etc/nginx/nginx.conf
- ./nginx/logs:/var/log/nginx/
- /etc/localtime:/etc/localtime:ro
- ./ssl:/ssl
networks:
default_bridge:
ipv4_address: 172.26.0.13
networks:
default_bridge:
ipam:
driver: default
config:
- subnet: 172.26.0.0/16
만약, 컨테이너들이 IP가 필요 없다면(혹은 자동으로 받아도 된다면) networks: 의 ipv4_address 부분을 지우시면 됩니다.
이제 docker-compose down -> docker-compose up 을 하더라도 서브넷이 고정되므로, IP를 기준으로 한 세팅을 다시 할 필요가 없어집니다.
* 이 방법이 맞는지는 모르겠고(..) 여기저기 찾아보다가 성공(?)한 방법이기 때문에 더이상의 응용은 제게 무리입니다;;
'취미, 관심 > NAS, Server' 카테고리의 다른 글
[Home Assistant, Synology] 하이퍼백업 종료 후 HAOS에서 외장하드 끄기 (0) | 2022.06.17 |
---|---|
[Synology] DSM 7.0, 7.1 시놀로지 아파치 재시작 (0) | 2022.04.08 |
[Apache] 아파치 .htaccess에서 www 붙이기, 제거하기(rewrite, redirect) (0) | 2022.04.07 |
[Synology] 시놀로지 나스에 Portainer 설치 및 업데이트 (0) | 2022.03.10 |
[ubuntu, docker] 도커 컨테이너로 클라우드플레어 DDNS 사용하기 (0) | 2022.02.24 |
[Synology] 시놀로지 드라이브 사용 중 바이러스 Trojan:Win32/Zpevdo.B 검출 경고가 뜨는 경우 (0) | 2022.02.21 |
[PHP] phpMyAdmin 설치시 Composer~ be installed: xml 문구 해결 (0) | 2022.01.20 |