每个开发都会用到的国内开发资源镜像一览

标签: dev | 发表时间:2020-05-07 00:00 | 作者:
出处:http://itindex.net/relian

本页面记录我们团队开发环境中的使用国内镜像站加速的配置参考,便于快速配置开发环境使用的镜像站,一些相关的详细参考内容会以参考资料形式给出。

本文以全局镜像配置为主,即配置在全局的路径下,所有的项目均受影响。像 Maven, Gradle 之类的工具支持项目单独定义镜像仓库,并不在本文涉及的内容中。

镜像配置列表:

Gradle

创建目录 ~/.gradle/init.d(Unix/Linux 环境)或 %USERPROFILE%\.gradle\init.d(Windows 环境),写入以下两个文件:

  • repo.gradle:

          allprojects{buildscript{repositories{maven{url"https://repo.huaweicloud.com/repository/maven"}}}repositories{maven{url"https://repo.huaweicloud.com/repository/maven"}}gradle.projectsEvaluated{tasks.withType(JavaCompile){options.compilerArgs<<"-Xlint:unchecked"<<"-Xlint:deprecation"}tasks.withType(GroovyCompile){options.compilerArgs<<"-Xlint:unchecked"<<"-Xlint:deprecation"}}}
  • pluginManagement.gradle (只对 Gradle 4.0及以上版本使用新的 plugins {}DSL 部分有效):

          settingsEvaluated{settings->settings.pluginManagement{repositories{maven{url"https://repo.huaweicloud.com/repository/maven"}gradlePluginPortal()}}}

: gradle 使用镜像站下载依赖的时候可能会出现镜像站还未缓存完毕依赖,从而下载依赖的时候出错,导致 task 失败退出的情况。如果遇到这种情况,等待镜像站缓存完毕,加上 --refresh-dependencies参数重新运行一次 task 即可,如:

./gradlew --refresh-dependencies build

参考资料:

Maven

创建 ~/.m2/settings.xml(Linux/Unix 环境)或 %USERPROFILE%\.m2\settings.xml(Windows 环境)文件,写入以下内容:

    <?xml version="1.0" encoding="UTF-8"?><settingsxmlns="http://maven.apache.org/SETTINGS/1.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd"><mirrors><mirror><id>huaweicloud</id><mirrorOf>*</mirrorOf><url>https://repo.huaweicloud.com/repository/maven</url></mirror></mirrors></settings>

参考资料:

Groovy Grape

创建 ~/.groovy/grapeConfig.xml(Linux/Unix 环境)或 %USERPROFILE%\.groovy\grapeConfig.xml(Windows 环境)文件,写入以下内容:

    <ivysettings><settingsdefaultResolver="downloadGrapes"/><resolvers><chainname="downloadGrapes"returnFirst="true"><filesystemname="cachedGrapes"><ivypattern="${user.home}/.groovy/grapes/[organisation]/[module]/ivy-[revision].xml"/><artifactpattern="${user.home}/.groovy/grapes/[organisation]/[module]/[type]s/[artifact]-[revision](-[classifier]).[ext]"/></filesystem><ibiblioname="localm2"root="${user.home.url}/.m2/repository/"checkmodified="true"changingPattern=".*"changingMatcher="regexp"m2compatible="true"/><ibiblioname="huawei"root="https://mirrors.huaweicloud.com/repository/maven"m2compatible="true"/></chain></resolvers></ivysettings>

参考资料:

nvm

配置环境变量:

  • NVM_NODEJS_ORG_MIRROR=http://npm.taobao.org/mirrors/node
  • NVM_IOJS_ORG_MIRROR=http://npm.taobao.org/mirrors/iojs

参考资料:

npm

执行命令:

    npm configsetregistry https://registry.npm.taobao.org
npm configsetdisturl https://npm.taobao.org/dist
npm configsetsass_binary_site https://npm.taobao.org/mirrors/node-sass
npm configsetphantomjs_cdnurl https://npm.taobao.org/mirrors/phantomjs
npm configsetchromedriver_cdnurl https://npm.taobao.org/mirrors/chromedriver
npm configsetoperadriver_cdnurl https://npm.taobao.org/mirrors/operadriver
npm configsetelectron_mirror https://npm.taobao.org/mirrors/electron/
npm configsetpython_mirror https://npm.taobao.org/mirrors/python
npm configsetelectron_builder_binaries_mirror https://npm.taobao.org/mirrors/electron-builder-binaries/
npm configsetnode_sqlite3_binary_host_mirror https://npm.taobao.org/mirrors

手改 ~/.npmrc或设置等效的环境变量均有效。

