kita / notes

约 1 分钟

脚本一闪就没,Docker 起不来,还有我把容器删了

教程第一步是复制一行命令:

irm https://gitee.com/jun-wan/script/raw/master/astrbot/deploy_astrbot.ps1 | iex

回车。窗口闪一下,回到提示符。没有报错,没有输出,像什么都没发生。我又敲了两遍,还是一样。

后来才想通它在哪儿死的:这个脚本第一步就是调 Docker,而我的 Docker 根本起不来,所以它在第一行就没了,死得悄无声息。

先试试改执行策略,看看是不是被拦了:

Set-ExecutionPolicy RemoteSigned -Force
# Set-ExecutionPolicy : 对注册表项"HKEY_LOCAL_MACHINE\..."的访问被拒绝

不是管理员。两个选择:管理员身份重开,或者只给当前用户放行。我用了后者:

Set-ExecutionPolicy -Scope CurrentUser RemoteSigned

脚本能跑了。但 Docker 还是起不来,报的是:

Docker Desktop failed to start because virtualisation support wasn't detected.

我第一反应是 Docker 装坏了,卸载重装了一遍。没用。折腾了一阵才想起来去任务管理器看——性能 → CPU,那一栏写着虚拟化:已禁用。

重启进 BIOS(我这台按 Del),Advanced → CPU Configuration,Intel Virtualization Technology 改成 Enabled(AMD 主板那个选项叫 SVM Mode)。存盘重启,Docker Desktop 起来了。

这事本身没技术含量,但它卡了我最久。所有教程都默认你 Docker 是好的。


另一个坑是我自己弄的。

跑通一阵之后我执行了一次 docker rm,然后想再启动:

$ docker start astrbot napcat
Error response from daemon: No such container
$ docker ps -a
(空)

那一瞬间我以为配置和聊天记录全没了。实际上容器只是个壳,东西在挂载目录里。项目目录下的 compose 文件还在:

docker-compose up -d

容器回来,./data 里的配置一条没少。

现在想想后怕的是——如果我当时顺手敲的是 docker rm -v,把卷一起清了,那就是真的重来一遍。手滑和灾难之间,就差一个参数。

← 回到全部笔记