# 【juice-shop】开始之前 部署

# OWASP Juice Shop 部署

> OWASP Juice Shop 是一个“漏洞靶场”电商网站，技术栈主要是 **Node.js + Angular + SQL/NoSQL**。

以下内容默认在 **Kali** 中执行

---

## 源码部署（长期使用推荐）

### 环境要求
- **Node.js**：`20 - 24`
- **Git**：用于拉取源码

### 部署步骤

```bash
git clone https://github.com/juice-shop/juice-shop.git --depth 1
cd juice-shop
```

```
npm install
```

```
npm start
```

### 说明
- `git clone --depth 1`：只拉取最新提交，速度更快
- `npm install`：安装依赖
- `npm start`：启动服务

### 访问地址
启动后默认访问：

```text
http://127.0.0.1:3000
```

---

## Docker 部署（快速使用推荐）

### 环境要求
- **Docker**

### 部署命令

```bash
docker run --rm -p 127.0.0.1:3000:3000 bkimminich/juice-shop
```

### 说明
- `--rm`：容器退出后自动删除
- `-p 127.0.0.1:3000:3000`：仅本机可访问，映射到本地 `3000` 端口

### 访问地址
```text
http://127.0.0.1:3000
```

---

## 部署方式对比

```text
源码部署
  ├── 适合：需要查看/修改代码
  ├── 优点：可控性高
  └── 缺点：依赖安装较多

Docker 部署
  ├── 适合：快速启动
  ├── 优点：简单、省事
  └── 缺点：不方便改源码
```

---

## 常见检查项

### 源码部署前确认
```bash
node -v
npm -v
git --version
```

### Docker 部署前确认
```bash
docker --version
docker ps
```

---

## 参考
- [Juice Shop GitHub](https://github.com/juice-shop/juice-shop)