特别注意,如果想要发布 npm 包到中央仓库,必须先取消设置 registry,发布完毕之后再改回来:

    # 发布中央仓库之前必须取消registry镜像设置npm config delete registry# 发布完毕再把registry镜像加回来npm configsetregistry https://registry.npm.taobao.org

参考资料:

PyPI

执行命令:

    pip configsetglobal.index-url https://mirrors.aliyun.com/pypi/simple/

参考资料:

Anaconda

执行命令:

    conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/msys2
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
conda config --set show_channel_urls yes

修改 .condarc配置文件可以达成同样的效果,参考下方参考资料。

参考资料:

Vagrant

通过镜像站安装插件:

    vagrant plugin install --plugin-clean-sources --plugin-source https://gems.ruby-china.com/ <plugin>...

vagrant-vbguest下载 VBoxGuestAdditions 镜像(修改 Vagrantfile):

    config.vbguest.iso_path="https://mirrors.tuna.tsinghua.edu.cn/virtualbox/%{version}/VBoxGuestAdditions_%{version}.iso"

通过镜像站下载 box:

    # Ubuntu镜像vagrant init ubuntu-bionic https://mirrors.tuna.tsinghua.edu.cn/ubuntu-cloud-images/bionic/current/bionic-server-cloudimg-amd64-vagrant.box# Centos镜像vagrant init centos7 https://mirrors.ustc.edu.cn/centos-cloud/centos/7/vagrant/x86_64/images/CentOS-7.box

也可以修改 Vagrantfileconfig.vm.box_url = "box文件的url"

参考资料:

Rust

rustup

设置环境变量:

  • RUSTUP_DIST_SERVER=https://mirrors.tuna.tsinghua.edu.cn/rustup

crates.io 索引镜像

写入配置文件 ~/.cargo/config:

    [source.crates-io]replace-with='ustc'[source.ustc]registry="git://mirrors.ustc.edu.cn/crates.io-index"

参考资料:

Docker Hub

中科大提供了公开的 Docker Hub 仓库镜像,以下配置以中科大为例。其他国内的云厂商如 阿里云华为云等等都提供了 Docker Hub 镜像,需要用户自行注册账号,并且手工开通,使用是免费的。如果期望使用云厂商免费的 Docker Hub 镜像,替换下面的镜像地址为云厂商分配给用户的加速地址即可。

Linux

/etc/docker/daemon.json中加入:

    {"registry-mirrors": ["https://docker.mirrors.ustc.edu.cn/"]
}

重启服务即可。

MacOS

  1. 打开 “Docker.app”
  2. 进入偏好设置页面(快捷键 ⌘, )
  3. 打开 “Daemon” 选项卡
  4. 在 “Registry mirrors” 中添加 https://docker.mirrors.ustc.edu.cn/
  5. 点击下方的 “Apply & Restart” 按钮

Windows

在系统右下角托盘 Docker图标内右键菜单选择 Settings,打开配置窗口后左侧导航菜单选择 Daemon。在 Registry mirrors一栏中填写地址 https://docker.mirrors.ustc.edu.cn/,之后点击 Apply保存后 Docker就会重启并应用配置的镜像地址了。

参考资料:

Julia

创建 ~/.julia/config/startup.jl文件,写入以下内容:

    usingPkgpkg"activate."pkg"registryaddhttps://mirrors.ustc.edu.cn/julia/registries/General.git"pkg"instantiate"

参考资料:

相关 [开发 都会 国内] 推荐:

每个开发都会用到的国内开发资源镜像一览

- - IT瘾-dev
本页面记录我们团队开发环境中的使用国内镜像站加速的配置参考,便于快速配置开发环境使用的镜像站,一些相关的详细参考内容会以参考资料形式给出. 本文以全局镜像配置为主,即配置在全局的路径下,所有的项目均受影响. 像 Maven, Gradle 之类的工具支持项目单独定义镜像仓库,并不在本文涉及的内容中.

硅谷和国内的 iOS 开发到底有何不同?

- - ITeye资讯频道
前段时间在国内各大互联网公司转了一圈. 与各位 iOS 业界大佬交流了之后,深感国内变化之大,敬佩诸位国内开发者的实力和韧劲. 除此之外,我还发现硅谷和国内的 iOS 开发还是差别很大,且听我慢慢道来. 国内使用 SDK 和 硅谷大为不同. 首先是最本质的三个不同:国内的支付使用的是支付宝和微信,地图使用的高德和百度导航,国内的第三方登录主要是微博,微信,和 QQ.

国内移动开发者日子更难过 海外巨头大举入华

