玩转Docker:Lsky pro图床+私有化部署大模型(Ollama+Openwebui)

news2024/9/23 19:15:07

最近搞了一个测试服务器,捣鼓了下一键搭建dnmp集成环境,然后还搭建了一个Lysk pro图床服务,后面又看到了开源大模型,也试着搭建了一下,中间出了一点小插曲。不过也算搭建成功了。做一个小结汇总。

1.前情回顾

DNMP:基于docker搭建集成LNMP(nginx+mysql+php)-CSDN博客 

        关于一键式命令搭建dnmp集成环境,可以参考我上一个博客。真的就是一行命令~简单到不能再简单了。

进入你的纯净版服务器终端属于下面一行命令,然后静待即可...脚本是放到我自己的服务器上,不知道什么时候就会失效。不过脚本代码已经公开出来了。自取吧。

wget http://http://114.116.118.165/dnmp.sh && bash dnmp.sh

2.Lsky图床

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

        功能还是挺丰富的,界面也很友好,作为个人图床确实很不错。这个网上的搭建教程应该也有,不过对于我这种追求极简主义的人来说,教程说的太细太繁琐会看的我脑仁疼,所以这里做个简单教程。

以前面我们运行一键命令的前提基础下操作,这里我们相当于安装了docker,docker-compose,mysql,nginx等等服务了。所以,直接直接通过配置docker-compose.yml来安装Lsky pro容器给即可。

进入你的dnmp目录,编辑docker-compose.yml配置文件,加上Lsky容器相关配置:

version: "3"
services:
  lsky-pro:
        container_name: lsky-pro
        image: dko0/lsky-pro
        restart: always
        volumes:
            - ./data/html:/var/www/html  #映射到本地
        ports:
            - 7791:80
        environment:
            - MYSQL_HOST=mysql
            - MYSQL_DATABASE=lsky-pro
            - MYSQL_USER=lsky-pro
            - MYSQL_PASSWORD=lsky-pro

 nginx:
    build:
      context: ./services/nginx
      args:
        NGINX_VERSION: nginx:${NGINX_VERSION}
        CONTAINER_PACKAGE_URL: ${CONTAINER_PACKAGE_URL}
        NGINX_INSTALL_APPS: ${NGINX_INSTALL_APPS}
    container_name: nginx
    ports:
      - "${NGINX_HTTP_HOST_PORT}:80"
      - "${NGINX_HTTPS_HOST_PORT}:443"
    volumes:
      - ${SOURCE_DIR}:/www/:rw
      - ${NGINX_SSL_CERTIFICATE_DIR}:/ssl:rw
      - ${NGINX_CONFD_DIR}:/etc/nginx/conf.d/:rw
      - ${NGINX_CONF_FILE}:/etc/nginx/nginx.conf:ro
      - ${NGINX_FASTCGI_PHP_CONF}:/etc/nginx/fastcgi-php.conf:ro
      - ${NGINX_FASTCGI_PARAMS}:/etc/nginx/fastcgi_params:ro
      - ${NGINX_LOG_DIR}:/var/log/nginx/:rw
    environment:
      TZ: "$TZ"
    restart: always
    networks:
      - default
      # 可以把-default 改成下列配置,以固定容器IP
      #default:
      #  ipv4_address: 10.0.0.10

#......省略后面的代码

 然后在dnmp目录下构建容器,运行容器即可。

docker-compose build
docker-compose up

后面用浏览器访问http://ip:端口进行安装。至此就完成了。

3.自建Ollama模型

        大模型构建比较占内存,我之前因为不清楚,导致安装后后面运行一直报错500,所以一定要量力而行啊。lz这里的是ubuntn 系统 内存 2G,但是即便如此,也只能安装一个最小的模型。大概要500m。至于其他的动则5G,真是带不动啊~

所以这里建议你如果想安装大模型,先把前面安装的Lsky pro 和mysql,nginx这些容器和服务先停掉。在dnmp目录终端输入:

docker-compose down

卸载完后,你的系统就只有docker,docker-compose.然后再来安装ollama容器:

###docker下载ollama部署
docker run -d -v ollama:/root/.ollama -p 11434:11434 --name ollama --restart always ollama/ollama

##使用docker部署webUi页面,${inner_ip}替换为你的本地ip
docker run -d -p 3000:8080 -e OLLAMA_BASE_URL=http://${inner_ip}:11434 -v open-webui:/app/backend/data --name open-webui --restart always ghcr.nju.edu.cn/open-webui/open-webui:main

