ARL资产侦察灯塔系统 docker部署
docker部署ARL资产侦察灯塔系统,以及处理可能的报错
·
目录
部署用的项目:GitHub - honmashironeko/ARL-docker: 基于ARL v2.6.2版本源码,生成docker镜像进行快速部署,同时提供七千多条指纹
1、检查环境
docker --version && docker-compose --version
若未安装,则执行:
curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh get-docker.sh
sudo systemctl enable --now docker
sudo curl -L "https://github.com/docker/compose/releases/download/v2.12.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
bash
2、部署脚本
#下载部署脚本项目
git clone https://github.com/honmashironeko/ARL-docker.git
#进入项目文件夹
cd ARL-docker/
#添加运行权限
chmod +x setup_docker.sh
#执行部署脚本
bash setup_docker.sh
部署成功能看到:

3、报错处理
大概率会报错:

若是出现这种情况,建议使用更新版本的mongodb并且使用华为云镜像。
sudo vi docker-compose.yml
在编辑器中修改镜像源。

不过修改完还会报错,需要将文件里面的镜像源都修改了。
最后附上docker-compose.yml修改完后的完整代码:
version: '3'
volumes:
arl_db:
external: true
services:
web:
image: swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/honmashironeko/arl-docker-all:latest
container_name: arl_web
restart: unless-stopped
depends_on:
- mongodb
- rabbitmq
ports:
#http 服务,默认不映射出来
#- "5003:80"
- "5003:443"
volumes:
- ./arl_web.log:/code/arl_web.log
- ./config-docker.yaml:/code/app/config.yaml
- ./image:/code/app/tmp_screenshot
- ./poc:/opt/ARL-NPoC/xing/plugins/upload_poc
entrypoint: ["sh", "-c", "gen_crt.sh; nginx; wait-for-it.sh mongodb:27017; wait-for-it.sh rabbitmq:5672; gunicorn -b 0.0.0.0:5003 app.main:arl_app -w 3 --access-logfile arl_web.log"]
environment:
- LANG=en_US.UTF-8
- TZ=Asia/Shanghai
worker:
image: swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/honmashironeko/arl-docker-all:latest
container_name: arl_worker
restart: unless-stopped
depends_on:
- mongodb
- rabbitmq
volumes:
- ./arl_worker.log:/code/arl_worker.log
- ./config-docker.yaml:/code/app/config.yaml
- ./image:/code/app/tmp_screenshot
- ./poc:/opt/ARL-NPoC/xing/plugins/upload_poc
entrypoint: ["sh", "-c", "wait-for-it.sh mongodb:27017; wait-for-it.sh rabbitmq:5672;
celery -A app.celerytask.celery worker -l info -Q arlgithub -n arlgithub -c 2 -O fair -f arl_worker.log &
celery -A app.celerytask.celery worker -l info -Q arltask -n arltask -c 2 -O fair -f arl_worker.log"]
environment:
- LANG=en_US.UTF-8
- TZ=Asia/Shanghai
scheduler:
image: swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/honmashironeko/arl-docker-all:latest
container_name: arl_scheduler
restart: unless-stopped
depends_on:
- mongodb
- rabbitmq
volumes:
- ./config-docker.yaml:/code/app/config.yaml
entrypoint: [ "sh", "-c", "wait-for-it.sh mongodb:27017; wait-for-it.sh rabbitmq:5672; python3.6 -m app.scheduler" ]
environment:
- LANG=en_US.UTF-8
- TZ=Asia/Shanghai
mongodb:
image: swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/mongo:4.4.30
container_name: arl_mongodb
restart: always
volumes:
- arl_db:/data/db
- ./mongo-init.js:/docker-entrypoint-initdb.d/mongo-init.js:ro
environment:
- MONGO_INITDB_DATABASE=arl
- MONGO_INITDB_ROOT_USERNAME=admin
- MONGO_INITDB_ROOT_PASSWORD=admin
rabbitmq:
image: swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/rabbitmq:3.8.19-management-alpine
container_name: arl_rabbitmq
restart: always
environment:
- RABBITMQ_DEFAULT_PASS=arlpassword
- RABBITMQ_DEFAULT_USER=arl
- RABBITMQ_DEFAULT_VHOST=arlv2host
logging:
driver: "json-file"
options:
max-size: "1M"
max-file: "10"
4、一点废话
做这篇文章是为了避免我以后又浪费时间在搭建这个玩意上面,也希望这篇文章能够帮助大家顺利搭建完成。
更多推荐
所有评论(0)