Files
2026-02-08 18:25:47 +08:00
..
2026-02-08 18:25:47 +08:00
2026-02-08 18:25:47 +08:00

ShellCrash (Official Docker Image)

ShellCrash 官方 Docker 镜像,用于在容器环境中运行 ShellCrash支持 HTTP / SOCKS 代理旁路由透明代理 两种部署模式。

该镜像由 ShellCrash 官方维护,基于原项目脚本构建,并通过 Docker 多架构机制发布。


Quick Start最小化运行

仅启用 HTTP(S) / SOCKS5 代理功能适用于基础代理需求Mix代理端口7890面板管理端口9999。

docker run -d \
  --name shellcrash \
  -p 7890:7890 \
  -p 9999:9999 \
  juewuy/shellcrash:latest

Container Management容器管理

首次部署完成后请务必使用以下命令进入容器完成设置导入配置文件允许开机启动及启动内核服务之后也可用此命令进入容器sh环境进行管理

docker exec -it shellcrash sh -l

Advanced Usage旁路由 / 透明代理)

适用于旁路由、软路由或需要透明代理的部署场景需提前创建macvlan这里不推荐使用容器的host模式。

1. 创建 macvlan 网络

此处请根据实际网络环境调整参数,如之前已创建可忽略。

docker network create \
  --driver macvlan \
  --subnet 192.168.31.0/24 \
  --gateway 192.168.31.1 \
  -o parent=eth0 \
  macvlan_lan

2. 启动容器(旁路由模式)

docker run -d \
  --name shellcrash \
  --network macvlan_lan \
  --ip 192.168.31.222 \
  --cap-add NET_ADMIN \
  --cap-add NET_RAW \
  --cap-add SYS_ADMIN \
  --sysctl net.ipv4.ip_forward=1 \
  --device /dev/net/tun:/dev/net/tun \
  --restart unless-stopped \
  juewuy/shellcrash:latest

3. 配置需要路由的设备

将需要路由的设备IPV4网关与DNS均指向启动容器时指定的IP地址如192.168.31.222

注意旁路由模式必须禁用子设备的IPV6地址或主路由的IPV6功能否则流量可能会经由IPV6直连而不会进入旁路由转发


Persistent Configuration持久化配置,可选)

推荐使用 volume 挂载以持久化 ShellCrash 配置。

1. 创建宿主机目录

mkdir -p /root/ShellCrash

2. 启用持久化

将命令粘贴到你的实际容器启动命令中间,例如:

docker run -d \
  ………………
  -v shellcrash_configs:/etc/ShellCrash/configs \
  ………………

Compose DeploymentCompose部署

1. 创建宿主机目录并进入目录

mkdir -p /tmp/ShellCrash
cd /tmp/ShellCrash

2. 下载Compose模版

curl -sSL https://testingcf.jsdelivr.net/gh/juewuy/ShellCrash@dev/docker/compose.yml -O

3. 根据本地环境修改Compose模版

vi compose.yml #或者使用其他文本编辑器

4. 运行服务

docker compose up -d

Delete移除容器镜像或删除卷

Docker删除容器

docker rm -f shellcrash

Docker删除卷

docker volume rm shellcrash_configs

Compose删除容器&卷

docker-compose down -v

Notes

  • 内置公网防火墙功能无法管理宿主机网络请自行做好宿主机7890/9999端口的网络防护
  • 旁路由模式需要宿主机支持 TUN
  • macvlan 网络下宿主机默认无法直接访问容器 IP
  • 透明代理场景可能需要额外的网络规划