2016-11-04 4 views
1

에 항아리 제출하기 때문에 Spark 나 Docker와 함께 일한 적은 없지만 프로젝트에 사용해야합니다. 어떻게 작동하는지 이해하려고합니다. Eclipse에서 뚱뚱한 항아리를 만들고이 가이드를 사용하여 설정 한 도커 컨테이너에 제출하기를 원했습니다. https://github.com/sequenceiq/docker-sparksequenceiq도 커 - 스파크 컨테이너

이제 내 로컬 시스템에서 내 항아리를 가져 오는 방법을 실제로 이해하지 못합니다. 내 부두 컨테이너.

나는이 모든 것이 실제로 어떻게 작동 하는지를 놓치고 있다고 생각하지만 누군가가 그것을 정리할 수 있습니다.

나는 매우 감사 할 것입니다!

답변

2

나는 두 가지 posibilities가 알다시피 :

1, sequenceiq 이미지를 확장하고

내가 가장 좋은 방법은 sequenceiq 스파크 고정 표시기 이미지와 COPY를 "확장"하는 것입니다 생각하는 자신의 고정 표시기 이미지 *를 만들 수는 귀하의 스파크 응용 프로그램을 구축 단계에서 이미지.

그래서 당신의 Dockerfile는해야 같은 같습니다

FROM sequenceiq/spark:1.6.0 
COPY sparkapplication.jar sparkapplication.jar 
COPY bootstrap.sh /etc/bootstrap.sh 
ENTRYPOINT ["/etc/bootstrap.sh"] 

을 당신은 spark-submit 명령으로/편집 bootstrap.sh (엔트리 포인트)를 만들어야합니다

당신은 Their bootstrap.sh를 사용하고 여기 스파크 제출을 추가 할 수 있습니다 명령 (이 파일의 끝 부분에있는 곳) 뭔가 같은 :

$SPAKR_HOME/bin/spark-submit \ 
    --class MainClass \ 
    --master local[*] \ 
    /sparkapplication.jar 

은 그냥 sparkapplication.jar를 넣어 nd bootstrap.shDockerfile (같은 폴더에 있음) 옆에 있습니다.

2, 수동으로 컨테이너를 실행하는 스파크 응용 프로그램을 복사

두 번째 옵션은 고정 표시기 컨테이너를 사용하고 컨테이너에 응용 프로그램을 복사하는 것입니다 :

docker cp sparkapplication.jar container:/sparkapplication.jar

다음 exec (연결) 컨테이너 (docker exec -it container bash) 수동으로 spark-submit을 실행하십시오.

관련 문제