DokuWiki 是一个简单易用、用途多样并且不依赖数据库的开源维基软件。它因简洁易读的语法受到用户的喜爱。而容易维护、备份方便和易于整合则使它成为管理员的最爱。

我的环境:

  • ubuntu 22.04
  • nginx 1.18
  • php8.1
  • mysql8

安装步骤

  1. DokuWiki 官网下载页 下载最新稳定版本;
  2. 解压到 /var/www/dokuwiki,作为项目根目录;
  3. 将根目录下的 dataconf 设置为可写;
  4. 配置 nginx,新增配置文件 /etc/nginx/sites-enabled/dokuwiki:

- 阅读剩余部分 -

修改 Nginx 配置时,报错:

$ nginx -t
nginx: [warn] conflicting server name "crowall.com" on 0.0.0.0:80, ignored
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

出现 Nginx 报错 "conflicting server name" 通常意味着在 Nginx 配置中有两个或更多的 server 块使用了相同的 server_name 指令。

我的服务器是 ubuntu 22.04,安装默认的 nginx 1.18.0,所有的 server 都在 /etc/nginx/sites-enabled 目录下。

所以问题就变成了:找出 /etc/nginx/sites-enabled 目录里所有配置了这个域名的文件。

如果只有两三个 server 配置文件,一个个看也没问题,不过我的 server 比较多,所以就需要使用 grep 命令。

grep -r "crowall.com" /etc/nginx/sites-enabled/

-r 表示如果下面有子目录也会扫描。

执行完就可以看到冲突的两个配置文件了,非常方便。

国外有一家公司近期推出了一款  Apple Watch 的外设 tinyPod,看起来是一个 Apple Watch 的壳子,不过里面还是有个蛮有意思的设计——一个跟 iPod 一样的转盘。

看一下官网的演示视频,看起来确实不错。

从视频演示来看,还是蛮顺滑的。tinyPod 官网上解释了转盘的工作原理,大意是内部采用机械方式,把转盘直接连接到 Apple Watch 的表冠上。

- 阅读剩余部分 -

上个月听说 dockerhub 解封了,然而今天实测只是墙抽风了。

然后国内的镜像大都也不能用了,一些私人的镜像站感觉也不太靠谱,只能挂代理了。

docker pull 代理配置

需要注意的是,很多教程都说设置 HTTP_PROXY 和 HTTPS_PROXY 两个环境变量,实测根本没用。

还有说修改 ~/.docker/config.json 文件的,也是不靠谱,这个是指配置运行容器的环境,跟 pull image 没有半毛钱关系。

想让 docker pull 走代理,得修改 /etc/docker/daemon.json 这个配置文件。

- 阅读剩余部分 -

最近一个项目在用 tabler,tabler 是一款开源免费的并且看起来蛮正经的 UI 库,适用于以后端为主的 web 开发者。

最新版 tabler-v1.0.0-beta20 表单里的选择组件默认使用的是 tom-select,之前用的是 Selectize,但由于该项目停止开发,后来才换了 tom-select。

以上信息来源是官方的 issue

由于官方没有提供对 select2 的支持,所以 select2 的样式在 tabler 里用不了,并且即使是引入了 bootstrap5 的样式,仍然不 work。

于是我就写了一段 css,解决了 select2 在 tabler 下适配的问题。

创建 select2-tabler-theme.css 文件:

- 阅读剩余部分 -