注意: 升级雷池时服务会重启,流量会中断一小段时间,根据业务情况选择合适的时间来执行升级操作。
执行以下命令进行升级,升级不会清除历史数据,LTS 升级到开发版时需要提前删除 .env
里的 RELEASE=-lts
行
bash -c "$(curl -fsSLk https://waf-ce.chaitin.cn/release/latest/upgrade.sh)"
如果想要升级到 LTS 版本则使用下面的命令升级
RELEASE=lts bash -c "$(curl -fsSLk https://waf-ce.chaitin.cn/release/latest/upgrade.sh)"
LTS(Long Term Support,长期支持版本)是软件开发中的一个概念,表示该版本将获得较长时间的支持和更新,通常包含稳定性、性能改进和安全修复,但不包含频繁的新特性更新。LTS 版本适合企业和生产环境使用,因为它提供了更高的稳定性和可靠性。
[可选] 执行以下命令删除旧版本未使用的镜像,释放磁盘空间。
docker image prune --filter="label=maintainer=SafeLine-CE"
较老版本的雷池安装路径在
/data/safeline-ce
,安装之后可能会发现需要重新绑定 OTP、配置丢失等情况,
可以修改 .env 的SAFELINE_DIR
变量,指向/data/safeline-ce
适用于 docker hub 拉取镜像失败的场景,手动更新镜像。
# cd /path/to/safeline
mv compose.yaml compose.yaml.old
wget "https://waf-ce.chaitin.cn/release/latest/compose.yaml" --no-check-certificate -O compose.yaml
sed -i "s/IMAGE_TAG=.*/IMAGE_TAG=latest/g" ".env"
grep "SAFELINE_DIR" ".env" > /dev/null || echo "SAFELINE_DIR=$(pwd)" >> ".env"
grep "IMAGE_TAG" ".env" > /dev/null || echo "IMAGE_TAG=latest" >> ".env"
grep "MGT_PORT" ".env" > /dev/null || echo "MGT_PORT=9443" >> ".env"
grep "POSTGRES_PASSWORD" ".env" > /dev/null || echo "POSTGRES_PASSWORD=$(LC_ALL=C tr -dc A-Za-z0-9 </dev/urandom | head -c 32)" >> ".env"
grep "SUBNET_PREFIX" ".env" > /dev/null || echo "SUBNET_PREFIX=172.22.222" >> ".env"
grep "IMAGE_PREFIX" ".env" >/dev/null || echo "IMAGE_PREFIX=chaitin" >>".env"
grep "ARCH_SUFFIX" ".env" >/dev/null || echo "ARCH_SUFFIX=" >>".env"
grep "RELEASE" ".env" >/dev/null || echo "RELEASE=" >>".env"
下载 雷池社区版镜像包 并传输到需要安装雷池的服务器上,执行以下命令加载镜像
docker load -i image.tar.gz
执行以下命令替换 Docker 容器
docker compose down --remove-orphans
docker compose up -d