Skip to content

Commit 35b65be

Browse files
committed
Deploying Your Own Taubyte Cloud with SporeDrive
1 parent c11b97f commit 35b65be

File tree

4 files changed

+228
-0
lines changed

4 files changed

+228
-0
lines changed
Lines changed: 228 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,228 @@
1+
---
2+
title: "Run a Real Cloud Locally with Taubyte Dream"
3+
author: Zaoui Amine
4+
featured: true
5+
draft: false
6+
tags:
7+
- tutorials
8+
- devtools
9+
- dream
10+
- local-development
11+
- cloud
12+
image:
13+
src: /blog/images/dream-local-cloud.png
14+
alt: Run a Real Cloud Locally with Taubyte Dream
15+
summary: Testing cloud applications locally often means dealing with incomplete emulators that don't match production behavior. Taubyte Dream changes this by running a complete, real cloud on your local machine—not an emulation, but an actual simulation of production infrastructure.
16+
date: 2026-01-14T12:00:00Z
17+
categories: [Hand-on Learning]
18+
---
19+
20+
Testing modern cloud applications locally is a common challenge. Emulators and mocked environments often fail to replicate the true behavior of a distributed production cloud, leading to bugs that only appear after deployment.
21+
22+
**What if you could run a real cloud on your own machine?**
23+
24+
## Introducing Taubyte Dream
25+
26+
Taubyte Dream lets you spin up a **universe**—a complete, self-contained Taubyte cloud running entirely on your local machine. This universe is an isolated peer-to-peer network of nodes, each running actual Taubyte services like gateway, substrate, and auth.
27+
28+
This design provides a development environment that closely mirrors working with a live remote cloud infrastructure.
29+
30+
## Simulation vs. Emulation: Why It Matters
31+
32+
It's crucial to understand that Dream provides a **simulation**, not an emulation.
33+
34+
| Aspect | Emulation | Dream Simulation |
35+
|--------|-----------|------------------|
36+
| Behavior | Approximates production | **Identical** to production |
37+
| Code | Different codebase | **Same** software components |
38+
| Protocols | Simplified versions | **Same** protocols |
39+
| Testing confidence | Medium | **High** |
40+
41+
An emulation merely approximates behavior, which can lead to inconsistencies. In contrast, Dream's simulation runs the exact same software components that exist in a live deployment. The services communicate using the same protocols and follow the same logic.
42+
43+
> **The only difference is the scale, not the substance.**
44+
45+
What you build and test in Dream will behave exactly as it would in a full-scale cloud.
46+
47+
## True Dev/Prod Parity
48+
49+
The primary benefit of this approach is achieving **true dev/prod parity**. With Dream:
50+
51+
- Code and configuration tested locally can be deployed to production with **zero changes**
52+
- No translation layers or environment-specific surprises
53+
- Catch issues early in the development cycle
54+
55+
## Getting Started
56+
57+
### Installation
58+
59+
First, ensure you have Node.js installed on your machine. Then install Dream globally:
60+
61+
```bash
62+
npm install -g @taubyte/dream
63+
```
64+
65+
This makes the `dream` command available globally.
66+
67+
### Creating Your Cloud
68+
69+
Initialize your local cloud with a single command:
70+
71+
```bash
72+
dream new multiverse
73+
```
74+
75+
You'll see output confirming your cloud is running:
76+
77+
```
78+
[INFO] Dreamland ready
79+
[SUCCESS] Universe blackhole started!
80+
```
81+
82+
**That's it.** You've just initialized a personal cloud on your machine.
83+
84+
### Viewing Your Cloud
85+
86+
To see all the running components of your universe:
87+
88+
```bash
89+
dream status universe
90+
```
91+
92+
This displays every service that makes up your cloud:
93+
94+
```bash
95+
┌───────┬─────────────────────┬────────┬───────┐
96+
│ Nodes │ elder@blackhole │ p2p │ 14051 │
97+
│ ├─────────────────────┼────────┼───────┤
98+
│ │ tns@blackhole │ http │ 14466 │
99+
│ ├─────────────────────┼────────┼───────┤
100+
│ │ substrate@blackhole │ http │ 14529 │
101+
│ ├─────────────────────┼────────┼───────┤
102+
│ │ auth@blackhole │ p2p │ 14123 │
103+
│ ...
104+
└───────┴─────────────────────┴────────┴───────┘
105+
```
106+
107+
Each service functions just as it would in production.
108+
109+
## Visual Inspection with the Web Console
110+
111+
You can also inspect your local cloud visually:
112+
113+
1. Open [console.taubyte.com](https://console.taubyte.com)
114+
2. Click the **Dreamland** button (only visible when Dream is running)
115+
3. Navigate to **Sidebar → Network → blackhole**
116+
117+
You'll see a visual network graph showing all your running nodes and their connections.
118+
119+
![Inspecting your local cloud network](/blog/images/inspectlocalcloud.jpg)
120+
121+
## Working with Your Local Cloud
122+
123+
### Connecting to the Console
124+
125+
To add real code and test Taubyte functionalities:
126+
127+
1. Go to [console.taubyte.com](https://console.taubyte.com)
128+
2. Enter your email
129+
3. Select the network as **blackhole**
130+
4. Click **Login with GitHub**
131+
132+
![Taubyte Console login interface](/blog/images/taubyteconsole.jpg)
133+
134+
From here you can:
135+
- Create projects
136+
- Define functions
137+
- Manage applications
138+
- Test databases and storage
139+
140+
All while interacting with the cloud running on your machine.
141+
142+
### Testing a Function
143+
144+
If you have a project imported or created:
145+
146+
1. Navigate to **Functions** in the sidebar
147+
2. Find your function in the list
148+
3. Click the **lightning icon** to run it
149+
150+
![Testing functions in the Taubyte console](/blog/images/testfunctions.jpg)
151+
152+
The function executes on your local cloud exactly as it would in production.
153+
154+
### Example: Running a Ping Function
155+
156+
```bash
157+
# First, find your substrate HTTP port
158+
dream status substrate
159+
160+
# Then test your function
161+
curl -H "Host: your-domain.blackhole.localtau" http://127.0.0.1:14529/ping
162+
```
163+
164+
Response:
165+
```
166+
PONG
167+
```
168+
169+
## Key Dream Commands
170+
171+
| Command | Description |
172+
|---------|-------------|
173+
| `dream new multiverse` | Start a new local cloud |
174+
| `dream status universe` | Show all running nodes |
175+
| `dream status substrate` | Get substrate node details (for HTTP port) |
176+
| `dream inject push-all` | Trigger builds for all repositories |
177+
| `dream inject push-specific <id>` | Trigger build for specific repository |
178+
179+
## The Architecture
180+
181+
When you run Dream, it starts a complete peer-to-peer network locally:
182+
183+
```bash
184+
┌────────────────────────────────────────────┐
185+
│ Local Dream Universe │
186+
│ (blackhole) │
187+
├────────────────────────────────────────────┤
188+
│ ┌──────────┐ ┌──────────┐ ┌──────────┐ │
189+
│ │ auth │ │ tns │ │ seer │ │
190+
│ └────┬─────┘ └────┬─────┘ └────┬─────┘ │
191+
│ │ │ │ │
192+
│ └─────────────┼─────────────┘ │
193+
│ │ │
194+
│ ┌──────────┐ ┌────┴─────┐ ┌──────────┐ │
195+
│ │ patrick │ │ substrate│ │ hoarder │ │
196+
│ └────┬─────┘ └────┬─────┘ └────┬─────┘ │
197+
│ │ │ │ │
198+
│ └─────────────┴─────────────┘ │
199+
│ P2P Network │
200+
└────────────────────────────────────────────┘
201+
```
202+
203+
Each node runs the same code as production, just scaled down to your local machine.
204+
205+
## Why Dream Changes Everything
206+
207+
Before Dream, local development for distributed cloud applications meant:
208+
209+
- Setting up mock services that behave differently than production
210+
- Discovering bugs only after deployment
211+
- Complex local environment configurations
212+
- Environment-specific conditionals in code
213+
214+
With Dream:
215+
216+
- **Test production behavior locally** before deploying
217+
- **No environment-specific code** needed
218+
- **Faster development cycles** with immediate feedback
219+
- **Confidence in deployments** because local = production
220+
221+
## Conclusion
222+
223+
Taubyte Dream eliminates the gap between development and production environments. By running an actual simulation of a Taubyte cloud on your local machine, you can develop, test, and debug with complete confidence that your code will behave identically in production.
224+
225+
No more "works on my machine" scenarios. No more deployment surprises. Just pure dev/prod parity.
226+
227+
For more details on Dream and all its capabilities, visit the [documentation at tau.how](https://tau.how). Join our [Discord community](https://discord.gg/taubyte) if you have questions or want to connect with other developers.
228+
218 KB
Loading

static/images/taubyteconsole.jpg

114 KB
Loading

static/images/testfunctions.jpg

58.1 KB
Loading

0 commit comments

Comments
 (0)