Skip to content

Commit a7e14f7

Browse files
Stephen G. PopeStephen G. Pope
authored andcommitted
updated docs
1 parent b852be2 commit a7e14f7

3 files changed

Lines changed: 261 additions & 136 deletions

File tree

README.md

Lines changed: 12 additions & 136 deletions
Original file line numberDiff line numberDiff line change
@@ -187,146 +187,22 @@ Each endpoint is supported by robust payload validation and detailed API documen
187187

188188
---
189189

190-
# Installing on the Google Cloud Platform (GCP)
190+
## Installation Guides
191191

192-
## 🎥 Video Instructions
192+
This API can be deployed to various cloud platforms:
193193

194-
Watch **[Detailed Video Instructions](https://youtu.be/6bC93sek9v8)** to set up the No-Code Architects Toolkit API.
194+
- [Google Cloud Platform (GCP) Installation Guide](https://github.com/stephengpope/no-code-architects-toolkit/blob/main/docs/cloud-installation/gcp.md) - Deploy the API on Google Cloud Run
195+
- [Digital Ocean Installation Guide](https://github.com/stephengpope/no-code-architects-toolkit/blob/main/docs/cloud-installation/do.md) - Deploy the API on Digital Ocean App Platform
195196

196-
- Use the **Docker Image** below:
197+
## Testing the API
197198

198-
```
199-
stephengpope/no-code-architects-toolkit:latest
200-
```
201-
202-
### Video Resources
203-
204-
- **[Postman Template](https://bit.ly/49Gkh61)**
205-
- **[NCA Toolkit API GPT](https://bit.ly/4feDDk4)**
206-
207-
Or use the guide below walks you through the steps to install the NCA Toolkit API on GCP.
208-
209-
---
210-
211-
## **Prerequisites**
212-
- A Google Cloud account. [Sign up here](https://cloud.google.com/) if you don't already have one.
213-
- New users receive $300 in free credits.
214-
- Basic knowledge of GCP services such as Cloud Run and Cloud Storage.
215-
- A terminal or code editor for managing files.
216-
217-
---
218-
219-
## **Step 1: Create a Google Cloud Project**
220-
1. Log into the [GCP Console](https://console.cloud.google.com/).
221-
2. Click on the **Project Selector** in the top navigation bar and select **New Project**.
222-
3. Enter a project name, such as `NCA Toolkit Project`.
223-
4. Click **Create**.
224-
225-
---
226-
227-
## **Step 2: Enable Required APIs**
228-
Enable the following APIs:
229-
- **Cloud Storage API**
230-
- **Cloud Storage JSON API**
231-
- **Cloud Run API**
232-
233-
### **How to Enable APIs:**
234-
1. In the GCP Console, navigate to **APIs & Services** > **Enable APIs and Services**.
235-
2. Search for each API, click on it, and enable it.
236-
237-
---
238-
239-
## **Step 3: Create a Service Account**
240-
1. Navigate to **IAM & Admin** > **Service Accounts** in the GCP Console.
241-
2. Click **+ Create Service Account**.
242-
- Enter a name (e.g., `NCA Toolkit Service Account`).
243-
3. Assign the following roles to the service account:
244-
- **Storage Admin**
245-
- **Viewer**
246-
4. Click **Done** to create the service account.
247-
5. Open the service account details and navigate to the **Keys** tab.
248-
- Click **Add Key** > **Create New Key**.
249-
- Choose **JSON** format, download the file, and store it securely.
250-
251-
---
252-
253-
## **Step 4: Create a Cloud Storage Bucket**
254-
1. Navigate to **Storage** > **Buckets** in the GCP Console.
255-
2. Click **+ Create Bucket**.
256-
- Choose a unique bucket name (e.g., `nca-toolkit-bucket`).
257-
- Leave default settings, but:
258-
- Uncheck **Enforce public access prevention**.
259-
- Set **Access Control** to **Uniform**.
260-
3. Click **Create** to finish.
261-
4. Go to the bucket permissions, and add **allUsers** as a principal with the role:
262-
- **Storage Object Viewer**.
263-
5. Save changes.
264-
265-
---
266-
267-
## **Step 5: Deploy on Google Cloud Run**
268-
269-
### 1. Navigate to Cloud Run
270-
- Open the **Cloud Run** service in the **Google Cloud Console**.
271-
272-
### 2. Create a New Service
273-
- Click **Create Service**.
274-
- Then **Deploy one revision from Docker Hub using the image below**:
275-
276-
```
277-
stephengpope/no-code-architects-toolkit:latest
278-
```
279-
280-
### 3. Allow Unauthenticated Invocations
281-
- Check the box to **allow unauthenticated invocations**.
282-
283-
### 4. Configure Resource Allocation
284-
- Set **Memory**: `16 GB`.
285-
- Set **CPU**: `4 CPUs`.
286-
- Set **CPU Allocation**: **Always Allocated**.
287-
288-
### 5. Adjust Scaling Settings
289-
- **Minimum Instances**: `0` (to minimize cost during idle times).
290-
- **Maximum Instances**: `5` (adjustable based on expected load).
291-
292-
### 6. Use Second-Generation Servers
293-
- Scroll to **Platform Version** and select **Second Generation**.
294-
- Second-generation servers offer better performance and feature support for advanced use cases.
295-
296-
### 7. Add Environment Variables
297-
- Add the following environment variables:
298-
- `API_KEY`: Your API key (e.g., `Test123`).
299-
- `GCP_BUCKET_NAME`: The name of your Cloud Storage bucket.
300-
- `GCP_SA_CREDENTIALS`: The JSON key of your service account.
301-
- Paste the **entire contents** of the downloaded JSON key file into this field.
302-
- Ensure:
303-
- Proper JSON formatting.
304-
- No leading or trailing spaces.
305-
306-
### 8. Configure Advanced Settings
307-
- Set the **Container Port**: Default to `8080`.
308-
- **Request Timeout**: `300 seconds` (to handle long-running requests).
309-
- Enable **Startup Boost** to improve performance for the first request after a cold start.
310-
311-
### 9. Deploy the Service
312-
- Verify all settings and click **Create**.
313-
- The deployment process might take a few minutes. Once completed, a green checkmark should appear in the Cloud Run dashboard.
314-
315-
By following these steps, the NCA Toolkit will be successfully deployed and accessible via Google Cloud Run with second-generation servers for optimal performance.
316-
317-
---
318-
319-
## **Step 6: Test the Deployment**
320-
321-
1. Install **[Postman Template](https://bit.ly/49Gkh61)** on your computer.
322-
2. Import the API example requests from the NCA Toolkit GitHub repository.
323-
3. Configure two environment variables in Postman:
324-
- `base_url`: Your deployed Cloud Run service URL.
325-
- `x-api-key`: The API key you configured in **Step 5**.
326-
4. Use the example requests to validate that the API is functioning correctly.
327-
5. Use the **[NCA Toolkit API GPT](https://bit.ly/4feDDk4)** to learn more.
328-
329-
By following these steps, your NCA Toolkit API should be successfully deployed on Google Cloud Platform.
199+
1. Install the **[Postman Template](https://bit.ly/49Gkhl)** on your computer
200+
2. Import the API example requests from the template
201+
3. Configure your environment variables in Postman:
202+
- `base_url`: Your deployed API URL
203+
- `x-api-key`: Your API key configured during installation
204+
4. Use the example requests to validate that the API is functioning correctly
205+
5. Use the **[NCA Toolkit API GPT](https://bit.ly/4feDDk4)** to explore additional features
330206

331207
---
332208

docs/cloud-installation/do.md

Lines changed: 109 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,109 @@
1+
# Installing on Digital Ocean
2+
3+
This guide walks you through deploying the No-Code Architects Toolkit API on Digital Ocean's App Platform.
4+
5+
## Prerequisites
6+
7+
- A Digital Ocean account ([Sign up here](https://www.digitalocean.com/))
8+
- Basic familiarity with Digital Ocean App Platform
9+
- A credit/debit card for billing (you'll only be charged for what you use)
10+
11+
## Step 1: Create a New Project
12+
13+
1. Sign in to your Digital Ocean account
14+
2. Create a new project or select an existing one
15+
3. This will organize your resources for the NCA Toolkit
16+
17+
## Step 2: Create a Digital Ocean Space
18+
19+
You'll need to create a Space (Digital Ocean's object storage) for the toolkit to store processed files:
20+
21+
1. Navigate to **Spaces Object Storage** in the Digital Ocean dashboard
22+
2. Click **Create a Space**
23+
3. Select a region (e.g., New York)
24+
4. Give your bucket a name (e.g., `nca-toolkit-bucket`)
25+
5. Select your project
26+
6. Click **Create Space**
27+
28+
## Step 3: Generate API Keys for Your Space
29+
30+
1. From your new Space, go to **Settings**
31+
2. Click **Create Access Key**
32+
3. Select **Full Access**
33+
4. Give your key a name (e.g., `nca-toolkit-key`)
34+
5. Click **Create Access Key**
35+
6. **IMPORTANT**: Save both the Access Key and Secret Key shown - you will only see them once!
36+
7. Also copy the Space URL (endpoint) for use in the next step
37+
38+
## Step 4: Deploy the App
39+
40+
1. From your Digital Ocean dashboard, click **Create** and select **App**
41+
2. Choose **Container Image** as the deployment source
42+
3. Select **Docker Hub** for the repository
43+
4. Enter `stephengpope/no-code-architects-toolkit` as the image name
44+
5. Enter `latest` for the image tag
45+
6. Click **Next**
46+
7. If needed, edit the name to remove any extra dashes (Digital Ocean may show an error for long names)
47+
8. Choose **Web Service** as the service type
48+
49+
## Step 5: Configure Resources
50+
51+
1. Select a plan with adequate resources for your needs:
52+
- For testing, a $50/month instance provides good performance
53+
- For smaller workloads, you can select a smaller instance
54+
- Note: You're only charged for the time the server is running
55+
2. Set Containers to 1
56+
3. Close the resource selection dialog
57+
58+
## Step 6: Configure Environment Variables
59+
60+
Add the following environment variables exactly as shown (be careful with underscores vs. dashes and avoid any leading/trailing spaces):
61+
62+
1. `API_KEY`: Your API key (e.g., `test123` for testing - change for production)
63+
2. `S3_ENDPOINT_URL`: The URL of your Space (copied from Step 3)
64+
3. `S3_ACCESS_KEY`: The access key from Step 3
65+
4. `S3_SECRET_KEY`: The secret key from Step 3
66+
5. `S3_BUCKET_NAME`: The name of your Space bucket (e.g., `nca-toolkit-bucket`)
67+
6. `S3_REGION`: The region code of your Space (e.g., `NYC3` for New York)
68+
69+
## Step 7: Finalize and Deploy
70+
71+
1. For Deployment Region, select a region close to your location (e.g., San Francisco)
72+
2. You can use the default app name or choose a custom name
73+
3. Click **Create Resource**
74+
4. Wait for the deployment to complete (this may take a few minutes)
75+
- You may need to refresh the page to see updates
76+
77+
## Step 8: Test Your Deployment
78+
79+
### Using Postman
80+
81+
1. Sign up for or log in to [Postman](https://www.postman.com/)
82+
2. Import the [NCA Toolkit Postman Collection](https://bit.ly/49Gkh61)
83+
3. Fork the collection to your workspace
84+
4. Create a new environment:
85+
- Name it "Digital Ocean" or similar
86+
- Add a variable `x-api-key` with the value matching your API_KEY (e.g., `test123`)
87+
- Add a variable `base_url` with the value of your app's URL (shown in the Digital Ocean dashboard)
88+
- Save the environment
89+
5. In the collection, navigate to the `toolkit/authenticate` endpoint and click Send
90+
6. If you receive a success response, your deployment is working correctly
91+
7. Then test the `toolkit/test` endpoint to verify complete functionality
92+
93+
## Monitoring and Management
94+
95+
- **Overview**: View basic information about your app
96+
- **Insights**: Monitor CPU and memory usage
97+
- **Runtime Logs**: View logs of API calls and server activity
98+
- **Console**: Access the server's command line (rarely needed)
99+
- **Settings**: Modify your app's configuration
100+
101+
## Next Steps
102+
103+
Now that you have successfully deployed the NCA Toolkit API, you can:
104+
- Explore all the available endpoints in the Postman collection
105+
- Integrate the API with your applications
106+
- Consider securing your API key with a more complex value
107+
- Scale your resources up or down based on your usage requirements
108+
109+
Remember, Digital Ocean charges based on usage, so you can always delete the app when you're not using it to save costs.

0 commit comments

Comments
 (0)