如何借助VPS搭建自己的图床

来如风雨,去似微尘。

Posted by Chevy on October 17, 2020

前言

其实早在去年,七牛云的图床服务就因为需要备案域名就很难用了,那个时候洲更同学还贴过一篇文章如何搭建一个自己图床网站,使用了Chevereto工具在服务器上搭建图床,他用的是dockers来创建了图床。

但是我自己因为懒,所以就一直用简书来当作我的图床,毕竟简书存在的时间很有可能大于我的VPS存在的时间。后来没想到风云突变,简书设置也被封禁过一段时间,这就让我不得不开始考虑自己也搞一个图床,于是我也研究了一下chevereto,利用了一下我闲置的VPS完成了自己图床的搭建。搭建流程参考把玩我的 VPS 主机 - 搭建漂亮的图床服务, 大约用时90分钟,完成了自己图床的构建。

流程记录存在GitHub

0b0f8e8c844b98fbc50c3f92d4ccb33f.png

需求

搜索能力(bing or google)

一台服务器(我买的是搬瓦工的青春版VPS,512M内存,11G硬盘空间),安装完加上系统大约占用6G的空间

基本的Linux操作能力

安装Nginx-PHP

root@Chevy:~# uname -a
Linux Chevy 3.10.0-514.el7.x86_64 #1 SMP Tue Nov 22 16:42:41 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux

我安装的是CENTOS7 Linux发行版,不同发行版本的差异完全可以通过探索和搜索解决。

当然,chevereto需要搭配数据库和PHP一起使用,所以我们需要预先安装Nginx, PHP, MySQL,这里我们可以通过一键安装包进行安装:

# 首先安装会用到的基础的组件
yum -y install wget screen curl python git

# 随后使用一键安装包进行lnmp的安装
wget http://mirrors.linuxeye.com/lnmp-full.tar.gz
tar xzf lnmp-full.tar.gz
cd lnmp
screen -S lnmp
./install.sh

# 安装过程比较漫长,属于限速步骤,其中需要用户选择配置数据库,我们只需要在install Web server和install database及install phpMyAdmin时选择yes就可以,其余的选项有no选no,有默认选默认即可

安装完成后会报告数据库及PHP的相关配置信息,请妥善留存(其中密码就会用在后续的登陆中),类似以下的信息:

Nginx install dir:              /usr/local/nginx

Database install dir:           /usr/local/mysql
Database data dir:              /data/mysql
Database user:                  root
Database password:              HKYsdhHG

PHP install dir:                /usr/local/php

phpMyAdmin dir:                 /data/wwwroot/default/phpMyAdmin
phpMyAdmin Control Panel URL:   http://45.63.59.2/phpMyAdmin

Index URL:                      http://45.63.59.2/

随后重启服务器就可以了,现在我们就安装好了数据库、Nginx和PHP环境。

VPS绑定域名

下面我们需要域名解析设置页面添加一条A记录指向VPS的IP地址

同时我们在刚才安装的lnmp文件夹下sh 一下vhost.sh设置虚拟主机:

证书可以使用默认或者Encrypt
domain这是你需要指向的域名,例如tc.2333.blog

随后记录下你的站点配置(例如):

Your domain:                  tc.2333.blog
Virtualhost conf:             /usr/local/nginx/conf/vhost/tc.2333.blog.conf
Directory of:                 /data/wwwroot/tc.2333.blog
Let's Encrypt SSL Certificate:/usr/local/nginx/conf/ssl/tc.2333.blog.crt
SSL Private Key:              /usr/local/nginx/conf/ssl/tc.2333.blog.key

安装Chevereto

前往/data/wwwroot/tc.2333.blog,blog里面给出了一键安装的代码,复制粘贴运行即可:

git clone https://github.com/Chevereto/Chevereto-Free && mv Chevereto-Free/* ./ && rm -rf Chevereto-Free

安装完毕以后,删除index.html文件,因为后续我们都通过PHP来访问图床。

修改 nginx 配置(/usr/local/nginx/conf/vhost/你的站点.conf),添加如下句段:

location / {
  try_files $uri $uri/ /index.php?$query_string;
}

最后service nginx reload让配置文件生效。

创建数据库 Chevereto

随后访问http://45.63.59.2/phpMyAdmin这个地址(见PHP安装配置记录),设置好你的数据,就可以通过tc.2333.blog这个网址来访问及使用你的图床了。

Warning

图床的处理能力和你的VPS的RAM及处理能力息息相关,小型VPS避免同时上传多个大文件进行处理,很有可能会导致VPS break down