nodejs/docker 환경에서 파일 업로드 이슈 해결

2021. 11. 2. 20:04개발/nodejs

 docker 사용 후 어느순간 파일 업로드시 nodejs cross-device link not permitted... 오류가 발생하였다.

 fs.rename 사용시 발생한 오류였다.

 

검색 결과 이런저런 방법이 많았지만 가장 간단하게  fs.rename 대신 fs.copyFile 을 사용하여 원하는 경로로 복사하기로 했다.

 

 fs.copyFile 사용

// 기존
/*
	fs.rename(old_file, new_file, (err) => {
		if(err) console.log(err);
	});
*/

// 수정
	fs.copyFile(old_file, new_file, (err) => {
		// 복사 완료 후 파일 삭제
        fs.unlink(old_file, (err) => {});
		
        if (err) console.log(err)
	});