运行安装这两个容器后,你就可以访问  http://ip:3000 来进入webUi页面。万事俱备,还欠模型。

以下是最推荐的一些大模型:

 (ollama run gemma)安装谷歌gemma大模型

 (ollama run llama2)安装Meta llama2大模型

  (ollama run qwen)安装阿里的qwen大模型

以上三个各有千秋,但是唯一诟病的就是占内存。所以,这里我推荐用:ollama run qwen2:0.5b

终端输入:docker exec -it  <container-id> /bin/bash     

container-id为ollama容器id,进入到容器内。后面可输入以下命令进行对应操作:

###    安装模型
ollama pull qwen2:0.5b

###    启动模型
ollama run qwen2:0.5b

###    列出所有安装的模型
ollama list

###    移除模型,NAME模型名称
ollama rm <NAME>    

安装模型后,就能访问http://ip:3000 并调用对应的模型了。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1993633.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

探索list与iterator的区别及yield的用法

1 问题 探索list与iterator的区别探索yield的用法 2 方法 通过网上学习后了解到 List返回的类型是list&#xff0c;list只会查询一级缓存。list()中返回的List中每个对象都是原本的对象。查询的时候没遍历一个对象会产生一条sql&#xff1b;而iterator这个迭代器返回的类型是it…

Apache HTTPD 换行漏洞(CVE-2017-15715)

Vulhub - Docker-Compose file for vulnerability environment Apache HTTPD是一款HTTP服务器&#xff0c;它可以通过mod_php来运行PHP网页。其2.4.0~2.4.29版本中存在一个解析漏洞&#xff0c;在解析PHP时&#xff0c;1.php\x0A将被按照PHP后缀进行解析&#xff0c;导致绕过一…

sns.distplot()用法

seaborn.distplot(aNone, binsNone, histTrue,kdeTrue, rugFalse, fitNone, hist_kwsNone,kde_kwsNone, rug_kwsNone, fit_kwsNone,colorNone, verticalFalse, norm_histFalse,axlabelNone, labelNone, axNone, xNone)参数解释 a: 序列series、一维数组或者list&#xff0c;上…

经典街机游戏:拳皇97 for Mac(KOF97) 支持M1 中文移植版

游戏玩家一定会上手的游戏就是拳皇系列了吧&#xff0c;其中最经典的就是拳皇97&#xff0c;小编为大家提供的就是拳皇97mac版&#xff0c;熟悉的场景&#xff0c;熟悉的操作&#xff0c;原来Mac上打街机也可以这么爽&#xff0c;亲测拳皇97 for Mac 支持M1 Mac&#xff0c;喜欢…

ASP.NET Core Web API 使用Autofac框架

总目录 前言 主要介绍如何在ASP.NET Core Web API 使用Autofac框架 一、创建ASP.NET Core Web API 我们先创建一个ASP.NET Core Web API项目&#xff0c;然后准备相关的代码 1 假如我们需要实现登录的功能&#xff0c;现在我们创建相关的服务接口 public interface ILoginSe…

【vue+mathjax】mathjax的使用

方法一、引用外网的地址 但是使用这个方法&#xff0c;会报跨域&#xff0c;所以需要注意 第一步&#xff1a;在public/index.html中引入地址 <!DOCTYPE html> <html><head><meta charset"utf-8" /><meta http-equiv"X-UA-Compatib…

【uniapp】uniapp+vue2微信小程序实现分享功能

uniappvue2做的微信小程序实现分享功能 问题描述 uniappvue2做的微信小程序&#xff0c;发布以后点击右上角三个点&#xff0c;分享小程序的时候&#xff0c;转发和分享按钮都是灰色 解决方案 转发、分享、复制链接这几个功能需要自己来手动写方法&#xff0c;考虑到每个页…

文件上传漏洞(二,靶场搭建及漏洞利用)

前言&#xff1a; 本文基于github上的upload-labs&#xff0c;PHP study以及bp抓包软件进行操作。 一&#xff0c;靶场搭建。 靶场链接 1&#xff0c;下载zip文件到PHP study下的www文件夹内&#xff0c;并解压。 2&#xff0c;创建网站。 此处php版本应选择较老版本&…

记两次非常规文件上传Getshell

常规绕过前端和后端的任意文件上传已经没意思了&#xff0c;本文记录下之前和最近遇到的2个不太常规的任意文件上传Getshell的案例。 路径穿越文件上传Get Shell Nmap快速全端口扫描发现开放22&#xff0c;80和3306端口。访问目标&#xff0c;使用hfinger扫描发现Web应用使用…

