문제

cmd 명령어의 디렉토리 액세스에서 Docker 컨테이너 볼륨

$ sudo docker run -d --name ext -v /external busybox /bin/sh

run.sh

#!/bin/bash

if [[ -f "/external" ]]
then
    echo 'success!'
else
    echo 'Sorry, I can't find /external...'
fi
.

dockerfile

FROM ubuntu:14.04

MAINTAINER newbie

ADD run.sh /run.sh

RUN chmod +x /run.sh

CMD ["bash", "/run.sh"]
.

$ sudo docker build -t app .

$ sudo docker run -d --volumes-from ext app ac57afb95f923eeffd28e7d9d9cb76cb1b7699ebd

그래서

$ sudo docker logs ac57afb95f923eeffd28e7d9d9cb76cb1b7699ebd Sorry, I can't find /external...

내 질문은

/external 명령어의 run.sh에서 CMD 디렉토리에 어떻게 액세스 할 수 있습니까? / p>

불가능한가요?

감사합니다 ~

도움이 되었습니까?

해결책

run.sh 수정

-f 파일이 있는지 확인합니다.이 경우 디렉토리가있는 -d 검사를 사용합니다.

디렉토리가 있는지 확인하십시오.쉘 스크립트

FruhermoRy 볼륨 컨테이너 만 만들면 -d를 추가 할 필요가 없습니다. /bin/sh 볼륨 컨테이너 실행 명령 변경 사항

$ sudo docker run --name ext -v /external busybox

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top