MaxKB v2 二次开发后构建自定义镜像使用Docker运行
一、安装docker
1. 删除之前 Docker 官方源(如果已经添加)
sudo rm -f /etc/apt/sources.list.d/docker.list2. 添加 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.asc3. 添加阿里云 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/null4. 更新 apt
sudo apt update正常应该看到:
类似:
Hit: https://mirrors.aliyun.com/docker-ce/linux/ubuntu jammy InRelease5. 安装 Docker
sudo apt install -y \ docker-ce \ docker-ce-cli \ containerd.io \ docker-buildx-plugin \ docker-compose-plugin6. 启动 Docker
sudo systemctl enable docker sudo systemctl start docker查看:
systemctl status docker应该:
Active: active (running)二、构建镜像并运行
1. 进入项目目录
cd /root/MaxKB-22. 修改 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:custom5. 测试服务
curl -I http://127.0.0.1:8081/admin/如果返回200 OK状态码,说明服务已启动且外网可以访问。请注意检查并关闭防火墙相关设置。
6. 查看容器日志
docker logs -f maxkb