Some checks failed
Build and Push Docker Image / check-version (push) Failing after 9s
Build and Push Docker Image / build (linux/arm64, linux-arm64) (push) Has been skipped
Build and Push Docker Image / build (linux/amd64, linux-amd64) (push) Has been skipped
Build and Push Docker Image / create-manifest (push) Has been skipped
Lightweight Docker container for Nicotine+ with noVNC web interface and Firefox ESR browser. Features: - noVNC web interface with dynamic resize support - Firefox ESR for testing ports and browsing - TigerVNC with AcceptSetDesktopSize enabled - Supervisor for process management - Configurable user/group permissions 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
123 lines
2.3 KiB
Markdown
123 lines
2.3 KiB
Markdown
# Nicotine-Less
|
|
|
|
Lightweight Docker container for Nicotine+ (Soulseek client) with noVNC web interface and integrated Firefox ESR browser.
|
|
|
|
## Features
|
|
|
|
- Web interface accessible from browser (noVNC)
|
|
- Integrated Firefox ESR browser
|
|
- Dynamic VNC window resizing
|
|
- SSH X forwarding support
|
|
- Persistent volumes for configuration and downloads
|
|
|
|
## Requirements
|
|
|
|
- Docker and Docker Compose installed
|
|
- Available ports: 6080 (web), 2234 (TCP), 2235 (UDP)
|
|
|
|
## Installation
|
|
|
|
### 1. Clone the repository
|
|
|
|
```bash
|
|
git clone https://git.nicola.sh/public/nicotine-less.git
|
|
cd nicotine-less
|
|
```
|
|
|
|
### 2. Configure docker-compose.yml
|
|
|
|
Copy the example file and edit it:
|
|
|
|
```bash
|
|
cp docker-compose.yml.example docker-compose.yml
|
|
```
|
|
|
|
**Required changes in `docker-compose.yml`:**
|
|
|
|
- Set your download and incomplete paths:
|
|
```yaml
|
|
volumes:
|
|
- ./data/config:/config
|
|
- /path/to/your/downloads:/downloads # CHANGE THIS
|
|
- /path/to/your/incomplete:/incomplete # CHANGE THIS
|
|
```
|
|
|
|
- (Optional) Add shared folders:
|
|
```yaml
|
|
- /path/to/your/music:/shares/music:ro # ADD YOUR SHARES
|
|
```
|
|
|
|
- (Optional) Adjust PUID/PGID to match your user (to avoid permission issues):
|
|
```bash
|
|
id -u # Get your user ID
|
|
id -g # Get your group ID
|
|
```
|
|
Then update in `docker-compose.yml`:
|
|
```yaml
|
|
environment:
|
|
- PUID=1000 # Change to your user ID
|
|
- PGID=1000 # Change to your group ID
|
|
```
|
|
|
|
### 3. Create config directory
|
|
|
|
```bash
|
|
mkdir -p data/config
|
|
```
|
|
|
|
### 4. Build and start
|
|
|
|
```bash
|
|
docker compose build
|
|
docker compose up -d
|
|
```
|
|
|
|
## Usage
|
|
|
|
### Web access
|
|
|
|
Open browser:
|
|
```
|
|
http://localhost:6080
|
|
```
|
|
|
|
Or from another device:
|
|
```
|
|
http://YOUR_HOST_IP:6080
|
|
```
|
|
|
|
### SSH X Forwarding
|
|
|
|
```bash
|
|
ssh -X user@host_ip
|
|
docker exec -it nicotine-less nicotine
|
|
```
|
|
|
|
## Updates
|
|
|
|
**Automatic updates**: The container image is automatically rebuilt every hour when a new Nicotine+ version is released on PyPI.
|
|
|
|
To update to the latest version, pull the new image:
|
|
|
|
```bash
|
|
docker compose pull
|
|
docker compose up -d
|
|
```
|
|
|
|
Or rebuild locally:
|
|
|
|
```bash
|
|
docker compose down
|
|
docker compose build --no-cache
|
|
docker compose up -d
|
|
```
|
|
|
|
## License
|
|
|
|
This project is provided "as-is" without warranties.
|
|
|
|
## Links
|
|
|
|
- [Nicotine+ GitHub](https://github.com/nicotine-plus/nicotine-plus)
|
|
- [noVNC GitHub](https://github.com/novnc/noVNC)
|