다음 질문이 있습니다.
Linux 시스템의 Docker에서 실행되는 API(Net Core 3.1)와 이러한 업로드된 파일을 저장해야 하는 스토리지에 파일을 업로드하려고 할 때 액세스 거부 오류가 발생합니다.
Access to the path '/shared/xxx/xxxx.pdf' is denied. 2023-10-19 16:50:50 ---> System.IO.IOException: Permission denied
스토리지가 Windows에서 실행 중이고 두 시스템 모두 Windows AD 도메인에 있습니다.
도커 조합
version: '3.5'
volumes:
storageCM:
driver_opts:
type: cifs
o: "username=*****,password=*****,vers=3.0,domain=contoso.net"
device: "//192.168.52.20/shared"
services:
api-netcore:
image: image_container:3410
platform: linux
container_name: container_xxxx
restart: always
volumes:
- storageCM:/shared
ports:
- '8000:80'
볼륨에서 사용하는 사용자 이름과 비밀번호는 Windows 저장소에 대한 전체 액세스 권한을 갖습니다.
Samba를 통해 Docker 호스트에 직접 매핑을 테스트했지만 동일한 오류가 발생합니다.
위의 Docker Composer에 따르면 컨테이너 내부에 API를 업로드하려고 하면 오류가 표시됩니다.
Access to the path '/shared/xxx/xxxx.pdf' is denied.
2023-10-19 16:50:50 ---> System.IO.IOException: Permission denied
호스트에 저장하면 잘 작동하고, 콘솔에서 Windows 저장소에 저장해도 잘 작동합니다.
컨테이너 내부에서만 오류가 발생합니다.