docker 내에서 모든 변수 할당이 비어 있습니다.

docker 내에서 모든 변수 할당이 비어 있습니다.

Dockerfile도커 이미지에 복사되어 실행될 긴 스크립트가 있습니다 .

나는 배쉬를 사용하고 있습니다. 내 로컬 컴퓨터와 도커 모두에 있습니다.

bashDocker 빌드 프로세스 중에 스크립트가 실행되는지 확인하기 위해 이 코드를 실행합니다 .

RUN bash /path_to_script

효과가있다. 하지만 해결할 수 없는 매우 짜증나는 문제가 하나 있습니다.

Bash에서는 변수를 만들 수 없습니다. 그들은 모두 비어 있습니다. 스크립트에서 많은 코드를 반복해야 합니다.

path예를 들어 디렉터리 이름을 가져오려는 변수 가 있다고 가정해 보겠습니다 .

export path='/some/path/to/a/dir_or_file'
export dirName=$(basename $path) # this becomes empty
echo $dirName # prints empty
echo $(basename $path) # prints dir_or_file

이는 필요한 것이 무엇이든 $(basename $path)복사/붙여넣기해야 함을 의미합니다.

이 시점에서 멈춰서 디버깅하는 방법을 모르겠습니다.

관련 정보