基于树莓派-piwigo/apache2 的家庭云相册搭建
背景
近期由于拍摄了很多我和胡小蕊在一起的照片,包括生活照片和出去游玩的照片,所以想搞一个家庭云相册,可以用于实时同步手机中的照片到云相册上。因为考虑到公有云相册的隐私安全保障问题,以及我想自己DIY一些功能。还有就是自己的手机内存问题以及手机自带的云相册需要付费申请更大的空间,我不想付费。因此我想可以利用树莓派作为服务器,寻找一个开源的云相册管理系统自己部署到服务器上,最好是带有软件的开源云相册。找来找去发现了这款PiWigo云相册,详细请见: PIWIGO 官网,这里是github地址: PIWIGO github仓库
1、介绍
这篇博客介绍如何在树莓派4上安装PiWigo作为一个web server。 Piwigo是一个开源的相册管理软件,可以轻松的管理我们的照片和相册。我们可以在PC端或者安卓端以及iphone上进行浏览和同步。
2、要求
下面这些是必须需要提前准备好的:
3、配置树莓派4B作为一个WEB 服务器
3.1 确认 Raspberry Pi 4 OS 是最新的
在执行该命令之前,若是中国大陆用户需要将apt源更换,具体更换流程: 如何更换树莓派OS软件源
|
|
3.2 安装WEB服务 (Apache)
我们知道web服务有很多选择,例如nginx apache,我们这里选择Apache
|
|
等待终端打印字符结束,可以打开本地树莓派ip地址,看到以下网页显示即安装成功
3.3 安装PHP相关依赖
|
|
3.4 安装数据库
我们使用MariaDB 代替Mysql, MariaDB是Mysql的一个子分支,但是更小更轻便
1、输入以下代码安装mariadb
|
|
2、等待安装完成之后,输入以下命令配置数据库相关信息及环境变量
|
|
执完命令之后,终端将会显示如下
3、依次回答终端上显示的问题如下:
4、为了更好的管理我们的数据库我们安装一个phpMyAdmin
|
|
5、在终端显示的设置中,我们进行以下设置: a、使用空格键选择apache2(选择到后会显示一个*号),然后我们使用TAB键选择OK,ENTER,继续下一步: b、选择yes to configure the database for phpmyadmin with dbconfig-common.
c、下一个终端显示的配置中,配置我们数据库用户phpmyadmin的密码
6、给予 phpMyAdmin 用户权限 a、使用root用户登录 MariaDB
|
|
给予权限
|
|
7、重启树莓派
|
|
8、打开树莓派对应局域网ip:for example http://192.168.2.148/phpmyadmin, 可以见到以下页面
9、使用 phpmyadmin作为用户名,密码为刚刚设置的密码进行登录
4、安装Piwigo
在安装PiWiGo之前,数据库需要初始化,新建库表等操作
4.1 设置数据库
1、以root用户名登录数据库
|
|
2、创建数据库 piwigo_13_dev, 你可以用你喜欢的名称
|
|
3、将 Piwigo 数据库的所有权限授予您将在后续步骤中在 Piwigo 中配置的用户(带密码)
|
|
4、刷新权限表以使更改生效,然后退出
|
|
4.2 安装Piwigo
我们使用手动方法来安装Piwigo。
1、直接在树莓派中下载安装包并解压
|
|
2、现在必须将包含解压缩的 Piwigo 文件的文件夹的内容移至 Apache 公共文件夹中。将“PIWIGO”文件夹替换为您喜欢的名称(小写),记住在 URL 和以下命令中都使用您的文件夹名称:
|
|
就我而言,我使用了
|
|
move命令mv会给出警告,;设备或资源繁忙,无法移动…等, 可以忽略,我们可以直接到目标文件夹中查看,发现已经全部移动过去了
3、为公共文件夹分配正确的权限,以便 Piwigo 安装程序能够执行其任务:
|
|
4、删除用于解压 piwigo 文件的文件夹
|
|
5、我们现在使用浏览器来完成安装步骤。输入您的 Raspberry PI 的 IP 地址作为 URL,后跟步骤 2 中使用的“piwigo”文件夹名称。所以在我的例子中,它变成 http://192.168.2.148/piwigo13dev 将显示 Piwigo 安装页面。
6、添加您的数据库名称、数据库用户和数据库用户密码。将主机变量设置为“localhost”。
7、选择 piwigo 管理员用户名、密码和电子邮件地址。这些将是您用来访问网络仪表板的。就我而言,我输入了以下内容:
8、单击“开始安装”。
5、安装成功后的一些设置
通过照片管理可以进行添加照片等操作,相册管理可以进行相册的增加与删除修改。可以下载相应的APP与该服务端进行交互,设置同步相册可以进行定时同步操作.
在实际使用中我也遇到了一些问题,比如在ios端设置自动同步相册的时候,不能选择多久同步一次,但是在安卓端就有这个功能,然后在IOS端和安卓端都不能设置多个相册同步,只能选择单个相册同步,在这个项目的issue里好像也没有看到有人吐槽过这个问题,不过这些问题都不属于bug,吐槽了作者估计也不会搭理,后续看看有时间自己fork过来改进一下…
自动上传这块可设置的东西太少了!
6、参考文章:
1、 How to install Piwigo on a Raspberry Pi 4?
2、 How to Install and Use Piwigo on Your Raspberry Pi
3、Piwigo and Raspberry PI: a Private Open Source Photo Management Platform