前言
个人博客之前使用的是七牛云的10G的S3
存储+自定义CDN
加速域名,来作为博客的免费的图床。但最近不知道为啥总是有额外的流量费用,根据工单说是走了额外的外网流出流量,最后也没排查出啥结果,同时七牛云的免费额度并不包括HTTPS
协议,又因为浏览器的混合内容的问题(HTTPS不能直接发起HTTP请求)还导致博客只能为HTTP协议,带来了很多请求的麻烦,因此决定在服务器上自建图床~
1 | 使用七牛云做图床带来的问题: |
图片迁移步骤
- 将图片从七牛云备份下载下来
- 选择开源图床
- 配置相关ssl证书
- 写脚本替换
- 验证
图片下载
由于博客图片并不多,直接在七牛云存储桶的控制台批量下载下来就好啦
minio
在经过google之后,选择了minio这个开源的图床系统,再根据官网或者博客的教程安装就好了,安装中主要参考了以下两个文档
执行docker命令
1 | docker run -p 8000:9000 -p 8090:9090 --net=host --name minio -d --restart=always -e "MINIO_ACCESS_KEY=admin" -e "MINIO_SECRET_KEY=admin123456" -v /home/minio/data:/data -v /home/minio/config:/root/.minio minio/minio server /data --console-address ":8090" -address ":8000" |
配置SSL证书
这部分直接去腾讯云上申请个免费的证书,随后选择Nginx
的进行下载解压
将后缀为key
的文件命名为private.key
将后缀为crt
的文件命名为public.crt
在把他们丢进minio
的certs
文件夹里,例如我的是/home/minio/config/certs
路径
脚本替换+验证
这个就不多介绍啦,大伙都会,无非就是遍历所有md文件然后将旧图片的路径替换为新的图片路径。
最后在minio中在批量上传就完事啦