自建云相册PhotoPrism

前言

记得我是2016年开始用Office365,家庭版一年229,6个人拼车,人均40。除了可以畅享正版Office外,还有1T的OneDrive空间。从那时候开始,就把存放在电脑里10多年的老照片都放到了OneDrive里。此外使用OneDrive的APP,还可以把手机里面的照片同步到OneDrive上。最重要的是,OneDrive提供了基于AI的照片Tag,可以按地理位置或者Tag进行照片分类,极大方便了照片备份和管理。

然而,2020年不知道什么时间开始,OneDrive的Tag功能消失了。经过多方面了解,得知微软官方确实下线了Tag的功能,但理由众说纷纭。有说功能会被转移到Bing上,但目前没有任何进展;有说因为数据隐私的原因;还有说牵扯三星的相关专利问题。具体可以在Microsoft Community上查看 “Edit Tags” option missing in One Drive & existing tags not visible. 同时希望Tag功能回归的请愿已经放到了UserVoice上,里面有来自用户的各种吐槽,但官方没有任何表示。而在OneDrive的support页面,关于Tag的功能描述依然存在。


Docker 入门教程

该教程仅对docker常用操作进行了总结归纳

一、 什么是Docker

Docker是2013年,dotCloud用Golang开发的基于LXC的高级容器引擎

1.1 什么是LXC

Linux Container的简写。可以提供轻量级的虚拟化,以便隔离进程和资源,而且不需要提供指令解释机制以及全虚拟化的其他复杂性。相当于C++中的NameSpace


持续集成CI实施指南三--jenkins集成测试

前面几篇文章主要讲了jenkins搭建和项目构建相关内容,已经能满足自动编译,自动部署等功能,但还差一项很重要的工作:自动化测试!

作为敏捷开发必不可少的工作,我们需要每次构建后都要跑一遍自动化测试,做全量回归,如果有需要还有冒烟测试。那么下面就来介绍如何实现每次构建项目后自动执行一个自动化测试任务。

一、节点管理

一般来说,测试都基于windows操作系统,比如用selenium编写web项目的自动化测试,用teststack.white编写client项目自动化测试。而我们的jenkins是通过docker容器安装部署的,实际是linux环境,这里就会遇到操作系统不兼容的问题。

事实上,不仅仅是需要测试才会遇到这种情况,如果我们要通过jenkins for docker部署一个.net framework 项目,也是同样的问题。


持续集成CI实施指南一--搭建Jenkins

一、 关于持续集成

1.1 什么是持续集成

持续集成, 简称CI(continuous integration).是一种软件开发实践,即团队开发成员经常集成他们的工作,每次集成都通过自动化的构建(包括编译,发布,自动化测试)来验证,从而尽早地发现集成错误。

传统瀑布模型(水平划分项目阶段):

1


通过Docker Image找回Dockerfile

最近项目组上持续集成,于是利用jenkins的docker镜像做二次开发,原本写好的Dockerfile在生成docker image后不小心被误删,一番折腾后终于找了回来。

如下图所示:

  • jenkins为原始镜像
  • auto-jenkins为使用Dockerfile生成的镜像

1

使用history命令查询auto-jenkins镜像所执行的所有命令: