LinuxServer.io 团队为您带来另一个容器版本,其特点包括:
您可以通过以下渠道找到我们:
https://github.com/Requarks/wiki 一个基于 NodeJS 构建的现代、轻量且功能强大的维基应用。
我们利用 docker manifest 实现多平台支持。更多信息可从 docker https://distribution.github.io/distribution/spec/manifest-v2-2/#manifest-list 和我们的公告 此处 获取。
只需拉取 lscr.io/linuxserver/wikijs:latest 即可获取适合您架构的正确镜像,您也可以通过标签拉取特定架构的镜像。
此镜像支持的架构如下:
| 架构 | 可用 | 标签 |
|---|---|---|
| x86-64 | ✅ | amd64- |
| arm64 | ✅ | arm64v8- |
请注意,数据库配置环境变量仅在首次运行时生效,之后您需要直接编辑 /config/config.yml 来修改设置。
更多信息请参见 官方文档。
此镜像可在只读容器文件系统下运行。详情请 阅读文档。
此镜像可使用非 root 用户运行。详情请 阅读文档。
为帮助您快速从此镜像创建容器,您可以使用 docker-compose 或 docker cli。
[!NOTE] 除非参数标记为“可选”,否则均为必填项,必须提供值。
---
services:
wikijs:
image: lscr.io/linuxserver/wikijs:latest
container_name: wikijs
environment:
- PUID=1000
- PGID=1000
- TZ=Etc/UTC
- DB_TYPE=sqlite #可选
- DB_HOST= #可选
- DB_PORT= #可选
- DB_NAME= #可选
- DB_USER= #可选
- DB_PASS= #可选
volumes:
- /path/to/wikijs/config:/config
- /path/to/data:/data
ports:
- 3000:3000
restart: unless-stopped
docker run -d \
--name=wikijs \
-e PUID=1000 \
-e PGID=1000 \
-e TZ=Etc/UTC \
-e DB_TYPE=sqlite `#optional` \
-e DB_HOST= `#optional` \
-e DB_PORT= `#optional` \
-e DB_NAME= `#optional` \
-e DB_USER= `#optional` \
-e DB_PASS= `#optional` \
-p 3000:3000 \
-v /path/to/wikijs/config:/config \
-v /path/to/data:/data \
--restart unless-stopped \
lscr.io/linuxserver/wikijs:latest
容器通过运行时传递的参数进行配置(如上所示)。这些参数用冒号分隔,分别表示 主机:容器。例如,-p 8080:80 会将容器内的端口 80 暴露出来,可通过主机 IP 的 8080 端口访问。
| 参数 | 功能 |
|---|---|
-p 3000:3000 | Wiki.js Web 界面端口。 |
-e PUID=1000 | 用户 ID - 详见下方说明 |
-e PGID=1000 | 组 ID - 详见下方说明 |
-e TZ=Etc/UTC | 指定使用的时区,详见此 列表。 |
-e DB_TYPE=sqlite | 设置为 sqlite(默认)或 postgres,取决于您希望使用的数据库引擎 |
-e DB_HOST= | 数据库主机名(仅 postgres) |
-e DB_PORT= | 数据库端口(仅 postgres) |
-e DB_NAME= | 数据库名称(仅 postgres) |
-e DB_USER= | 数据库用户名(仅 postgres) |
-e DB_PASS= | 数据库密码(仅 postgres) |
-v /config | 持久化配置文件 |
-v /data | Wiki.js 数据存储位置。 |
--read-only=true | 以只读文件系统运行容器。请 阅读文档。 |
--user=1000:1000 | 以非 root 用户运行容器。请 阅读文档。 |
您可以通过使用特殊前缀 FILE__ 从文件设置任何环境变量。
例如:
-e FILE__MYVAR=/run/secrets/mysecretvariable
这会根据 /run/secrets/mysecretvariable 文件的内容设置环境变量 MYVAR。
对于我们所有的镜像,您可以使用可选的 -e UMASK=022 设置来覆盖容器内服务的默认 umask 设置。
请记住,umask 不是 chmod,它基于其值减去权限,而不是添加权限。在请求支持前,请先 阅读此处 了解相关知识。
使用卷(-v 标志)时,主机 OS 和容器之间可能会出现权限问题。我们通过允许您指定用户 PUID 和组 PGID 来避免此问题。
确保主机上的任何卷目录都归您指定的同一用户所有,这样任何权限问题都会迎刃而解。
在此示例中 PUID=1000 和 PGID=1000,要查找您的 PUID 和 PGID,请使用 id your_user 命令,如下所示:
id your_user
示例输出:
uid=1000(your_user) gid=1000(your_user) groups=1000(your_user)
我们发布了各种 https://github.com/linuxserver/docker-mods%EF%BC%8C%E4%BB%A5%E5%9C%A8%E5%AE%B9%E5%99%A8%E5%86%85%E5%90%AF%E7%94%A8%E9%A2%9D%E5%A4%96%E5%8A%9F%E8%83%BD%E3%80%82%E6%AD%A4%E9%95%9C%E5%83%8F%E5%8F%AF%E7%94%A8%E7%9A%84 Mods 列表(如有)以及可应用于我们任何镜像的通用 Mods,可通过上方的动态徽章访问。
docker exec -it wikijs /bin/bash
docker logs -f wikijs
docker inspect -f '{{ index .Config.Labels "build_version" }}' wikijs
docker inspect -f '{{ index .Config.Labels "build_version" }}' lscr.io/linuxserver/wikijs:latest
我们的大多数镜像是静态的、版本化的,需要更新镜像并重新创建容器才能更新内部应用。除某些例外情况(在相关 readme.md 中注明),我们不建议或支持在容器内更新应用。请参考上方的 应用设置 部分,了解是否推荐对此镜像进行应用更新。
以下是更新容器的说明:
docker-compose pull
docker-compose pull wikijs
docker-compose up -d
docker-compose up -d wikijs
docker image prune
docker pull lscr.io/linuxserver/wikijs:latest
docker stop wikijs
docker rm wikijs
/config 文件夹和设置将被保留)docker image prune
[!TIP] 我们推荐使用 Diun 接收更新通知。不推荐或支持使用其他工具自动无人值守更新容器。
如果您想对这些镜像进行本地修改以用于开发目的或自定义逻辑:
git clone https://github.com/linuxserver/docker-wikijs.git
cd docker-wikijs
docker build \
--no-cache \
--pull \
-t lscr.io/linuxserver/wikijs:latest .
ARM 变体可以在 x86_64 硬件上构建,反之亦然,使用 lscr.io/linuxserver/qemu-static:
docker run --rm --privileged lscr.io/linuxserver/qemu-static --reset
注册后,您可以使用 -f Dockerfile.aarch64 指定要使用的 dockerfile。
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录认证访问私有仓库
无需登录使用专属域名
Kubernetes 集群配置 Containerd
K3s 轻量级 Kubernetes 镜像加速
VS Code Dev Containers 配置
Podman 容器引擎配置
HPC 科学计算容器配置
ghcr、Quay、nvcr 等镜像仓库
Harbor Proxy Repository 对接专属域名
Portainer Registries 加速拉取
Nexus3 Docker Proxy 内网缓存
需要其他帮助?请查看我们的 常见问题Docker 镜像访问常见问题解答 或 提交工单
docker search 限制
站内搜不到镜像
离线 save/load
插件要用 plugin install
WSL 拉取慢
安全与 digest
新手拉取配置
镜像合规机制
不支持 push
manifest unknown
no matching manifest(架构)
invalid tar header(解压)
TLS 证书失败
DNS 超时
域名连通性排查
410 Gone 排查
402 与流量用尽
401 认证失败
429 限流
D-Bus 凭证提示
413 与超大单层
来自真实用户的反馈,见证轩辕镜像的优质服务