내 머리를 두드리는 소리가 났으며 어떤 도움을 주셔서 감사합니다! 나는 검색을했고 몇 가지 잠재적 인 해결책을 찾았지만 모두 나를위한 것이 아니 었습니다.Windows 네트워크에 연결 Docker Container 내의 NodeJS에서 드라이브로 연결
나는 Windows에서 개발 된 nodejs 응용 프로그램을 가지고 있으며 이제는 노드 : 최신 이미지를 사용하여 도커 컨테이너에서 실행 중입니다. 응용 프로그램은 읽기/쓰기를 수행하기 위해 공유 된 Windows 네트워크 드라이브에 연결해야하지만 응용 프로그램이 도킹 장치 컨테이너에서 실행될 때 작동하지 않는 것 같습니다 (도커 외부의 Windows 컴퓨터에서 실행될 때 제대로 작동 함) .
네트워크 드라이브 공유 폴더는 다음과 유사합니다. 모든 사람에게 공유 :
\\ MYSERVER의 \ 테스트
Nodejs 코드 (꽤하지만 당신에게 어떻게 접근하고 파일의 아이디어 제공) : nodejs에서 실행할 때이 잘 작동
let fileLocation = "\\myserver\test\file.pdf"
let readStream = fs.createReadStream(fileLocation)
// When the stream is done being read, end the response
readStream.on('close',() =>
{
// End response
response.status('200').end()
// Remove the file
fs.unlinkSync(fileLocation)
})
// Stream chunks to response
readStream.pipe(response)
을 Windows에서,하지만 계속 "ENOENT : no such file or directory"오류가 nodejs 도커 컨테이너 내부에서 실행될 때 계속 발생합니다. 이것이 노드 이미지가 기반으로하는 Linux OS 또는 도커 권한/권한 문제인지 확실하지 않습니다. 파일이 존재합니다.
이 명령은 내가
docker run --rm -it -p 8080:8080 myapplication:latest
새로운 고정 표시기 할 수있는 용기
를 실행하고있을 때 테스트하는 데 사용하고 있지만 어떤 도움에 감사드립니다!
응답 해 주셔서 감사합니다. 이것이 어제 일을 끝낸 것입니다. 볼륨 마운트 및 그 방법에 액세스. 추가 단계이지만 작동합니다. 감사! – Potentiator