metacubexd/README.md

132 lines
2.4 KiB
Markdown
Raw Permalink Normal View History

# metacubexd
2023-09-10 20:25:20 +08:00
2023-12-01 18:43:40 +08:00
Mihomo Dashboard, The Official One, XD
2023-08-24 04:20:53 +08:00
2023-09-17 02:31:01 +08:00
![preview-overview](https://assets.solidjs.com/banner?project=metacubexd)
![pr-closed](https://img.shields.io/github/issues-pr-closed/metacubex/metacubexd?style=for-the-badge)
![last-commit](https://img.shields.io/github/last-commit/metacubex/metacubexd?style=for-the-badge)
![build](https://img.shields.io/github/actions/workflow/status/metacubex/metacubexd/release.yml?style=for-the-badge)
![downloads](https://img.shields.io/github/downloads/metacubex/metacubexd/total?style=for-the-badge)
![license](https://img.shields.io/github/license/metacubex/metacubexd?style=for-the-badge)
2023-09-03 06:46:37 +08:00
2023-09-03 16:53:39 +08:00
## Preview
2023-09-06 00:37:54 +08:00
![preview-overview](docs/preview-overview.webp)
![preview-connections](docs/preview-connections.webp)
2023-09-03 16:53:39 +08:00
2023-09-02 01:23:42 +08:00
## Published Official Links
2023-09-02 01:23:42 +08:00
GH Pages: https://metacubex.github.io/metacubexd
Cloudflare Pages: https://metacubexd.pages.dev
2023-08-24 04:20:53 +08:00
2023-08-27 16:13:44 +08:00
## Usage
2023-08-24 04:20:53 +08:00
### Enable external-controller in your config file
```yaml
external-controller: 0.0.0.0:9090
```
### Use pre-built assets from gh-pages branch
> First time setup
```shell
2023-12-01 18:43:40 +08:00
git clone https://github.com/metacubex/metacubexd.git -b gh-pages /etc/mihomo/ui
```
Make sure you have external-ui directory set correctly in your config file
2023-09-05 18:19:32 +08:00
```yaml
2023-12-01 18:43:40 +08:00
external-ui: /etc/mihomo/ui
2023-09-05 18:19:32 +08:00
```
> Update
```shell
2023-12-01 18:43:40 +08:00
git -C /etc/mihomo/ui pull -r
```
### Run inside Docker
2023-08-24 04:20:53 +08:00
> docker cli
2023-08-24 04:20:53 +08:00
Running
2023-08-24 04:20:53 +08:00
2023-08-27 16:13:44 +08:00
```shell
docker run -d --restart always -p 80:80 --name metacubexd ghcr.io/metacubex/metacubexd
2023-08-27 16:13:44 +08:00
```
2023-09-01 17:45:40 +08:00
Update and Restart
2023-09-01 17:45:40 +08:00
```shell
docker pull ghcr.io/metacubex/metacubexd && docker restart metacubexd
2023-09-01 17:45:40 +08:00
```
> docker-compose.yml
2023-09-01 17:45:40 +08:00
```yaml
version: '3'
services:
metacubexd:
container_name: metacubexd
image: ghcr.io/metacubex/metacubexd
restart: always
ports:
- '80:80'
# optional
meta:
container_name: meta
2023-12-01 18:43:40 +08:00
image: docker.io/metacubex/mihomo:Alpha
restart: always
pid: host
ipc: host
network_mode: host
cap_add:
- ALL
volumes:
2023-12-01 18:43:40 +08:00
- ./config.yaml:/root/.config/mihomo
- /dev/net/tun:/dev/net/tun
2023-09-01 17:45:40 +08:00
```
Running
```shell
docker compose up -d
```
Update and Restart
```shell
docker compose pull && docker compose up -d
```
### Build locally
> Install npm dependencies
```shell
2024-04-08 17:34:57 +08:00
pnpm install
```
> Build artifacts
```shell
2024-04-08 17:34:57 +08:00
pnpm build
```
> Serve static files
```shell
2024-04-08 17:34:57 +08:00
pnpm serve
```
## Credits
- [SolidJS](https://github.com/solidjs/solid)
- [daisyUI](https://github.com/saadeghi/daisyui)