跳到主要内容

安装问题

支不支持 MacOS/Windows

不支持,由于雷池所依赖的部分 docker 特性在 MacOS/Windows 上并不生效,所以雷池在 MacOS/Windows 并不能正常工作。

我能把雷池和业务服务部署到同一台机器中吗?

不建议,如放在一起,在流量不变的情况下,机器负载将高于分开部署,增大了资源耗尽的可能性。

docker compose 还是 docker-compose?

docker compose(带空格)是 V2 版本,Go 写的。docker-compose 是 V1 版本,Python 写的,已经不维护了。

我们推荐使用 V2 版本的 docker compose,V1 可能会有兼容性等问题。

docker/compose 中提到:

For a smooth transition from legacy docker-compose 1.xx, please consider installing compose-switch to translate docker-compose ... commands into Compose V2's docker compose .... . Also check V2's --compatibility flag.

其他参考:https://stackoverflow.com/questions/66514436/difference-between-docker-compose-and-docker-compose

镜像下载缓慢甚至连接超时

这个是因为 docker hub 默认使用位于美西节点拉取镜像,可以自行配置国内镜像加速源。

ERROR: Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?

如描述,你需要启动 docker daemon 才能执行相关的命令。尝试 systemctl start docker

docker not found, unable to deploy

如描述,你需要安装 docker。尝试 curl -fLsS https://get.docker.com/ | sh 或者 Install Docker Engine

docker compose v2 not found, unable to deploy

如描述,你需要安装 docker compose v2。尝试 [Install Docker Compose](https://docs.docker.com/compose/install/)

failed to create network safeline-ce

safeline-ce 是雷池部署时候创建的 network,出现类似报错,先重启下 dockerd 之后重试。

safeline-tengine 出现 Address already in use

docker logs -f safeline-tengine 容器日志中看到 Address already in use 信息。

端口冲突,根据报错信息中的端口号,排查是哪个服务占用了,手动处理冲突。

safelint-mgt-api 出现 Operation not permitted

docker logs -f safelint-mgt-api 容器日志中看到 runtime/cgo: pthread_create failed: Operation not permitted 报错,这个错误一般会在 docker 20.10.9 及以下发生。

  • 最推荐的方式是升级 docker 到最新版本尝试解决这个问题。
  • 或您的系统支持配置 seccomp (执行 grep CONFIG_SECCOMP= /boot/config-$(uname -r) 输出 CONFIG_SECCOMP=y 则为支持), 则可以在雷池工作目录下载 seccomp 并且编辑 compose.yaml 文件, 在 management 下加入如下配置项,然后执行 docker compose down && docker compose up -d 来尝试解决这个问题:
security_opt:  
- seccomp=./seccomp.json

safeline-postgres 出现 Operation not permitted

docker logs -f safeline-postgres 容器日志中看到 Operation not permitted 报错。

可能是您的 docker 版本过低,升级 docker 到最新版本尝试一下。

如何自定义 SafeLine 安装路径?

基于最新的 compose.yaml,你可以手动修改 .env 文件的 SAFELINE_DIR 变量。

如何修改 SafeLine 后台管理的默认端口?本机 :9443 已经被别的服务占用了

基于最新的 compose.yaml,你可以手动添加 MGT_PORT 变量到 .env 文件。