创建网络
docker network create jupyterhub
创建数据卷
docker volume create --name jupyterhub-data
启动jupyterhub
docker run -d -v /var/run/docker.sock:/var/run/docker.sock --name jupyterhub --net=jupyterhub -p 8000:8000 --env-file=env jupyterhub
Tomcat配置keycloak
解压keycloak
tar -xzvf keycloak-tomcat7-adapter-dist-3.4.1.Final.tar.gz -C /opt/modules/apache-tomcat-7.0.69/lib/
修改$TOMCAT_HOME/conf/context.xml
<Valve className="org.keycloak.adapters.tomcat.KeycloakAuthenticatorValve"/>
Web应用配置keycloak
修改web.xml
<!—认证中心相关配置-->
<security-constraint>
<web-resource-collection>
<web-resource-name>All Resources</web-resource-name>
<url-pattern>/service/*</url-pattern>
<url-pattern>*.jsp</url-pattern>
</web-resource-collection>
<auth-constraint>
<role-name>*</role-name>
</auth-constraint>
</security-constraint>
<login-config>
<auth-method>KEYCLOAK</auth-method>
<realm-name>indata</realm-name>
</login-config>
<security-role>
<role-name>*</role-name>
</security-role>
<!—权限相关配置-->
<filter>
<filter-name>SDKFilter</filter-name>
<filter-class>sdk.security.filter.SDKFilter
</filter-class>
<init-param>
<param-name>authzFilter</param-name>
<param-value>true</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>SDKFilter</filter-name>
<url-pattern>/service/*</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>SDKFilter</filter-name>
<url-pattern>*.jsp</url-pattern>
</filter-mapping>
修改/WEB-INF/keycloak.json
{
"realm": "indata",
"auth-server-url": "http://10.110.18.30:8180/auth",
"ssl-required": "none",
"resource": "zhangxu",
"public-client": true
}
修改WEB-INF/classes
/datasource.properties
dataSource.driverClassName=org.gjt.mm.mysql.Driver
dataSource.url=jdbc:mysql://10.110.13.208:3306/idsw01?useUnicode=true&characterEncoding=utf-8&allowMultiQueries=true&useOldAliasMetadataBehavior=true
dataSource.username=root
dataSource.password=root
修改WEB-INF/classes/idsw.properties
# 存储notebooks和models的HDFS地址
HDFS_URL=hdfs://10.110.18.217:8020
# 存储共享文件(包括模型及示例)的HDFS路径
SHARED_PATH=/data/idsw/shared
# 数据集存放的HDFS路径
DATASET_PATH=/data/idsw/dataset
# 模型文件存储的路径
MODELS_PATH=/data/idsw/models
KERBEROS_ENABLE=false
[email protected]
# jupyterhub
jupyterhub.url=http://192.168.73.130:8000
# Spark Livy访问地址
spark.livy.url=http://10.110.18.218:8999
# Yarn
yarn.monitor.url=http://10.110.18.218:8088
配置keycloak admin
创建clientID zhangxu