Adquira o hábito de escrever juntos! Este é o 5º dia da minha participação no "Nuggets Daily New Plan · April Update Challenge", clique para ver os detalhes do evento .
Não sei se há alguém como eu que pensa que as coisas autoconstruídas são “terras privadas” e espaços privados na Internet, e há uma espécie de prazer em ter um terço de um acre de sua própria terra.
Por exemplo, um blog autoconstruído pode escrever os ensaios que você quiser, e você pode se divertir sem agradar os leitores; outro exemplo é um wiki autoconstruído, que pode registrar diretamente os pontos de conhecimento que você não conhece, sem se preocupar sobre ser ridicularizado como de baixo nível. Além da co-construção, o Wiki é diferente da natureza casual do blog, o conteúdo gravado dá mais atenção aos pontos de conhecimento e classificação, que podem ser usados para construir sua própria rede de conhecimento.
Se um blog é comparado a um "diário", então um wiki é um "caderno". Ele é usado para registrar pontos de conhecimento, o que é conveniente para visualização e atualização. Possui um diretório claro e um ponto de conhecimento também pode ser relacionado a outros pontos de conhecimento, expandindo-se gradualmente para "enciclopédia". Livro Inteiro".
1. Introdução
O conhecimento está na acumulação, e não devemos esquecer de pentear.
Hoje, o projeto de código aberto que vamos apresentar é o wiki.js, que é usado especialmente para construir uma plataforma wiki e ajudá-lo a classificar pontos de conhecimento.
Endereço: github.com/requarks/wi…
É um projeto de código aberto wiki leve e poderoso, com comentários, editor Markdown, upload de imagens, tags, pesquisa global, edição colaborativa, histórico de edição, gerenciamento de usuários, Google Analytics e outras funções, e suporta um alto grau de personalização.
A pilha de tecnologia usada também é diferente do antigo sistema wiki, que usa tecnologias como Node.js, PostgreSQL, Vue.js e Docker. A implantação de um clique baseada no Docker é bastante parecida com o WordPress, não seja muito legal!
O ponto chave é suportar o chinês, e a interface é simples e bonita, o que é suficiente para se destacar de muitos projetos semelhantes.
Você sente coceira quando vê isso? Venha comigo abaixo para fazê-lo funcionar!
2. Instalação
Um dos fatores necessários para o sucesso de um projeto de código aberto é ter uma documentação detalhada e de fácil compreensão, e as instruções de instalação são prioridade máxima.
Wiki.js 官方文档提供了多种部署方法,包括:Linux、macOS、Windows、Docker、k8s 等,涵盖了几乎所有可能性,十分全面。
下面我就介绍其中最快捷和通用的一种,即基于 Docker 的 Docker Compose 部署。
Tips:如果你不懂 Docker 建议跟着这里逐步执行
下面我将主要介绍 Linux 下的安装步骤,其它系统有桌面版不再赘述。
如果你机器上有 Docker 仅需两步即可完成安装。
第一步,安装 docker-compose:
1、下载
curl -L https://get.daocloud.io/docker/compose/releases/download/v2.4.1/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
复制代码
2、加执行权限
$ sudo chmod +x /usr/local/bin/docker-compose
复制代码
3、创建快捷方式
$ sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose
复制代码
至此,你就可以在任何地方使用 docker-compose
命令了。
第二步,运行 docker-compose:
1、创建配置文件 docker-compose.yml
内容如下:
整个项目分为 数据库 和 项目代码 两部分,与之对应的是 pg 容器
和 wiki 容器
。
version: "3"
services:
db:
container_name: pg
image: postgres:11-alpine
environment:
POSTGRES_DB: wiki
POSTGRES_PASSWORD: wikijsrocks
POSTGRES_USER: wikijs
logging:
driver: "none"
restart: unless-stopped
volumes:
- db-data:/var/lib/postgresql/data
wiki:
container_name: wiki
image: ghcr.io/requarks/wiki:2
depends_on:
- db
environment:
DB_TYPE: postgres
DB_HOST: db
DB_PORT: 5432
DB_USER: wikijs
DB_PASS: wikijsrocks
DB_NAME: wiki
restart: unless-stopped
ports:
- "8001:3000"
volumes:
db-data:
复制代码
2、在配置所在的目录下,执行命令:
- 运行:
docker-compose up -d
- 查看容器:
docker ps
- 停止:
docker-compose down
最后,如果你想开启 HTTPS 的话,我这里推荐用 Caddy 服务器。没用过没关系,我们写过介绍使用 Caddy 的文章特别简单。
Caddyfile 的配置内容如下:
8001 端口对应的是上面 wiki 容器的 ports 端口映射
域名 {
reverse_proxy 127.0.0.1:8001
}
复制代码
执行 caddy start
启动 Caddy 服务器,浏览器中访问对应的域名,网站初始化的引导界面,就会出现在你的面前了。
Até agora, o acima é todo o processo de instalação do wiki.js, você está executando?
Terceiro, as falhas não escondem a beleza
O Wiki.js não é perfeito e, embora eu esteja apenas começando, encontrei algumas moscas na pomada:
-
Carregamento lento na primeira visita
-
Embora o wiki.js seja atualizado ativamente e as confirmações sejam frequentes, atualmente ele não suporta temas personalizados
-
Não é amigável para pesquisa em chinês, não suporta pesquisa em chinês por padrão, você precisa usar ES, mas não é mais leve, ou use o plugin pg para fazer com que o pg suporte a segmentação de palavras chinesas
-
A cobertura da tradução chinesa não é tão 100% quanto mostrada no site oficial, e ainda há lugares não traduzidos no histórico de gerenciamento.
Mas não esconde as falhas, faz basicamente tudo o que eu quero para um wiki. E é melhor do que implementar um sistema wiki do zero. Mais tarde, usarei o wiki.js para fazer um novo site:
Quando eu superar os problemas acima, contribuirei com relações públicas para isso e espero um wiki.js mais poderoso!
Quarto, o último
O conhecimento precisa ser integrado.
O conhecimento é inerentemente confuso, e é necessário estabelecer conexões e tornar-se ordenado por meio da experiência prática, para ser útil e liberar uma criatividade poderosa.
Finalmente, use o wiki.js para construir sua rede de conhecimento, separar o conhecimento existente e introduzir constantemente novos, para que possa ajudá-lo em seu caminho para buscar maiores avanços!
Mais artigos explicando projetos de código aberto podem ser encontrados aqui: github.com/HelloGitHub…