内网镜像站对于很多企业限制外网访问来说是非常必要的,极大方便了研发安装各种软件依赖。搭建镜像站的方式很多,这边选用清华大学开源软件镜像站开发的镜像管理器tunasync来搭建。
一、环境准备
对于镜像站,需求最大的就是磁盘。这根据需要同步的源来决定磁盘大小,CentOS最少需要500G;Ubuntu需要1.5T;pypi的不建议同步需要磁盘空间太大
二、系统安装
tunasync 项目提供预编译版程序,可以直接从 Github releases 下载使用预编译版本。
三、同步配置
tunasync主要有manager.conf和worker.conf两个配置文件来控制
manager.conf配置
debug = false [server] addr = "127.0.0.1" port = 14242 ssl_cert = "" ssl_key = "" [files] db_type = "bolt" db_file = "/usr/local/tunasync/db/manager.db" ca_cert = ""
port:监听端口
db_file:数据库文件路径
worker 配置
这边以CentOS为例,如果有其他的源需要同步,则在worker配置文件里添加一个mirrors模块
[global] name = "mirror_worker" log_dir = "/usr/local/tunasync/log/{{.Name}}" ##镜像下载地址 mirror_dir = "/cache1/mirror" ##并发线程数 concurrent = 10 ##同步周期,分钟 interval = 10080 [manager] ##manager地址 api_base = "http://localhost:14242" token = "some_token" ca_cert = "" [cgroup] enable = false base_path = "/sys/fs/cgroup" group = "tunasync" [server] hostname = "localhost" listen_addr = "127.0.0.1" ##worker监听端口 listen_port = 16010 ssl_cert = "" ssl_key = "" [[mirrors]] ##镜像名称 name = "centos" provider = "rsync" ##同步地址,最后的"/"不能少 upstream = "rsync://rsync.mirrors.ustc.edu.cn/repo/centos/" interval = 240 use_ipv6 = false
清华大学开源软件镜像站提供了很多自定义镜像脚本,可以参考 Github releases
四、服务启动
启动 tunasync 需开启 manager 进程与 worker 进程,先启动 manager,后启动 worker。为了便于监控系统进程情况,建立 /usr/local/tunasync/log/ 目录,所有进程的工作日志在该目录中(注意,此处日志为系统终端输出日志,与 tunasync 自身工作日志不同)
开启manager服务(后台进程):
$ tunasync manager --config /usr/local/tunasync/conf/manager.conf >>/usr/local/tunasync/log/manager.log
开启 worker 服务:
$ tunasync worker --config /usr/local/tunasync/conf/worke.conf
五、运行维护
参考Github。有删除、热重载、更新镜像大小
六、WEB前端
服务搭好后,前端可以使用Nginx来部署,这边就不重复说明了。WEB界面找了一个Github访的网易镜像站的WEB界面,个人觉得还不错。直达链接

聂扬帆博客
一个分享IT运维相关工作经验和实战技巧的个人博客
2021年8月10日 下午2:25 沙发
你好,请问前端的html文件需要自己写吗?好像是不能写在镜像文件里面的
、
2021年8月12日 上午8:59 1层
@jxliu 前端页面的就看你要做成什么样子了,要好看肯定得自己写,如果只是有链接可以点就很简单了,配置下nginx就可以