长亭雷池WAF(safeline)社区版安装教程
雷池WAF的技术文档,并不包含 Docker 和 Docker Compose V2 安装文档,更新记录一下,共同学习,共同进步
配置需求
- 操作系统:Linux
- 指令架构:x86_64
- 软件依赖:Docker 20.10.6 版本以上
- 软件依赖:Docker Compose 2.0.0 版本以上
- 最小化环境:1 核 CPU / 1 GB 内存 / 10 GB 磁盘
uname -m # 查看指令架构
docker version # 查看 Docker 版本
docker compose version # 查看 Docker Compose 版本
docker-compose version # 同上(兼容老版本 Docker Compose)
cat /proc/cpuinfo # 查看 CPU 信息
cat /proc/meminfo # 查看内存信息
df -h # 查看磁盘信息
以上内容引用自长亭科技-技术文档®
Docker 安装
docker安装,并设置开机自启动
curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun
systemctl start docker
systemctl enable docker
docker --version
Docker Compose V2安装
curl -L https://get.daocloud.io/docker/compose/releases/download/v2.4.1/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose
ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose
docker compose version
部署安装
# 拉取镜像
docker pull chaitin/safeline-tengine:latest
docker pull chaitin/safeline-mgt-api:latest
docker pull chaitin/safeline-mario:latest
docker pull chaitin/safeline-detector:latest
docker pull postgres:15.2
# 打包镜像
docker save -o image.tar chaitin/safeline-tengine:latest chaitin/safeline-mgt-api:latest chaitin/safeline-mario:latest chaitin/safeline-detector:latest postgres:15.2
# 传输到 SafeLine 要部署的目标服务器
# scp image.tar <target-server>:/root/
更换容器源
vi /etc/docker/daemon.json
{
"registry-mirrors":["https://hub-mirror.c.163.com","https://registry.aliyuncs.com","https://registry.docker-cn.com","https://docker.mirrors.ustc.edu.cn"],
"data-root": "/var/lib/docker",
"live-restore": true,
"log-driver": "json-file",
"log-opts": {
"max-file": "3",
"max-size": "10m"
}
}
service docker restart
启动容器
docker load -i image.tar
docker compose up -d
docker update --restart=always 容器ID(或者容器名)
(容器ID或者容器名根据实际情况修改)
雷池升级
# 将下载好的image镜像,上传到云服务器上,我是上传到之前的 /data/ 文件夹下,更新 docker 容器
docker load -i image.tar.gz
# 进入安装目录,即 /data/safeline,更新配置文件
sed -i "s/IMAGE_TAG=.*/IMAGE_TAG=latest/g" ".env"
grep "SAFELINE_DIR" ".env" > /dev/null || echo "SAFELINE_DIR=$(pwd)" >> ".env"
grep "SUBNET_PREFIX" ".env" > /dev/null || echo "SUBNET_PREFIX=169.254.0" >> ".env"
grep "REDIS_PASSWORD" ".env" > /dev/null || echo "REDIS_PASSWORD=$(LC_ALL=C tr -dc A-Za-z0-9 </dev/urandom | head -c 32)" >> ".env"
# 还是在safeline目录下,重启docker compose,完成配置
docker compose down
docker compose up -d
# [可选] 升级成功后, 可以执行以下命令删除旧版本 Docke 镜像, 以释放磁盘空间
docker rmi $(docker images | grep "safeline" | grep "none" | awk '{print $3}')
本文作者:Haiky567
本文链接:https://www.cnblogs.com/haiky567/p/17490159.html
版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步