Microsoft MVP성태의 닷넷 이야기
개발 환경 구성: 502. Portainer에 윈도우 컨테이너를 등록하는 방법 [링크 복사], [링크+제목 복사],
조회: 24314
글쓴 사람
정성태 (techsharer at outlook.com)
홈페이지
첨부 파일
 
(연관된 글이 1개 있습니다.)
(시리즈 글이 5개 있습니다.)
개발 환경 구성: 480. Linux 운영체제의 docker를 위한 tcp 바인딩 추가
; https://www.sysnet.pe.kr/2/0/12178

개발 환경 구성: 502. Portainer에 윈도우 컨테이너를 등록하는 방법
; https://www.sysnet.pe.kr/2/0/12289

Linux: 32. Ubuntu 20.04 - docker를 위한 tcp 바인딩 추가
; https://www.sysnet.pe.kr/2/0/12349

Linux: 61. docker - 원격 제어를 위한 TCP 바인딩 추가
; https://www.sysnet.pe.kr/2/0/13386

개발 환경 구성: 725. ssh를 이용한 원격 docker 서비스 사용
; https://www.sysnet.pe.kr/2/0/13734




Portainer에 윈도우 컨테이너를 등록하는 방법

윈도우 컨테이너도 당연히 Portainer에 등록해 사용할 수 있습니다. ^^ 지난 글에서 Docker Engine 서비스에 "--config-file"을 지정하는 것을 소개했는데요,

윈도우 환경에서의 dockerd.exe("Docker Engine" 서비스)가 Linux의 것과 다른 점
; https://www.sysnet.pe.kr/2/0/12168

따라서 daemon.json 파일에 다음과 같이 tcp 바인딩을 추가해,

{
  "registry-mirrors": [],
  "insecure-registries": [],
  "debug": true,
  "experimental": false,
  "data-root": "d:\\my_docker_win",
  "hosts": [
    "tcp://0.0.0.0:2375",
    "npipe://"
  ]
}

NT 서비스의 명령행에 이를 지정해 두면 됩니다. (물론, 기본 daemon.json 파일의 내용을 수정해도 됩니다.)

"C:\Program Files\docker\dockerd.exe" --run-service --config-file D:\my_docker_win\config\daemon.json

이후, Portainer 측에서 "Endpoints" 설정에 다음과 같이 추가할 수 있습니다.

windocker_portainer_1.png

가령, 대상 win-testpc의 IP가 192.168.100.25라고 하면 위의 화면에서 다음과 같이 값을 채워주면 됩니다.

Endpoint URL: 192.168.100.25:2375
Public IP: 192.168.100.25




그나저나, Portainer의 대시보드가 에러 인식에 대한 지원이 좀 미흡하군요. ^^ 예를 들어 mongodb 컨테이너를 실행했더니,

$ docker run -d -p 27017:27017/tcp --restart=always --name mongodb_inst -it mongo

Portainer의 대시보드에는 "running"으로 나오지만,

portainer_port_pub_1.png

보는 바와 같이 "포트 매핑"이 안 됩니다. 이런 경우 보다 자세한 상황은 docker 명령어로 알아낼 수 있는데요,

$ docker ps  | grep mongo
7d132f4ba3b8   mongo  "docker-entrypoint.s…" About a minute ago Restarting (132) 26 seconds ago

그러니까, running 상태이긴 한데 "Restarting..."을 반복하는 이상 상태임을 대시보드에서는 알 수 없었던 것입니다.




[이 글에 대해서 여러분들과 의견을 공유하고 싶습니다. 틀리거나 미흡한 부분 또는 의문 사항이 있으시면 언제든 댓글 남겨주십시오.]

[연관 글]






[최초 등록일: ]
[최종 수정일: 10/22/2025]

Creative Commons License
이 저작물은 크리에이티브 커먼즈 코리아 저작자표시-비영리-변경금지 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다.
by SeongTae Jeong, mailto:techsharer at outlook.com

비밀번호

댓글 작성자
 