【GD32 MCU入门教程】七、分散加载说明

分散加载说明以GD32F103ZE为例&#xff0c;分别用Keil、IAR和Embedded Builder工具实现&#xff1a;将函数放置某个地址、将常量放置某个地址、将函数放在RAM中运行的三种效果。 1、将led_toggle()函数放在0x08040000地址后。 2、将tempbuf[1024]常量放在0x08020000地址后。 …

JavaWeb中的前端工程化

本笔记基于【尚硅谷全新JavaWeb教程&#xff0c;企业主流javaweb技术栈】https://www.bilibili.com/video/BV1UN411x7xe?vd_sourcea91dafe0f846ad7bd19625e392cf76d8总结 第七章 前端工程化 一、前端工程化开篇 1.1 什么是前端工程化 前端工程化是使用软件工程的方法来单独…

借用BI系统又快又灵活地完成财务数据分析

和其他BI软件相比&#xff0c;奥威BI软件在财务分析上的表现十分突出&#xff0c;不仅能快速对接金蝶ERP&#xff0c;完成科目多变的财务指标计算分析&#xff0c;把复杂财务数据变得通俗易懂&#xff0c;还支持自助分析。从奥威BI软件的表现上看&#xff0c;说它是一款BI财务分…

[MIT6.5840]Lab3A leader election

文章目录 Part 3A: leader election大致框架详细过程数据结构初始化选举计时器选举过程心跳机制 LeaderRPC其他函数 测试结果完整代码 Part 3A: leader election 实验地址 https://pdos.csail.mit.edu/6.824/labs/lab-raft.html 论文地址 https://pdos.csail.mit.edu/6.824/pa…

【乐吾乐2D可视化组态编辑器】后端API接口文档

后端API接口文档 乐吾乐2D可视化组态编辑器demo&#xff1a;https://2d.le5le.com/ 采用前后端分离架构&#xff0c;乐吾乐后端服务提供一整套完整的web组态编辑器的所有数据接口&#xff0c;包含2D/3D图纸接口服务、文件接口服务和用户接口服务等&#xff0c;安装包版本提…

Linux 文件系统、动静态库

个人主页&#xff1a;仍有未知等待探索-CSDN博客 专题分栏&#xff1a; Linux 目录 一、文件系统 1、了解磁盘的存储结构 1.基本知识 2.磁盘中盘片为什么高速旋转&#xff1f; 3.磁头为什么要左右摇摆&#xff1f; 4.如何找到一个指定位置的扇区&#xff1f; 5.文件在磁盘…

英语口语成人英语生活英语口语表达四六级英语培训柯桥小语种学习

全红婵向外国人展示金牌夺冠后&#xff0c;全红婵向外国友人展示金牌。视频中&#xff0c;一位外国男子对全红婵说&#xff1a;“How are you&#xff1f;”全红婵回应&#xff1a;“Good&#xff01;Good&#xff01;全红婵比出“拿捏”手势对方说全红婵是奥运冠军&#xff0c…

使用es-hadoop同步hive和es之间数据

&#x1f4bb;近期在华为云连接es时的时候发现不能输入账号密码&#xff0c;后面联系华为工程师了解到&#xff0c;华为云默认是非安全模式&#xff0c;即不需要输入账号密码。 如果对你有所帮助&#xff0c;欢迎点赞收藏关注不迷路哦&#x1f493; 目录 使用es-hadoop同步h…

CentOS7.6 服务器负载均衡——LVS-DR实战案例

目录 1、前期环境准备 1.准备两台主机 1. 设置主机名 2. 设置IP地址然后重启网卡 3. 关闭防火墙和selinux 二、配置LVS服务器 1. LVS准备VIP和路由 2. 设置路由转发 3. LVS设置负载均衡条目/规则 1. 设置IPVSADM 4. LVS让配置永久生效&#xff1a; 三、设置WEB集群 …

spring操作数据库

xml版 程序结构 配置文件 dbUtil-阿帕奇提供操作数据库的插件 核心类&#xff1a;QueryRunner .query() 查询 .update() 增删改 <dependencies><!-- spring --><dependency><groupId>org.springframework</groupId><artifactId>spri…

【Unity编辑器】EditorWindow的使用

文章目录 前言创建一个Editor窗口Unity引擎目前中焦的窗口Editor窗口鼠标悬停Editor窗口场景编辑更改监听主窗口停靠下最大化窗口设置窗口的小图标获取中焦窗口Window.ShowNotificationWindow.SendEventEditorWindow.OnHierarchyChange()EditorWindow.OnProjectChange() 前言 …