在网上看到的docker spark镜像大多都是低版本的,而且jdk版本都低于8这个版本,以至于在提交应用的时候,运行失败!
而后我对spark镜像内的scala版本jdk版本spark版本进行升级后重新打包镜像。这里我打包成功后的各环境版本为:
在这里为大家提供我打包后的镜像地址:
ccr.ccs.tencentyun.com/junwei/spark2.4
version: "3"
services:
master:
image: ccr.ccs.tencentyun.com/junwei/spark2.4
hostname: master
restart: always
ports:
- "4040:4040"
- "8043:8042"
- "7077:7077"
- "8088:8088"
- "8081:8080"
command: bash /usr/local/spark/sbin/start-master.sh && ping localhost > /dev/null
# 这里我将所需的jar包和spark应用挂载到此处,方便在容器中运行
volumes:
- ./spark-job:/home
worker1:
image: ccr.ccs.tencentyun.com/junwei/spark2.4
restart: always
depends_on:
- master
expose:
- "8082"
command: bash /usr/local/spark/sbin/start-slave.sh spark://master:7077 && ping localhost >/dev/null
volumes:
- ./spark-job:/home
然后直接使用:
docker-compose up -d
部署即可。