Skip to content

Commit 9592353

Browse files
pRizzclaude
andcommitted
feat: add quick-deploy.sh one-liner script for automated Docker setup
Create scripts/quick-deploy.sh that installs Docker if needed, downloads docker-compose.yml, starts the service, and prints the IOTP — all in one command. Supports Linux auto-install, macOS/WSL detection with helpful errors, --interactive mode for opt-in prompts, and sudo escalation only when required. Feature it prominently as the first section in the README. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
1 parent b30b217 commit 9592353

5 files changed

Lines changed: 554 additions & 14 deletions

File tree

README.md

Lines changed: 21 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,22 @@ A production-ready toolkit for deploying and managing [opencode](https://github.
1919

2020
This project uses the opencode fork at https://github.com/pRizz/opencode, which adds additional authentication and security features.
2121

22+
## Quick Deploy (Docker)
23+
24+
Deploy opencode-cloud with one command. Installs Docker if needed (Linux), downloads the Docker Compose config, starts the service, and prints the login credentials:
25+
26+
```bash
27+
curl -fsSL https://raw.githubusercontent.com/pRizz/opencode-cloud/main/scripts/quick-deploy.sh | bash
28+
```
29+
30+
Then open [http://localhost:3000](http://localhost:3000) and enter the Initial One-Time Password (IOTP) to complete setup.
31+
32+
> **macOS/Windows:** Install [Docker Desktop](https://www.docker.com/products/docker-desktop/) first, then run the command above.
33+
34+
> **Remote server:** SSH into the server, run the command, then access via SSH tunnel: `ssh -L 3000:localhost:3000 root@<server-ip>`
35+
36+
> **Interactive mode:** Add `--interactive` to be prompted before each step: `curl -fsSL .../scripts/quick-deploy.sh | bash -s -- --interactive`
37+
2238
## Quick install (cargo)
2339

2440
```bash
@@ -66,6 +82,8 @@ Docs: `docs/deploy/railway.md`
6682

6783
## Run with Docker / Docker Desktop
6884

85+
> **Tip:** For a fully automated setup, see [Quick Deploy](#quick-deploy-docker) above.
86+
6987
The fastest way to run opencode-cloud locally:
7088

7189
```bash
@@ -95,16 +113,12 @@ Docs: `docs/deploy/digitalocean-marketplace.md`
95113
SSH into an Ubuntu 24.04 Droplet and run:
96114

97115
```bash
98-
curl -O https://raw.githubusercontent.com/pRizz/opencode-cloud/main/docker-compose.yml
99-
apt-get update -y && apt-get install -y docker.io && systemctl enable --now docker
100-
docker compose up -d
116+
curl -fsSL https://raw.githubusercontent.com/pRizz/opencode-cloud/main/scripts/quick-deploy.sh | bash
101117
```
102118

103-
Retrieve the IOTP and open `http://localhost:3000` via SSH tunnel:
119+
This installs Docker, downloads the Compose file, starts the service, and prints the IOTP.
104120

105-
```bash
106-
docker compose logs | grep -F "INITIAL ONE-TIME PASSWORD (IOTP): " | tail -n1 | sed 's/.*INITIAL ONE-TIME PASSWORD (IOTP): //'
107-
```
121+
Access via SSH tunnel: `ssh -L 3000:localhost:3000 root@<droplet-ip>`, then open `http://localhost:3000`.
108122

109123
Docs: `docs/deploy/digitalocean-droplet.md`
110124

docs/deploy/digitalocean-droplet.md

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -234,6 +234,20 @@ Use this if you don't want `occ` installed on the Droplet.
234234

235235
Docker Compose configures all 6 named volumes automatically.
236236

237+
The quickest way is the one-liner script, which installs Docker, downloads the Compose file, starts the service, and prints the IOTP:
238+
239+
```bash
240+
curl -fsSL https://raw.githubusercontent.com/pRizz/opencode-cloud/main/scripts/quick-deploy.sh | bash
241+
```
242+
243+
Add `--interactive` to be prompted before each step:
244+
245+
```bash
246+
curl -fsSL https://raw.githubusercontent.com/pRizz/opencode-cloud/main/scripts/quick-deploy.sh | bash -s -- --interactive
247+
```
248+
249+
**Or do it manually:**
250+
237251
#### 1) Install Docker
238252

239253
```bash

docs/deploy/docker-desktop.md

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,18 @@ What you get:
1313

1414
No cloud account or `occ` CLI installation is required.
1515

16+
## Quick Start (One-Liner)
17+
18+
The fastest path — installs Docker if needed, downloads the Compose config, starts the service, and prints the IOTP:
19+
20+
```bash
21+
curl -fsSL https://raw.githubusercontent.com/pRizz/opencode-cloud/main/scripts/quick-deploy.sh | bash
22+
```
23+
24+
> **macOS/Windows:** Install [Docker Desktop](https://www.docker.com/products/docker-desktop/) first.
25+
26+
> **Interactive mode:** `curl -fsSL .../scripts/quick-deploy.sh | bash -s -- --interactive`
27+
1628
## Quick Start (Docker Compose)
1729

1830
The project includes a `docker-compose.yml` that configures all persistent

packages/core/README.md

Lines changed: 21 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,22 @@ A production-ready toolkit for deploying and managing [opencode](https://github.
1919

2020
This project uses the opencode fork at https://github.com/pRizz/opencode, which adds additional authentication and security features.
2121

22+
## Quick Deploy (Docker)
23+
24+
Deploy opencode-cloud with one command. Installs Docker if needed (Linux), downloads the Docker Compose config, starts the service, and prints the login credentials:
25+
26+
```bash
27+
curl -fsSL https://raw.githubusercontent.com/pRizz/opencode-cloud/main/scripts/quick-deploy.sh | bash
28+
```
29+
30+
Then open [http://localhost:3000](http://localhost:3000) and enter the Initial One-Time Password (IOTP) to complete setup.
31+
32+
> **macOS/Windows:** Install [Docker Desktop](https://www.docker.com/products/docker-desktop/) first, then run the command above.
33+
34+
> **Remote server:** SSH into the server, run the command, then access via SSH tunnel: `ssh -L 3000:localhost:3000 root@<server-ip>`
35+
36+
> **Interactive mode:** Add `--interactive` to be prompted before each step: `curl -fsSL .../scripts/quick-deploy.sh | bash -s -- --interactive`
37+
2238
## Quick install (cargo)
2339

2440
```bash
@@ -66,6 +82,8 @@ Docs: `docs/deploy/railway.md`
6682

6783
## Run with Docker / Docker Desktop
6884

85+
> **Tip:** For a fully automated setup, see [Quick Deploy](#quick-deploy-docker) above.
86+
6987
The fastest way to run opencode-cloud locally:
7088

7189
```bash
@@ -95,16 +113,12 @@ Docs: `docs/deploy/digitalocean-marketplace.md`
95113
SSH into an Ubuntu 24.04 Droplet and run:
96114

97115
```bash
98-
curl -O https://raw.githubusercontent.com/pRizz/opencode-cloud/main/docker-compose.yml
99-
apt-get update -y && apt-get install -y docker.io && systemctl enable --now docker
100-
docker compose up -d
116+
curl -fsSL https://raw.githubusercontent.com/pRizz/opencode-cloud/main/scripts/quick-deploy.sh | bash
101117
```
102118

103-
Retrieve the IOTP and open `http://localhost:3000` via SSH tunnel:
119+
This installs Docker, downloads the Compose file, starts the service, and prints the IOTP.
104120

105-
```bash
106-
docker compose logs | grep -F "INITIAL ONE-TIME PASSWORD (IOTP): " | tail -n1 | sed 's/.*INITIAL ONE-TIME PASSWORD (IOTP): //'
107-
```
121+
Access via SSH tunnel: `ssh -L 3000:localhost:3000 root@<droplet-ip>`, then open `http://localhost:3000`.
108122

109123
Docs: `docs/deploy/digitalocean-droplet.md`
110124

0 commit comments

Comments
 (0)