V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Shiroka
V2EX  ›  程序员

如何自建 npm cdn

  •  
  •   Shiroka · 2020-05-01 18:55:47 +08:00 via iPhone · 4108 次点击
    这是一个创建于 1665 天前的主题,其中的信息可能已经有所发展或是发生改变。
    公司可能有这个需求,虽然已经准备好那套自建可用性不确定不如用公共 cdn 的说辞了,但还是想预习一下。

    大约就是 jsdelivr code.bdstatic.comunpkg.zhimg.com 这种。首先 pass 掉反代,那有没有什么其他的方法?

    GitHub 上搜到两个,一个是需要 heroku,服务器在境内不予考虑;另一个是 serverless,但是在腾讯那里尝试部署失败了,我再摸索摸索。
    11 条回复    2020-05-11 22:37:27 +08:00
    xcstream
        1
    xcstream  
       2020-05-01 19:12:29 +08:00
    cdn 不就是有缓存的反代么
    jinliming2
        2
    jinliming2  
       2020-05-01 19:59:43 +08:00 via iPhone
    verdaccio 或者 cnpm ?
    xihefeng
        3
    xihefeng  
       2020-05-01 20:02:42 +08:00 via Android
    nexus 了解下,然后套个 cdn
    fedfrank
        4
    fedfrank  
       2020-05-01 20:03:42 +08:00
    verdaccio
    Rhinecho
        5
    Rhinecho  
       2020-05-01 21:24:22 +08:00 via iPhone
    @jinliming2 刚刚看了一下,应该就是这个了,谢谢
    @fedfrank 这个不错,谢谢
    FireFoxAhri
        6
    FireFoxAhri  
       2020-05-01 21:42:33 +08:00
    内网搭 nexus,无敌快
    adjusted
        7
    adjusted  
       2020-05-01 21:49:40 +08:00
    unpkg 不就是开源的么?
    m0cha
        8
    m0cha  
       2020-05-02 00:58:50 +08:00 via iPhone
    mark 一下,值得学习
    lc7029
        9
    lc7029  
       2020-05-02 12:15:44 +08:00
    用 nexus,参考我做的 yum 代理,功能和操作类似
    danteng.org/nexus-oss-yum-proxy/
    isukkaw
        10
    isukkaw  
       2020-05-03 12:52:06 +08:00
    你可以按照百度那个 npm cdn 的架构来,他们内部自建 npm 私有源、5 分钟粒度同步。
    Shiroka
        11
    Shiroka  
    OP
       2020-05-11 22:37:27 +08:00 via iPhone
    @isukkaw 试了下 nexus,基本上满足需求了。翻了下之前的帖子,发现 code.bdstatic.com 这个好像有用百度的云函数,随后再摸索摸索,谢谢

    @lc7029 谢谢啦,已经根据文章搭建好了
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   996 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 22:17 · PVG 06:17 · LAX 14:17 · JFK 17:17
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.