nginx / reverse proxy / Webdav

조금 헤매기는 했지만, 내가 구현하고자 하는 부분은 구현할 수 있겠다. 오늘은 파일 전송과 관련된 WebDav이다.

OCR 과 관련되어서 내가 구현하고자 하는 부분은 다음과 같다.

  • PACS로 등록이 되면 센터 DICOM 서버로 전송
    이 부분은 PACS 업체에 문의하였을때 가능하다고 한다. 다만, 이런 부분이 많아지면 기능에 문제가 가는 것은 맞으니까 정말 협의를 해야만 해주겠다고 한다.
  • 센터 DICOM 서버에서 분석 서버로 일정 시간마다 파일 전송
    센터 DICOM 서버에 장기간 파일을 보관할 생각 같은 것은 없다. 최근의 검사 파일만 있다면, 목록을 뽑아서 서버로 파일을 보내는 것은 쉬울 것이라고 생각한다. 내 프로젝트에서는 서버의 front는 도커로 https 443포트만 이용하고 nginx를 reverse proxy로 이용하여 각각의 도커 이미지로 분배한다.
  • DB에 put이나 patch하는 건 어렵지 않게 했다.
  • 파일 전송을 WebDAV을 이용하기로 했고, 이를 위해서 nginx 컴파일 할 때에 옵션을 지정했다.
  • WebDAV으로 proxy_pass를 이용할 때의 설정은 다음과 같다. ‘/’의 유무에 따라서 파일이 전송이 안되거나 파일명이 제대로 전송이 안되는 문제가 생겼다.
  • 나의 경우에는 파일만 전송이 되면 되기 때문에 다른 옵션은 상관이 없다. 아직까지는.. webdav.private는 도커 네트워크 브리지 private를 지정했기 때문이다. 마지막 ‘/’이 들어가니 깔끔하게 동작했다.
location /webdav {
    proxy_pass http://webdav.private/;
    }