当前位置: 首页 > news >正文

MaxKB v2 二次开发后构建自定义镜像使用Docker运行

一、安装docker

1. 删除之前 Docker 官方源(如果已经添加)

sudo rm -f /etc/apt/sources.list.d/docker.list

2. 添加 Docker GPG 密钥(国内镜像也使用官方密钥)

sudo install -m 0755 -d /etc/apt/keyrings

下载:

sudo curl -fsSL https://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg \ -o /etc/apt/keyrings/docker.asc

权限:

sudo chmod a+r /etc/apt/keyrings/docker.asc

3. 添加阿里云 Docker 软件源

Ubuntu 22.04 对应代号:

jammy

执行:

echo \ "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] \ https://mirrors.aliyun.com/docker-ce/linux/ubuntu \ jammy stable" | \ sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

4. 更新 apt

sudo apt update

正常应该看到:

类似:

Hit: https://mirrors.aliyun.com/docker-ce/linux/ubuntu jammy InRelease

5. 安装 Docker

sudo apt install -y \ docker-ce \ docker-ce-cli \ containerd.io \ docker-buildx-plugin \ docker-compose-plugin

6. 启动 Docker

sudo systemctl enable docker sudo systemctl start docker

查看:

systemctl status docker

应该:

Active: active (running)

二、构建镜像并运行

1. 进入项目目录

cd /root/MaxKB-2

2. 修改 Node 镜像源

修改installer/Dockerfile文件的第一行,将默认的 Node 镜像源替换为国内镜像源。

原内容:

FROM node:24-alpine AS web-build

修改为:

FROM docker.m.daocloud.io/library/node:24-alpine

3. 构建 Docker 镜像

docker build -f installer/Dockerfile -t maxkb:custom .

4. 运行容器

docker run -d \ --name maxkb \ --restart unless-stopped \ -p 8081:8080 \ -v maxkb-data:/opt/maxkb \ -e MAXKB_HTTP_LISTEN_PORT=8080 \ maxkb:custom

5. 测试服务

curl -I http://127.0.0.1:8081/admin/

如果返回200 OK状态码,说明服务已启动且外网可以访问。请注意检查并关闭防火墙相关设置。

6. 查看容器日志

docker logs -f maxkb
http://www.jsqmd.com/news/1159823/

相关文章:

  • 2026年餐饮连锁品牌会员管理小程序部署方案与会员体系设计白皮书1
  • 2026沈阳黄金回收行业内幕拆解:门店报价套路+7月卖金参考 - 逸程奢侈品回收中心
  • PN结伏安特性曲线实测:Si/Ge二极管死区电压与温度系数对比分析
  • Riddle项目:基于视觉LLM的电子墨水AI日记技术解析
  • 北京名表回收市场升温!劳力士入门款、绝版停产表双双溢价走高 - 合扬
  • 百色黄金回收红黑榜❌✅ 拒绝被坑!这6家诚信店铺闭眼入 - 清奢黄金上门回收
  • 湘西全境上门回收!闲置金银秒变现,这6家宝藏黄金回收店铺太香了! - 清奢黄金上门回收
  • Spotify Wrapped带火年终回顾,Anthropic为Claude机器人推出‘回顾’功能
  • 大麦网智能抢票脚本:3分钟快速部署,告别黄牛票高价困扰
  • 2026杭州钻石回收行情深度解析|门店实力层级测评与科学变现准则 - 奢侈品回收机构参考
  • TPS61170升压转换器与STM32L4的电源管理设计
  • 2026值得推荐的液压转盘品牌 综合实力排名TOP4榜单
  • 通过MiniMax Hub集成Claude Code:国内开发者的AI编程实战指南
  • JUnit 4 与 Mockito 3.12 实战:5个典型场景下的Mock策略与代码覆盖率提升
  • Autoticket大麦网自动抢票工具:告别抢票焦虑的Python自动化神器
  • 加密压缩包密码找回实战:从哈希提取到Hashcat暴力破解
  • 金华清奢黄金回收6家店,金华火腿里的黄金腌制术 - 新芸鼎珠宝首饰
  • Bulk RNA-seq 上游分析工具对比:STAR vs Hisat2 vs Salmon 3 方案效率与精度评测
  • 2026福州台江大牌包包回收门店行情实测:本地线下店铺真实对比汇总 - 融媒生活
  • Prism 依赖注入学习笔记:`Container.ResolveMainWindow()` 深入理解
  • AI工程必备的11个Docker镜像实战指南
  • 亲身到店探访海口亨得利官方名表服务中心|地址与售后服务电话(2026年7月更新) - 亨得利官方
  • 3步搞定演唱会抢票:Python自动化脚本终极指南
  • 百度网盘下载神器:3分钟获取真实高速下载链接的完整指南
  • 亨得利官方名表服务中心|最新热线电话与地址权威信息通告(2026年7月最新) - 亨得利官方博客
  • MyBatis 3.5 插入异常深度解析:SQLIntegrityConstraintViolationException 的 4 种常见成因
  • 闲置黄金变现首选!全城上门回收同步大盘价极速到账 - 奢侈品交易观察员
  • AI科技热点日报 | 2026年07月09日
  • 麒麟系统下 KingbaseES 安装报错排查与解决
  • 3.24web笔记(文本排版、列表……)