... 121  122  123  124  125  126  127  128  129  130  131  132  133  134  [135]  ...
NoWriterDateCnt.TitleFile(s)
1795정성태10/29/201431752개발 환경 구성: 248. Lync 2013 서버 설치 방법
1794정성태10/29/201427560개발 환경 구성: 247. "Microsoft Office 365 Enterprise E3" 서비스에 대한 간략 소개
1793정성태10/27/201428615.NET Framework: 474. C# - chromiumembedded 사용 - 두 번째 이야기 [2]파일 다운로드1
1792정성태10/27/201428879.NET Framework: 473. WebClient 객체에 쿠키(Cookie)를 사용하는 방법
1791정성태10/22/201428244VC++: 83. G++ - 템플릿 클래스의 iterator 코드 사용에서 발생하는 컴파일 오류 [5]
1790정성태10/22/201422788오류 유형: 254. NETLOGON Service is paused on [... AD Server...]
1789정성태10/22/201426662오류 유형: 253. 이벤트 로그 - The client-side extension could not remove user policy settings for '...'
1788정성태10/22/201427908VC++: 82. COM 프로그래밍에서 HRESULT 타입의 S_FALSE는 실패일까요? 성공일까요? [2]
1787정성태10/22/201437003오류 유형: 252. COM 개체 등록시 0x8002801C 오류가 발생한다면?
1786정성태10/22/201438388디버깅 기술: 65. 프로세스 비정상 종료 시 "Debug Diagnostic Tool"를 이용해 덤프를 남기는 방법 [3]파일 다운로드1
1785정성태10/22/201428079오류 유형: 251. 이벤트 로그 - Load control template file /_controltemplates/TaxonomyPicker.ascx failed [1]
1784정성태10/22/201435359.NET Framework: 472. C/C++과 C# 사이의 메모리 할당/해제 방법파일 다운로드1
1783정성태10/21/201428605VC++: 81. 프로그래밍에서 borrowing의 개념
1782정성태10/21/201425554오류 유형: 250. 이벤트 로그 - Application Server job failed for service instance Microsoft.Office.Server.Search.Administration.SearchServiceInstance
1781정성태10/21/201426841디버깅 기술: 64. new/delete의 짝이 맞는 경우에도 메모리 누수가 발생한다면?
1780정성태10/15/201429852오류 유형: 249. The application-specific permission settings do not grant Local Activation permission for the COM Server application with CLSID
1779정성태10/15/201425190오류 유형: 248. Active Directory에서 OU가 지워지지 않는 경우
1778정성태10/10/201424174오류 유형: 247. The Netlogon service could not create server share C:\Windows\SYSVOL\sysvol\[도메인명]\SCRIPTS.
1777정성태10/10/201427061오류 유형: 246. The processing of Group Policy failed. Windows attempted to read the file \\[도메인]\sysvol\[도메인]\Policies\{...GUID...}\gpt.ini
1776정성태10/10/201423607오류 유형: 245. 이벤트 로그 - Name resolution for the name _ldap._tcp.dc._msdcs.[도메인명]. timed out after none of the configured DNS servers responded.
1775정성태10/9/201425042오류 유형: 244. Visual Studio 디버깅 (2) - Unable to break execution. This process is not currently executing the type of code that you selected to debug.
1774정성태10/9/201431479개발 환경 구성: 246. IIS 작업자 프로세스의 20분 자동 재생(Recycle)을 끄는 방법
1773정성태10/8/201435030.NET Framework: 471. 웹 브라우저로 다운로드가 되는 파일을 왜 C# 코드로 하면 안되는 걸까요? [1]
1772정성태10/3/201424087.NET Framework: 470. C# 3.0의 기본 인자(default parameter)가 .NET 1.1/2.0에서도 실행될까? [3]
1771정성태10/2/201432300개발 환경 구성: 245. 실행된 프로세스(EXE)의 명령행 인자를 확인하고 싶다면 - Sysmon [4]
1770정성태10/2/201427156개발 환경 구성: 244. 매크로 정의를 이용해 파일 하나로 C++과 C#에서 공유하는 방법 [1]파일 다운로드1
... 121  122  123  124  125  126  127  128  129  130  131  132  133  134  [135]  ...