这是一个简单的自托管、轻量级单用户PHP博客,可创建类似***的个人动态流。支持向他人开放阅读权限,分享包含图片、代码高亮或链接的富文本内容。
轻量级体现在:
node_modules目录在线演示地址:
[***]
注意:演示环境资源有限,有严格的速率限制且可能随时重置。文件上传功能可能无法正常工作,但足以展示产品基本功能。
!screenshot
!screenshot
!screenshot
容器默认使用SQLite作为数据库,无需初始配置即可运行。如需更好性能,建议使用MySQL。
shdocker run -d -p 80:80 -v $PWD/data:/var/www/html/data m1k1o/blog:latest
支持设置以BLOG_为前缀的大写环境变量(对应config.ini中的配置项):
shdocker run -d \ -p 80:80 \ -e "TZ=Europe/Vienna" \ -e "BLOG_TITLE=博客" \ -e "BLOG_NAME=Max Musermann" \ -e "BLOG_NICK=用户名" \ -e "BLOG_PASS=密码" \ -e "BLOG_LANG=en" \ -v $PWD/data:/var/www/html/data \ m1k1o/blog:latest
ymlversion: "3" services: blog: image: m1k1o/blog:latest restart: unless-stopped environment: TZ: Europe/Vienna BLOG_TITLE: 博客 BLOG_NAME: Max Musermann BLOG_NICK: 用户名 BLOG_PASS: 密码 BLOG_LANG: en ports: - 80:80 volumes: - ./data:/var/www/html/data
需先安装docker-compose。
shwget [***] docker-compose up -d
可通过环境变量自定义配置(未指定则使用默认值):
环境变量可存储在.env文件或直接通过命令传递:
shHTTP_PORT=3001 DATA=/home/user/blog docker-compose up -d
创建数据目录并下载默认配置文件:
shmkdir data && cd data wget [***]
可直接修改此config.ini文件,或通过以BLOG_为前缀的大写环境变量配置(如BLOG_NAME: Max的博客)。
确保./data/目录有正确权限,Apache以www-data用户运行,需对该目录有写入权限(用于图片上传)。
将目录所有者改为www-data用户:
shchown 33:33 ./data/
或将www-data用户添加到目录所属用户组。
设置777权限(不建议,存在安全风险):
shchmod 777 ./data/
注意:777权限会向所有用户开放读写执行权限,可能被***者利用,应避免使用。
若不使用Docker,可手动安装。
注意:若使用Nginx等其他Web服务器,需确保敏感文件不被公开访问。Apache通过.htaccess保护这些文件,其他环境需手动配置:
.ini文件数据库架构文件位于./app/db目录。
在配置文件中添加debug = true可启用调试模式,显示服务器配置详情及缺失的PHP扩展错误。
请勿编辑./config.ini文件。如需修改配置,复制该文件到./data/config.ini后编辑。
原因:配置文件更新时(如新增功能),直接修改原文件可能导致版本冲突;且可能意外将敏感信息提交到Git。/data目录已被Git忽略,确保个人数据和图片不会被提交。
[code]..代码..[/code]标记高亮代码[goal]目标文本[/goal]标记突出目标内容A-Za-z0-9-_,以空格或行尾结束):#歌曲[***][***][***](支持YYYY-MM-DD或YYYY-MM格式)[***]博客采用强制访问控制(MAC),支持3种访问级别:
nick用户可见(需密码登录)可通过docker-compose.yml配置管理员和好友:
ymlversion: "3" services: blog: image: m1k1o/blog:latest restart: unless-stopped environment: TZ: Europe/Vienna BLOG_NICK: 管理员用户名 BLOG_PASS: 管理员密码 BLOG_FRIENDS: | 好友1:密码1 好友2:密码2 ports: - 80:80 volumes: - ./data:/var/www/html/data
或在config.ini中配置:
ini[admin] force_login = true nick = 管理员用户名 pass = 管理员密码 [friends] friends[好友1] = 密码1 friends[好友2] = 密码2
可在配置文件中设置时区,Docker用户可通过TZ环境变量指定(时区列表见这里)。
支持多语言,可通过URL参数切换:[***]。
来自真实用户的反馈,见证轩辕镜像的优质服务
免费版仅支持 Docker Hub 加速,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。
免费版仅支持 docker.io;专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等。
当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。
通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。
先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。
使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录认证访问私有仓库
在 Linux 系统配置镜像加速服务
在 Docker Desktop 配置镜像加速
Docker Compose 项目配置加速
Kubernetes 集群配置 Containerd
在宝塔面板一键配置镜像加速
Synology 群晖 NAS 配置加速
飞牛 fnOS 系统配置镜像加速
极空间 NAS 系统配置加速服务
爱快 iKuai 路由系统配置加速
绿联 NAS 系统配置镜像加速
QNAP 威联通 NAS 配置加速
Podman 容器引擎配置加速
HPC 科学计算容器配置加速
ghcr、Quay、nvcr 等镜像仓库
无需登录使用专属域名加速
需要其他帮助?请查看我们的 常见问题 或 官方QQ群: 13763429