搭建图床 切换本站图片至自建服务

家宽环境搭建兰空图床实践过程记录分享

有什么用/怎么用

自建图床,自用的情况下暂时是够用的

访问:Carl Notes 图床

登录后台管理图床中的图片内容等操作

相关内容

实现方法

Docker搭建Lsky Pro图床应用

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
docker pull dko0/lsky-pro

docker run --name lsky-pro --restart always -p 8091:80 -d -v /volume2/KingchuxingSSD512G/MacBookPro_Skitch:/var/www/html dko0/lsky-pro

#转化为docker-compose
version: '3.9'
services:
lsky-pro:
image: dko0/lsky-pro
volumes:
- '/volume2/KingchuxingSSD512G/MacBookPro_Skitch:/var/www/html'
ports:
- '8091:80'
restart: always
container_name: lsky-pro

配置PicGO

下载并安装PicGo,Mac OS X:[PicGo-2.4.0-beta.6-x64.dmg](https://github.com/Molunerfinn/PicGo/releases
https://picgo-release.molunerfinn.com/2.4.0-beta.6/PicGo-2.4.0-beta.6-x64.dmg)

打开主界面/窗口,插件设置,搜索并安装插件名:lankong (我下载的版本是:lankong 1.1.3)

图床配置 》 lankong

1
2
3
Lsky Pro Version: V2
Server: https://img.carlzeng.top:3
Auth token: Bearer 1|ZRZcNz1E6hAuyV4LytmCqmGx5yST0g9OyhdptXXX

获取 Lsky Pro 兰空图床的Auth Token的方式,推荐(Terminal 运行命令):

1
2
3
curl --location --request POST 'https://imgserver.com:3/api/v1/tokens' \
--form 'email="email@email.com"' \
--form 'password="password"'

请修改一下URL地址为访问自建兰空图床的URL地址,email和密码为登录图传所使用的用户名和密码

本章节参见:https://github.com/hellodk34/picgo-plugin-lankong

测试:将文件拖拽到此处,或 点击上传,然后到兰空图床的URL后台,确认图片已上传至系统中

配置Typora

设置 偏好设置

  1. 切换Typora到中文语言版(因为目前只有中文版有PicGo的选项)

  2. 偏好设置 》 图像 〉上传服务设定。 选择:PicGo.app

  3. 然后点击:验证图片上传选项

    我的设置第一次显示失败了,按提示的信息查看日志:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    ------Error Stack Begin------
    Error: You must be logged in to use.
    at Object.We [as handle] (/Applications/PicGo.app/Contents/Resources/app.asar/node_modules/picgo/dist/index.cjs.js:1:21399)
    at processTicksAndRejections (node:internal/process/task_queues:96:5)
    at async je.doUpload (/Applications/PicGo.app/Contents/Resources/app.asar/node_modules/picgo/dist/index.cjs.js:1:19834)
    at async je.start (/Applications/PicGo.app/Contents/Resources/app.asar/node_modules/picgo/dist/index.cjs.js:1:18605)
    at async $t.upload (/Applications/PicGo.app/Contents/Resources/app.asar/node_modules/picgo/dist/index.cjs.js:1:74902)
    at async Object.upload (/Applications/PicGo.app/Contents/Resources/app.asar/index.js:2:686906)
    at async hr (/Applications/PicGo.app/Contents/Resources/app.asar/index.js:2:689655)
    at async /Applications/PicGo.app/Contents/Resources/app.asar/index.js:2:690736
    -------Error Stack End-------
    2024-02-21 13:37:13 [PicGo INFO] [PicGo Server] upload result
    2024-02-21 13:37:13 [PicGo WARN] [PicGo Server] upload failed, see picgo.log for more detail ↑
  4. 复制一张图片到剪贴板,在某个文章的内容中,粘贴图片;鼠标右键选中图片,上传图片

  5. 这时PicGo会显示待上传的图片,以及上传进度,直到图片被自动上传到图床中

  6. 全流程结束

本章节可以参见:Upload Images

关联Alist的目录

这是根据个人自身的使用情况做的拓展,分享出图床中的所有图片

修改docker-compose.yml, 添加映射:

  • /volume2/KingchuxingSSD512G/MacBookPro_Skitch:/home/share10

docker exec -it alist /bin/bash

1
2
mkdir share7 && mkdir share8 && mkdir share9 && mkdir share10 && mkdir shar
e11 && mkdir share12

重启docker-compose

1
2
3
4
5
#这是不会成功的,需要使用docker-compose down 和 up
docker-compose restart

docker-compose down
docker-compose up -d

进入Alist的后台管理,新增 “本机存储”

映射/home/share10 至外观目录:/图床MacBookPro_Skitch

效果如:https://file.carlzeng.top:3/%E5%9B%BE%E5%BA%8AMacBookPro_Skitch/storage/app/uploads/2024/02/21

NPM反代后带端口访问

1、修改/config/app.php (大约在57-60行的地方,修改以下2行内容)

1
2
3
4
5
//原先:
'url' => env('APP_URL', 'http://localhost'),

//新:
'url' => env('APP_URL', 'https://xxxxx.com:4443'),
1
2
3
4
5
//原先:
'asset_url' => env('ASSET_URL', null),

//新:
'asset_url' => env('ASSET_URL', 'https://xxxxx.com:4443'),

请根据自身情况修改https://xxxxx.com:4443为自己的域名和端口。

2、修改 /app/Providers/ApServiceProvider.php 第 32 行下面追加一行:

1
\Illuminate\Support\Facades\URL::forceScheme('https');

灵感来源

写了一个适配兰空图床 Lsky Pro 的 PicGo 图片上传插件 picgo-plugin-lankong

静态资源加载失败 #317

https+域名+端口的访问问题,NginxProxyManager反代 #607

树莓派通过Docker部署兰空图床