83 lines
2.2 KiB
Markdown
83 lines
2.2 KiB
Markdown
# YakPanel Ubuntu Dev Install
|
|
|
|
This setup brings up the YakPanel 2026 scaffold stack on Ubuntu 22.04/24.04.
|
|
|
|
## Clone the repository
|
|
|
|
```bash
|
|
git clone https://source.yakpanel.com/admin/yakpanel-core.git
|
|
cd yakpanel-core
|
|
```
|
|
|
|
## Quick install
|
|
|
|
```bash
|
|
cd /path/to/yakpanel-core
|
|
chmod +x scripts/install-ubuntu.sh scripts/bootstrap-dev.sh
|
|
./scripts/install-ubuntu.sh
|
|
```
|
|
|
|
## One-click install
|
|
|
|
```bash
|
|
cd /path/to/yakpanel-core
|
|
chmod +x one-click-installer.sh
|
|
./one-click-installer.sh
|
|
```
|
|
|
|
## Start/stop commands
|
|
|
|
```bash
|
|
make init
|
|
make up
|
|
make migrate
|
|
make ps
|
|
make logs
|
|
make down
|
|
```
|
|
|
|
## Services
|
|
Host ports are defined in `.env` (see `.env.example`). Defaults avoid common conflicts:
|
|
|
|
- API health: `http://localhost:18080/health` (`API_PORT`)
|
|
- PostgreSQL: `localhost:15432` (`POSTGRES_PORT`)
|
|
- Redis: `localhost:16379` (`REDIS_PORT`)
|
|
- NATS monitor: `http://localhost:18222` (`NATS_MONITOR_PORT`)
|
|
- MinIO console: `http://localhost:19001` (`MINIO_CONSOLE_PORT`)
|
|
|
|
## Troubleshooting
|
|
|
|
### `permission denied while trying to connect to the docker API`
|
|
|
|
After adding your user to the `docker` group, your **current** shell may not see that group until you log out and back in. Install scripts use `scripts/docker-compose.sh`, which runs Compose via `sg docker` when needed so the first run succeeds without a re-login.
|
|
|
|
If you still see the error, run:
|
|
|
|
```bash
|
|
newgrp docker
|
|
```
|
|
|
|
or log out and SSH in again, then:
|
|
|
|
```bash
|
|
bash scripts/docker-compose.sh up -d --build
|
|
```
|
|
|
|
### `failed to bind host port ... address already in use`
|
|
|
|
Another service on the host is using the same published port. Run:
|
|
|
|
```bash
|
|
bash scripts/ensure-env-ports.sh
|
|
bash scripts/docker-compose.sh down
|
|
bash scripts/docker-compose.sh up -d --build
|
|
```
|
|
|
|
Or edit `.env` manually (raise `REDIS_PORT`, `POSTGRES_PORT`, etc.).
|
|
|
|
## Notes
|
|
- This is a development scaffold for the architecture implementation.
|
|
- `panel-api` currently serves a minimal runtime entrypoint for health and bootstrap validation.
|
|
- Full Laravel production bootstrap (artisan app, providers, migrations runtime wiring) is the next implementation step.
|
|
- Database schema is automatically applied by `db-migrate` during bootstrap and can be re-run with `make migrate`.
|