- - 行业资讯
  2012年5月,跟随着入华的脚步,美国云笔记软件服务商Evernote成为国内移动互联网领域关注的焦点.   除了Evernote,目前,包括新闻阅读软件Flipboard、移动游戏i-Free、《水果忍者》、Outfit7(《汤姆猫》开发商)、《愤怒的小鸟》、Gree(聚逸)、DeNA、Zynga、Popcamp(植物大战僵尸)等企业和产品都加速推进其在华业务.

移动app开发者必读:国内主要移动广告平台概况

- - TECH2IPO创见
前几日跟朋友喝酒,他们也想把广告加到他们的应用中,听说我靠这个捞了几笔,就来问,今天有时间了,作为在各大广告平台混迹的“老油条”,我也把我的一些感受和想法罗列成文. 都说今年是国内移动广告平台即将重新洗牌的一年,在这末日来临时,广告平台间的竞争也更加激烈,谷歌Admob开山鼻祖单价低,腾讯聚赢稳定打款周期长,多盟广告较多扣量十分严重,昔日的架势、哇棒已完全没落,酷果、点金等新平台也开始来小打小闹.

国内厂商扎堆手机OS 借二次开发上位前景难料

- - TechWeb 今日焦点 RSS阅读
   TechWeb编辑推荐:作为移动互联网的入口,手机操作系统已成为兵家必争之地,互联网巨头跨界发力手机操作系统成了业界的焦点. 继百度、阿里巴巴、腾讯等之后,手机操作系统领域混战大军中又涌入一个大佬. 近日,盛大正式推出基于Android深度定制的手机操作系统乐众ROM,该系统内置云中书城、麦库记事、盛大网盘等盛大旗下应用.

社交软件开发商Jive将IPO 国内康盛创想已出售

- - TechWeb 今日焦点 RSS阅读
  【TechWeb报道】12月13日消息,据国外媒体报道,社交软件开发商Jive Software将于美国当地时间13日上市,发行价定为12美元,将发行1340万股股票. 而国内同类公司康盛创想,已经在去年8月份被腾讯收购.   据悉,Jive Software做论坛起家,后转型为企业社交软件开发.

移动应用开发者必读:国内主要移动广告平台概况

- - 博客 - 伯乐在线
前几日跟朋友喝酒,他们也想把广告加到他们的应用中,听说我靠这个捞了几笔,就来问,今天有时间了,作为在各大广告平台混迹的“老油条”,我也把我的一些感受和想法罗列成文. 都说今年是国内移动广告平台即将重新洗牌的一年,在这末日来临时,广告平台间的竞争也更加激烈,谷歌Admob开山鼻祖单价低,腾讯聚赢稳定打款周期长,多盟广告较多扣量十分严重,昔日的架势、哇棒已完全没落,酷果、点金等新平台也开始来小打小闹.

#HTML5 Web App项目秀#国内首款大型HTML5页游《黎明帝国》开发背后

- - HTML5研究小组
HTML5游戏《黎明帝国》,磊友科技打造, 官网试玩. 正像游戏邦创始人郑金条在《程序员》杂志专栏文章中所说:“HTML5被整体市场所观望的除了技术标准和规范不够成熟外,最大的盼头就是出现一款重磅作品给市场打入强心剂,虽然磊友、Spil或Facebook在推动这个趋势,但都不如一款有说服力的游戏来得有价值.

国内手机应用开发者6成亏损 广告或成为突破口

- - TechWeb 今日焦点 RSS阅读
中国无线广告平台产业链结构图(来自分析机构艾媒咨询).    导语:移动互联网喧嚣背后掩盖不住不赚钱的尴尬,在众多的盈利途径中广告无疑是可以最快见效的一种方式,并在产业发展早期扮演重要角色. 在产业乱象和资本趋紧的背后,如何赚取广告或许是移动互联网的利益相关者广告联盟、渠道、开发者最需要思考的问题.

Unity 和 Cocos2d-x 越渐流行,国内公司开发「自研游戏引擎」的意义何在?

- - 知乎每日精选
我是Seed游戏引擎的总架构师. 读者们可以快速切到第三部分和第四部分. 只有这两个部分是对问题的直接回答. 一、我认为, Unity3D将无可挽回的,或者说,势在必得的,成为接下来很多年内,世界移动领域游戏引擎市场霸主. 回顾历史,正如同咱们经历过一次又一次的互联网时代变革一样,x86,windows,Google,facebook,twitter,当一个具备一定规模的产品在一定领域达成霸主地位之后,其它的同类产品从技术积累上、推广成本上、对用户的掌握程度上等等方面的差距均会无可挽回的越拉越大.