나는 두 가지 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.sh
은 Dockerfile
(같은 폴더에 있음) 옆에 있습니다.
2, 수동으로 컨테이너를 실행하는 스파크 응용 프로그램을 복사
두 번째 옵션은 고정 표시기 컨테이너를 사용하고 컨테이너에 응용 프로그램을 복사하는 것입니다 :
docker cp sparkapplication.jar container:/sparkapplication.jar
다음 exec
(연결) 컨테이너 (docker exec -it container bash
) 수동으로 spark-submit
을 실행하십시오.