wpk*_*kzz 5 install julia server
我在一台机器上有一个新的Julia instalation,我想用它作为实验室中各种人的数字运算服务器.似乎有一个名为jupyterhub的漂亮包,它使得Jupyter Notebook界面可以同时为各种客户提供服务.我再也找不到的网页开始提示"首先在全球安装IJulia,然后安装JupyterHub ......"
我似乎无法找到一种在全球范围内安装ONE软件包的好方法.
在Julia-v0.7 +中,我们需要使用JULIA_DEPOT_PATH而不是JULIA_PKGDIR和LOAD_PATH看起来像这样:
julia> LOAD_PATH
3-element Array{Any,1}:
Base.CurrentEnv()
Any[Base.NamedEnv("v0.7.0"), Base.NamedEnv("v0.7"), Base.NamedEnv("v0"), Base.NamedEnv("default"), Base.NamedEnv("v0.7", create=true)]
"/Users/gnimuc/Codes/julia/usr/share/julia/stdlib/v0.7"
Run Code Online (Sandbox Code Playgroud)
"首先在全球安装IJulia,然后安装JupyterHub ..."
我不知道这是否属实,通过以下步骤,您可以在安装IJulia后安装Jupyterhub.
Stefan Karpinski 已经在这里回答了这个问题.所以我们需要的只是使用这种方法来安装IJulia.jl包.
有一个名为LOAD_PATH的Julia变量,它被安排指向你的julia安装下的两个系统目录.例如:
julia> LOAD_PATH
2-element Array{Union(ASCIIString,UTF8String),1}:
"/opt/julia-0.3.3/usr/local/share/julia/site/v0.3"
"/opt/julia-0.3.3/usr/share/julia/site/v0.3"
Run Code Online (Sandbox Code Playgroud)
如果您在其中任何一个目录下安装软件包,那么使用该Julia的每个人都会看到它们.一种方法是将julia作为用户
export JULIA_PKGDIR=/opt/julia-0.3.3/usr/share/julia/site在shell中执行后写入这些目录.这样Julia将使用它作为它的包目录,而普通的包命令将允许你为每个人安装包....
为了让所有用户互相制作IJulia和Jupyterhub合作,您应该将文件夹复制your/user/.local/share/jupyter/kernels/julia/到/usr/local/share/jupyter/kernels/.我写下了我在测试Dockerfile中使用的一些步骤.代码是丑陋的,但它的工作原理.
请注意,您应该以root身份执行以下步骤,并假设您的julia已全局安装在/opt/julia_0.4.0/.
制作我们的全球包目录并进行设置JULIA_PKGDIR:
mkdir /opt/global-packages
echo 'push!(LOAD_PATH, "/opt/global-packages/.julia/v0.4/")' >> /opt/julia_0.4.0/etc/julia/juliarc.jl
export JULIA_PKGDIR=/opt/global-packages/.julia/
Run Code Online (Sandbox Code Playgroud)使用包管理器安装"IJulia":
julia -e 'Pkg.init()'
julia -e 'Pkg.add("IJulia")'
Run Code Online (Sandbox Code Playgroud)复制kernelspecs /usr/local/share/jupyter/kernels/可由任何添加的新用户使用Jupyterhub:
jupyter kernelspec list
cd /usr/local/share/ && mkdir -p jupyter/kernels/
cp -r /home/your-user-name/.local/share/jupyter/kernels/julia-0.4-your-julia-version /usr/local/share/jupyter/kernels/
Run Code Online (Sandbox Code Playgroud)