@@ -22,47 +22,49 @@ Docker works in **layers** — the base system, Python packages, AI models, and
2222
2323### 1. Install Docker
2424
25- - ** Mac/ Windows** : Install [ Docker Desktop] ( https://www.docker.com/products/docker-desktop/ )
25+ - ** Windows/Mac ** : Install [ Docker Desktop] ( https://www.docker.com/products/docker-desktop/ )
2626- ** Linux** : Install [ Docker Engine] ( https://docs.docker.com/engine/install/ )
2727
28- ### 2. Create a directory for Sapphire
28+ ### 2. Create a directory and download the compose file
29+
30+ #### Linux / Mac (Terminal)
2931
3032``` bash
3133mkdir ~ /sapphire && cd ~ /sapphire
34+ curl -fsSL https://raw.githubusercontent.com/ddxfish/sapphire/main/docker-compose.yml -o docker-compose.yml
35+ mkdir -p sapphire-data sapphire-backups sapphire-config
3236```
3337
34- ### 3. Download the compose file
38+ #### Windows (PowerShell)
3539
36- ``` bash
37- curl -fsSL https://raw.githubusercontent.com/ddxfish/sapphire/main/docker-compose.yml -o docker-compose.yml
40+ ``` powershell
41+ mkdir $HOME\sapphire; cd $HOME\sapphire
42+ Invoke-WebRequest -Uri "https://raw.githubusercontent.com/ddxfish/sapphire/main/docker-compose.yml" -OutFile "docker-compose.yml"
43+ mkdir sapphire-data, sapphire-backups, sapphire-config
3844```
3945
40- ### 4. Edit your settings (optional)
46+ > ** Windows note** : Use PowerShell (not cmd.exe). Right-click Start → "Windows PowerShell" or search for "PowerShell."
47+
48+ ### 3. Edit your settings (optional)
4149
4250Open ` docker-compose.yml ` in any text editor and set:
4351- ** Timezone** — Change ` America/New_York ` to yours ([ timezone list] ( https://en.wikipedia.org/wiki/List_of_tz_database_time_zones ) )
4452- ** API keys** — Uncomment and fill in whichever LLM provider you use (Claude, OpenAI, etc.)
4553
46- ### 5. Create data directories
47-
48- If you don't make these, root owns them, but no big deal just ``` chown -R youruser:youruser ~/sapphire ``` to change to your user name.
49-
50- ``` bash
51- mkdir -p sapphire-data sapphire-backups sapphire-config
52- ```
53-
54- ### 6. Start Sapphire
54+ ### 4. Start Sapphire
5555
5656``` bash
5757docker compose up -d
5858```
5959
60- ### 7 . Open the web UI
60+ ### 5 . Open the web UI
6161
6262Go to ** https://localhost:8073 ** in your browser and complete the setup wizard.
6363
6464> ** Note** : You'll see a browser security warning about the self-signed certificate. This is normal — click "Advanced" → "Proceed" to continue.
6565
66+ > ** Permissions note (Linux only)** : If you skipped step 2's ` mkdir ` commands, Docker creates the data directories as root. Fix with: ` sudo chown -R $USER:$USER ~/sapphire `
67+
6668---
6769
6870## GPU Support (NVIDIA only)
@@ -148,26 +150,37 @@ Your data stays in `sapphire-data/`, `sapphire-backups/`, and `sapphire-config/`
148150``` bash
149151docker compose down
150152docker rmi ghcr.io/ddxfish/sapphire:latest
153+ ```
154+
155+ Then delete the data directories:
156+
157+ ** Linux / Mac:**
158+ ``` bash
151159rm -rf sapphire-data sapphire-backups sapphire-config
152160```
153161
162+ ** Windows (PowerShell):**
163+ ``` powershell
164+ Remove-Item -Recurse -Force sapphire-data, sapphire-backups, sapphire-config
165+ ```
166+
154167---
155168
156169## Where is my data?
157170
158171Everything is stored in plain folders next to your ` docker-compose.yml ` :
159172
160173```
161- ~/sapphire/
162- ├── docker-compose.yml ← Configuration
163- ├── sapphire-data/ ← Chats, memories, settings, plugins
174+ sapphire/ ← ~/sapphire (Linux/Mac) or %USERPROFILE%\sapphire (Windows)
175+ ├── docker-compose.yml ← Configuration
176+ ├── sapphire-data/ ← Chats, memories, settings, plugins
164177│ ├── settings.json
165178│ ├── history/
166179│ ├── memory.db
167180│ ├── knowledge.db
168181│ └── ...
169- ├── sapphire-backups/ ← Automatic backups
170- └── sapphire-config/ ← Credentials and secrets
182+ ├── sapphire-backups/ ← Automatic backups
183+ └── sapphire-config/ ← Credentials and secrets
171184```
172185
173186These are normal folders on your machine. You can browse them, back them up, or move them to another computer.
@@ -194,11 +207,11 @@ Make sure LM Studio's server is running and set to allow network connections.
194207
195208## Troubleshooting
196209
197- **"Permission denied" on data directories**
210+ **"Permission denied" on data directories (Linux) **
198211` ` ` bash
199212mkdir -p sapphire-data sapphire-backups sapphire-config
200213```
201- Create the directories before first run so they're owned by your user, not root.
214+ Create the directories before first run so they're owned by your user, not root. If they already exist as root: ` sudo chown -R $USER:$USER sapphire-data sapphire-backups sapphire-config ` . This doesn't apply to Windows/Mac — Docker Desktop handles permissions automatically.
202215
203216** Browser shows "connection refused"**
204217Sapphire takes 30-60 seconds to start on first run (loading AI models). Check progress with ` docker compose logs -f ` .
0 commit comments