Closed johnnychen94 closed 4 years ago
稍微看了一下 tuna 的 issue。按照我的理解,Pkg server 是一个会根据用户数据动态返回更新数据的 server,而 BFSU 建设的是 Pkg Server 的 storage mirror。Julia 的包管理器可以指定后端而非 Pkg server 作为上游吗?
看到了 BFSU 的帮助文档。我们应该也可以用 StorageServer.jl 做 Julia 的全量同步。
按照我的理解,Pkg server 是一个会根据用户数据动态返回更新数据的 server,而 BFSU 建设的是 Pkg Server 的 storage mirror。
嗯大概是这样理解的。
Julia 的包管理器可以指定后端而非 Pkg server 作为上游吗?
可以的,只是这种方式不是官方设计的首选方式,从我目前的理解来看兼容性方面不会太有大的问题。HTTP 协议的 Storage mirror 大概是 Pkg server 的一个纯静态的功能子集。
我们应该也可以用 StorageServer.jl 做 Julia 的全量同步。
这个工具还属于实验性的工具,基本能够工作,只是效率上还有一点点慢... 所以如果license方面没问题的话,直接通过rsync 从 BFSU 拉取大概会是更好的选择。
Docker的话可以参考:https://github.com/tuna/tunasync-scripts/blob/master/dockerfiles/julia/Dockerfile
FYI,https://mirrors.bfsu.edu.cn/julia/
里面有三个文件夹 clones
, registries
和 static
,实际上需要对外提供的只有 static
文件夹 https://github.com/tuna/issues/issues/837#issuecomment-633788535
Julia 镜像已经进入测试阶段,在首页 https://mirrors.sjtug.sjtu.edu.cn 已经可以看到同步状态。
Reopen this issue due to missing artifacts and packages.
@skyzh 我来凑个热闹,貌似还是缺文件的亚子。julia 用的少,文件路径没显示全,等我搞下。
@skyzh 我来凑个热闹,貌似还是缺文件的亚子。julia 用的少,文件路径没显示全,等我搞下。
是的。一些包没有成功同步下来,会 fallback 到 GitHub。最近还在解决。
多给我几天时间... 最近事情有点太多了...
@johnnychen94 @skyzh 不急不急,julia 用的人少,包也没辣么多,我就是水一水。
跑了一次全量同步
@skyzh 下面这三个应该还是缺文件
Downloading artifact: FriBidi Exception calling "DownloadFile" with "2" argument(s): "The remote server returned an error: (404) Not Found." At line:12 char:1
+ CategoryInfo : NotSpecified: (:) [], MethodInvocationException
+ FullyQualifiedErrorId : WebException
Downloading artifact: Bzip2
Exception calling "DownloadFile" with "2" argument(s): "The remote server returned an error: (404) Not Found."
At line:12 char:1
+ CategoryInfo : NotSpecified: (:) [], MethodInvocationException
+ FullyQualifiedErrorId : WebException
Downloading artifact: FreeType2
Exception calling "DownloadFile" with "2" argument(s): "The remote server returned an error: (404) Not Found."
At line:12 char:1
+ CategoryInfo : NotSpecified: (:) [], MethodInvocationException
+ FullyQualifiedErrorId : WebException
@skyzh 下面这三个应该还是缺文件
Downloading artifact: FriBidi
Exception calling "DownloadFile" with "2" argument(s): "The remote server returned an error: (404) Not Found."
At line:12 char:1
$webclient.DownloadFile("https://mirrors.sjtug.sjtu.edu.cn/julia/arti ...
+ CategoryInfo : NotSpecified: (:) [], MethodInvocationException + FullyQualifiedErrorId : WebException
Downloading artifact: Bzip2
Exception calling "DownloadFile" with "2" argument(s): "The remote server returned an error: (404) Not Found."
At line:12 char:1
$webclient.DownloadFile("https://mirrors.sjtug.sjtu.edu.cn/julia/arti ...
+ CategoryInfo : NotSpecified: (:) [], MethodInvocationException + FullyQualifiedErrorId : WebException
Downloading artifact: FreeType2
Exception calling "DownloadFile" with "2" argument(s): "The remote server returned an error: (404) Not Found."
At line:12 char:1
$webclient.DownloadFile("https://mirrors.sjtug.sjtu.edu.cn/julia/arti ...
+ CategoryInfo : NotSpecified: (:) [], MethodInvocationException + FullyQualifiedErrorId : WebException
thanks,我们最近在修部分资源同步失败的问题
类别:新增镜像
镜像名:Julia
上游路径:
有两种可行的策略:
镜像简介:
Julia 是一门新的科学计算语言,在科学计算方面,一定程度上有取代 MATLAB (和 Python ) 的趋势。
目前绝大部分开源代码库都依赖于 Github 存在,这也包括包注册表General registry(类似于anaconda 的默认channel)
目前国内的现状:
镜像包括三部分数据:1. 注册表 2. 源代码 3. 二进制依赖(Artifacts)
目前镜像为400G,后期有一定可能会像anaconda或者pypi一样膨胀
另一个相关的镜像是 Julia releases,上游是
https://julialang-s3.julialang.org
, 或者 BFSU: https://mirrors.bfsu.edu.cn/julia-releases/另外,如果SJTU能够支持Julia镜像的话,不知道能否让 Julia 官方在国内设置的 PkgServer 添加 SJTU 作为其中一个上游?之前有请求过 TUNA,但是可能因为TUNA内部对于Julia不了解的原因,所以没有支持这一请求。申请用它作为上游并不需要SJTUG这边做任何额外的维护,也不需要任何可靠性保证。 https://github.com/tuna/issues/issues/878