"docker exec"를 사용하여 "소스"를 실행하는 방법은 무엇입니까?

"docker exec"를 사용하여 "소스"를 실행하는 방법은 무엇입니까?

컨테이너 내부로 들어가지 않고 Ubuntu를 실행하는 Docker 컨테이너 내부에 파일을 가져오고 싶습니다.

나는 다음과 같은 일을 했었다:

docker exec -it CONTAINER_ID bash
source FILE

이제 나는하고 싶다 :

docker exec -it CONTAINER_ID source FILE

오류 팝업을 보고 놀랐습니다.

exec: "source": executable file not found in $PATH

실제로, source를 통해 찾을 수 없기 때문에 이것이 표준 명령이 아닌 것 같습니다 which source. ls좋은 성능.

이 명령은 정확히 무엇 source이며 어떻게 실행합니까 docker exec -it?

답변1

소스가 실행 파일이 아닙니다(source는 인수로 전달된 파일의 내용을 실행하는 bash 쉘 내장 명령입니다.)

다음과 같이 소스 코드를 실행해야 합니다.

docker run --rm -ti _image_name_ bash -c 'source FILE'

관련 정보