• 个人博客网站一揽子:Docker搭建图床(Lsky Pro)


    Lsky Pro

    介绍

    Lsky Pro 是一个用于在线上传、管理图片的图床程序,中文名:兰空图床,你可以将它作为自己的云上相册,亦可以当作你的写作贴图库。
    兰空图床始于 2017 年 10 月,最早的版本由 ThinkPHP 5 开发,后又经历了数个版本的迭代,在 2021 年末启动了新的重写计划并于 2022 年 3 月份发布全新的 2.0 版本。

    特性
    • 支持本地等多种第三方云储存 AWS S3阿里云 OSS腾讯云 COS七牛云又拍云SFTPFTPWebDavMinio
    • 多种数据库驱动支持,MySQL 5.7+PostgreSQL 9.6+SQLite 3.8.8+SQL Server 2017+
    • 支持配置使用多种缓存驱动,MemcachedRedisDynamoDB、等其他关系型数据库,默认以文件的方式缓存
    • 多图上传、拖拽上传、粘贴上传、动态设置策略上传、复制、一键复制链接
    • 强大的图片管理功能,瀑布流展示,支持鼠标右键、单选多选、重命名等操作
    • 自由度极高的角色组配置,可以为每个组配置多个储存策略,同时储存策略可以配置多个角色组
    • 可针对角色组设置上传文件、文件夹路径命名规则、上传频率限制、图片审核等功能
    • 支持图片水印、文字水印、水印平铺、设置水印位置、X/y 轴偏移量设置、旋转角度等
    • 支持通过接口上传、管理图片、管理相册
    • 支持在线增量更新、跨版本更新
    • 图片广场

    Docker部署Lsky Pro

    1.Docker启动

    Docker Hub选取合适的镜像,由于没有官方镜像,查找后,选取了Halcyonazure/LSKY-Pro-Docker
    Pasted image 20230915173114.png
    同样不使用-p命令,将其隐藏至虚拟子网中。

    docker run -d --name lskypro --net wpnt -v /var/lskypro:/var/www/html halcyonazure/lsky-pro-docker:latest
    
    • 1

    Pasted image 20230915175223.png
    使用命令查看虚拟子网下的容器:

    docker network inspect wpnt
    
    • 1

    已添加入虚拟子网中。
    Pasted image 20230915205103.png

    2.Nginx反向代理

    首先建立Nginx的端口映射,添加Nginx端口映射首先需要停止Docker容器,在/var/lib/docker/containers/{容器id}下有两个文件为hostconfig.jsonconfig.v2.json,分别修改两个文件如下:
    hostconfig.json:

    "PortBindings":{"80/tcp":[{"HostIp":"","HostPort":"80"}],"8089/tcp":[{"HostIp":"","HostPort":"8089"}]}
    
    • 1

    config.v2.json:

    “ExposedPorts”:{"80/tcp":{},"8089/tcp":{}}
    
    • 1

    之后,在之前文章中实现的[[Docker建站(Nginx、Wordpress、MySql)#^517b3b|Nginx实现反向代理]]的nginx.conf中添加以下内容:
    nginx.conf:

    upstream picbed {
    	server lskypro:8089;
    }
    server {
    	listen 8089;
    	sendfile on;
    	keepalive_timeout 65;
    	charset utf-8;
    	location / {
    		charset utf-8;
    		proxy_set_header X-Real-IP $remote_addr;
    		proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    		proxy_set_header Host $http_host;
    		proxy_set_header X-NginX-Proxy true;
    		proxy_set_header Upgrade $http_upgrade;
    		proxy_set_header Connection "upgrade";
    		proxy_pass http://picbed;
    		proxy_redirect off;
        }
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    3.配置Mysql

    与前文中的[[Docker建站(Nginx、Wordpress、MySql)#^6de5b5|Mysql配置]]相似,登录到mysql实例中:

    sudo docker exec -it wpdb bash
    mysql -uroot -p1q2w3e
    
    • 1
    • 2

    创建图床专用数据库:

    create database lskypro;
    
    • 1
    4.配置Lsky Pro

    使用http://ip:端口号即可访问,如下图
    Pasted image 20230915223323.png
    选择数据库为Mysql,数据口地址为虚拟子网内名称,数据口名称为刚才建立的lskypro
    Pasted image 20230915225448.png
    输入正确后就得到如下页面:
    Pasted image 20230915225611.png
    使用管理员账号登入系统:
    Pasted image 20230915225715.png

    要使用域名访问,在管理面板中修改储存策略
    Pasted image 20230915230125.png

    总结

    至此,我们实现了在自己的云服务器上搭建图床,借此可以实现笔记或者博文的多端同步,极大的方便了学习。

    ┗|`O′|┛ 嗷~~
    请添加图片描述

  • 相关阅读:
    【北京迅为】《iTOP-3588开发板快速测试手册》第五章 debian系统功能测试
    【牛客】NC107寻找峰值,HJ31单词倒排
    GIT使用学习笔记 远程仓库篇
    标准C库IO函数和Linux系统IO函数
    使用微信小程序播放视频直播
    Qt Core篇 后端上位机界面开发
    OSPF的7大状态和5大报文详讲
    天池Python练习07-字符串
    通过Office Web Viewer站点在线展示Office文档内容
    排序算法之---归并排序
  • 原文地址:https://blog.csdn.net/qq_43714332/article/details/132976882