Portainer는 컨테이너 Docker 기반 애플리케이션을 관리하는 도구 중 하나입니다.
이 도구를 사용하면 쉽게 컨테이너를 생성, 시작, 중지 및 삭제할 수 있습니다.
또한 Portainer를 사용하면 여러 호스트에서 실행되는 컨테이너의 네트워크를 구성할 수 있습니다.
네트워크를 구성하는 이유는 여러 컨테이너를 실행하는 경우, 각 컨테이너가 서로 통신할 수 있도록 네트워크 구성이 필요하기 때문입니다. 이를 통해 컨테이너 간의 데이터 교환 및 서비스 제공이 가능해집니다.
현재 집에 NAS를 구축하면서 목표로 생각하고 있는 네트워크 구성입니다.
NginxProxyManager를 통하여 도메인별로 docker시스템으로 포워딩을 시키고 쉽게 SSL 인증서를 적용하고자 합니다. 이를 위해 먼저 Docker 홈 네트워크를 구성합니다. (172.20.0.xxx 대역)
![](https://blog.kakaocdn.net/dn/bM10is/btr6Nl4UuNy/RCw1R5LEYr6TKxlp7KkrI1/img.png)
네트워크 구성시 주의할 점
- 네트워크 이름은 고유해야 합니다. 생성하려는 네트워크의 이름이 다른 네트워크와 중복되어서는 안 됩니다.
- 사용할 드라이버를 선택할 때, 애플리케이션의 요구 사항에 따라 적합한 드라이버를 선택해야 합니다. 예를 들어, 컨테이너 간의 통신에는 "bridge" 드라이버가 일반적으로 사용됩니다.
- 네트워크를 생성한 후에는, 생성된 네트워크에 대한 정보를 정확히 확인해야 합니다. 생성된 네트워크의 이름, 드라이버, IP 주소 범위 등을 확인하고 필요한 경우 수정해야 합니다.
- 컨테이너를 생성할 때, 해당 컨테이너가 속한 네트워크를 정확히 선택해야 합니다. 잘못된 네트워크를 선택하면, 컨테이너 간의 통신이 제대로 이루어지지 않을 수 있습니다.
- 네트워크를 삭제하기 전에, 해당 네트워크를 사용하는 모든 컨테이너를 중지하고 삭제해야 합니다. 네트워크를 삭제하면, 해당 네트워크를 사용하는 모든 컨테이너의 통신이 중단됩니다.
Portainer에서 네트워크를 구성하는 방법
1. Portainer에 로그인 후 Network 메뉴를 들어가면 현재 네트워크 구성을 볼 수 있습니다. "Add network" 버튼을 클릭합니다.
![](https://blog.kakaocdn.net/dn/bIQQeL/btr6EVFYEFO/O3HSJ46XEi5nF2KPccSGy1/img.png)
2. 새로 생성할 네트워크 정보를 입력합니다.
![](https://blog.kakaocdn.net/dn/w0UQ6/btr6BT25OzM/Ykx8KXlKtlm7KHSvDO1LVk/img.png)
3. "Create network" 버튼을 클릭하여 네트워크를 생성합니다.
생성된 네트워크는 해당 Portainer 호스트에서 실행되는 컨테이너에서 사용할 수 있습니다.
이제 컨테이너를 생성할 때 해당 네트워크를 선택하면, 동일한 네트워크에 속한 다른 컨테이너와 통신할 수 있습니다.
![](https://blog.kakaocdn.net/dn/bQj8MG/btr6DLXVwyu/G5tTuR7klkZ4bsUCPOsBlK/img.png)
![](https://blog.kakaocdn.net/dn/caQoPo/btr6DKkoLUy/WUMyEUQz5lq7kigcdurekK/img.png)
컨테이너에 새로 생성한 MyNet 네트워크 지정
1. 이미 생성되어 운영중인 Portainer에 새로 만든 MyNet 네트워크를 추가합니다.
Portainer 컨테이너를 선택합니다.
![](https://blog.kakaocdn.net/dn/kF8jl/btr6N0TGHzh/dwfbeDhT34i47UvKCA9vk0/img.png)
2. Connected Networks 의 Join a network 콤보박스를 선택하여 새로 생성한 MyNet을 선택하고 Join network 버튼을 클릭합니다.
![](https://blog.kakaocdn.net/dn/DUixC/btr6NYhiW0e/jcfAv6kfCIXf6260amqIak/img.png)
3. 해당 컨테이너에 MyNet 네트워크가 추가된 것이 보이고 IP주소는 172.20.0.2 가 할당되었습니다.
![](https://blog.kakaocdn.net/dn/bSI4cZ/btr6N3bKNmy/44w3b8C99vxVg86MkKqXWk/img.png)
이후에 생성할 컨테이너들은 생성 시점에 MyNet 네트워크를 설정하여 생성하면 됩니다.
이렇게 설정된 네트워크를 통해 컨테이너 간 통신이 가능해지므로, 도커 컨테이너를 더욱 유연하고 효율적으로 사용할 수 있습니다. 따라서 Portainer를 사용하여 도커 컨테이너의 네트워크를 구성하는 것은 도커 사용자들에게 권장되는 방법 중 하나입니다.
'IT&DEV - IT & 개발' 카테고리의 다른 글
[OMV6]Cloudflare와 NginxProxyManager를 활용한 서브도메인 무료 SSL적용 (0) | 2023.04.06 |
---|---|
[OMV6]Docker - Nginx Proxy Manager 설치 (0) | 2023.03.31 |
CICD란? CI/CD (Continuous Integration and Continuous Deployment/Delivery) (0) | 2023.03.28 |
Mac python pyenv 개발환경 셋팅 (0) | 2019.10.05 |
Mac Python3 설치 (0) | 2019.09.08 |
댓글