Piwigo自建相册系统 2024-03-08 默认分类,服务搭建 暂无评论 73 次阅读 # Piwigo自建相册系统 ## 1. 项目介绍 Piwigo 是一个免费且开源的基于 Web 的照片库,最初由 Pierrick Le Gall 编写。它是用PHP编写的,需要一个MySQL数据库。Piwigo 可以在托管环境中使用各种方法进行部署。用户从 Piwigo.org 下载当前版本的 Piwigo。他们要么下载完整的存档并将源代码上传到他们的托管环境,要么下载 NetInstall(单个 PHP 文件),将其上传到他们的托管环境并让它自动下载完整的存档。 Piwigo官网:https://piwigo.org/ Piwigo的GIthub:https://github.com/Piwigo/Piwigo Piwigo Docker的Github:https://github.com/linuxserver/docker-piwigo Piwigo提供了两种方式,一种是自托管,也就是今天讲解的这种,还有一种是云托管,是由Piwigo官方提供的托管服务。见下图 ![image-20240210104629162](https://cdn.jsdelivr.net/gh/plfish199/picx-images-hosting/Piwigo自建相册系统/image-20240210104629162.rorn8h1r68g.webp)云托管价格如下: ![image-20240210104731511](https://cdn.jsdelivr.net/gh/plfish199/picx-images-hosting/Piwigo自建相册系统/image-20240210104731511.5g2swfyfm2k0.webp) 下面是官网提供的几个前台demo样例,有兴趣的大家可以去网页上看看 demo1:https://demo1.piwigo.com/ ![image-20240210105250827](https://cdn.jsdelivr.net/gh/plfish199/picx-images-hosting/Piwigo自建相册系统/image-20240210105250827.1qj3mqkdfa00.webp) demo2:https://demo2.piwigo.com/ ![image-20240210105326801](https://cdn.jsdelivr.net/gh/plfish199/picx-images-hosting/Piwigo自建相册系统/image-20240210105322306.2sy101txvwy0.webp) demo3:https://demo3.piwigo.com/ ![image-20240210105357874](https://cdn.jsdelivr.net/gh/plfish199/picx-images-hosting/Piwigo自建相册系统/image-20240210105357874.3ed74h4jesw0.webp) demo4:https://demo4.piwigo.com/ ![image-20240210105423897](https://cdn.jsdelivr.net/gh/plfish199/picx-images-hosting/Piwigo自建相册系统/image-20240210105423897.6137bgrhzn40.webp) 后台管理页面: ![image-20240210105901137](https://cdn.jsdelivr.net/gh/plfish199/picx-images-hosting/Piwigo自建相册系统/image-20240210105901137.4ofx7kr33ri0.webp) ## 2. 项目搭建 ### 2.1 准备工作 - VPS(装好Docker、Docker-compose、反向代理软件) - 域名 - 做好域名解析 ### 2.2 搭建开始 #### 2.2.1 创建安装目录 ```bash mkdir /root/data/docker_data/piwigo cd /root/data/docker_data/piwigo ``` #### 2.2.2 创建docker-compose.yml文件 文件参考[docker-piwigo的GitHub](https://github.com/linuxserver/docker-piwigo) ![image-20240210113857567](https://cdn.jsdelivr.net/gh/plfish199/picx-images-hosting/Piwigo自建相册系统/image-20240210113857567.1vpse2bkqbj4.webp) 由于项目需要使用到mysql数据库,官方提供的docker-compose文件没有mysql服务,所以还需要增加mysql的服务,我利用gpt对官方提供的docker-compose文件进行了修改,增加了mysql服务内容,最终的修改得到的docker-compose.yml如下: ```yml version: '3' services: piwigo: image: lscr.io/linuxserver/piwigo:latest container_name: piwigo ports: - "8080:80" # 端口映射,官方默认80端口,前面可自己修改成VPS未被占用端口 depends_on: - db environment: - PUID=1000 - PGID=1000 - TZ=Asia/Shanghai # 时区,中国时区为Asia/Shanghai volumes: - ./config:/config - ./gallery:/gallery db: image: mysql:5.7 container_name: mysql_piwigo environment: MYSQL_ROOT_PASSWORD: SSbw5pK_bSDvqIXIEeDHPg # root用户密码 MYSQL_DATABASE: piwigo # 数据库名 MYSQL_USER: piwigo # 用户名 MYSQL_PASSWORD: xO4G-U28etWMNWoyx9OtFg # piwigo用户数据库密码 volumes: - ./mysql_data:/var/lib/mysql volumes: mysql_data: config: gallery: ``` #### 2.2.3 启动项目 ```shell cd /root/data/docker_data/piwigo docker-compose pull docker-compose up -d ``` #### 2.2.4 项目安装 浏览器访问ip:端口,进入项目安装界面。 ![image-20240211102526067](https://cdn.jsdelivr.net/gh/plfish199/picx-images-hosting/Piwigo自建相册系统/image-20240210120311634.6tcfnnkku2s0.webp) 安装完成后进入后台页面。 ![image-20240210120823639](https://cdn.jsdelivr.net/gh/plfish199/picx-images-hosting/Piwigo自建相册系统/image-20240210120758536.7h59o7ov0ls0.webp) 设置主题 ![image-20240211104220535](https://cdn.jsdelivr.net/gh/plfish199/picx-images-hosting/Piwigo自建相册系统/image-20240211104220535.2d6vi74ptcg0.webp) 选项设定 ![image-20240211134011089](https://cdn.jsdelivr.net/gh/plfish199/picx-images-hosting/Piwigo自建相册系统/image-20240211134011089.4on0fg6p9760.webp) 添加图片 ![image-20240211104258954](https://cdn.jsdelivr.net/gh/plfish199/picx-images-hosting/Piwigo自建相册系统/image-20240211104258954.26fv6bngj58g.webp) 浏览图库 ![image-20240211104334458](https://cdn.jsdelivr.net/gh/plfish199/picx-images-hosting/Piwigo自建相册系统/image-20240211104334458.25vhf6s2cj1c.webp) 设置图库权限 ![image-20240211104442247](https://cdn.jsdelivr.net/gh/plfish199/picx-images-hosting/Piwigo自建相册系统/image-20240211104442247.474ubm2oace0.webp) ![image-20240211104528470](https://cdn.jsdelivr.net/gh/plfish199/picx-images-hosting/Piwigo自建相册系统/image-20240211104528470.hu3mcwulf0w.webp) ## 3. 总结 项目总体搭建不算困难,占有服务器cpu资源也不大,很快就可以跑起来,建议如果真的想使用的小伙伴,买存储大一点的服务器。要放公网上建议做好域名解析,域名解析参考我之前的博客,如果是家用NAS的话,就可以不做,放在家里当图库就行。这个项目总体提供的功能还是比较全的,但是就是感觉默认ui差了一点,这个需要自己装主题、插件呀这些去进行调整。有感兴趣的小伙伴可以折腾一下,毕竟现在越来越讲究数字资产的整理了。之后打算再去体验一款相册系统,到时候有条件再给大家讲解,也顺便做一下对比。 打赏: 微信, 支付宝 标签: VPS 本作品采用 知识共享署名-相同方式共享 4.0 国际许可协议 进行许可。