Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Guides 2 #426

Merged
merged 37 commits into from
Jan 2, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
37 commits
Select commit Hold shift + click to select a range
c070849
fixed typo
oiclid Oct 21, 2024
0c75110
hosting guides
oiclid Oct 25, 2024
a57c043
hostinh guides
oiclid Oct 25, 2024
c423881
edits
oiclid Oct 25, 2024
f80e2bd
astro
oiclid Oct 25, 2024
bece49a
more frameworks guides
oiclid Oct 26, 2024
d35ab18
further guides
oiclid Oct 26, 2024
bf5935d
machine-learning guides
oiclid Oct 28, 2024
99ae729
knime guides
oiclid Oct 28, 2024
21507d7
dataiku
oiclid Oct 28, 2024
be7d2a3
dataiku
oiclid Oct 28, 2024
7214617
Merge branch 'akash-network:main' into guides-2
oiclid Nov 25, 2024
ba82363
final
oiclid Nov 26, 2024
4e11e84
extra
oiclid Nov 27, 2024
7bf31c4
Merge branch 'main' into guides-2
oiclid Nov 27, 2024
1fb3228
ai/ml + frameworks
oiclid Nov 27, 2024
9fb0885
ai/ml + frameworks
oiclid Nov 27, 2024
30b304c
deleted file
oiclid Nov 27, 2024
73b5a66
frameworks
oiclid Nov 27, 2024
1569afc
deletes
oiclid Nov 27, 2024
ee62bd0
frameworks, again
oiclid Nov 27, 2024
385b87d
frameworks, again
oiclid Nov 27, 2024
89cbf9c
Ruby on Rails
oiclid Nov 27, 2024
aa5b5c4
RStudio guide
oiclid Nov 27, 2024
287c4b4
apache superset guide
oiclid Nov 27, 2024
d2ddc62
kibana guide
oiclid Nov 27, 2024
c454920
deployments
oiclid Dec 2, 2024
7db7061
Merge branch 'akash-network:main' into guides-2
oiclid Dec 2, 2024
6643f02
Merge branch 'akash-network:main' into guides-2
oiclid Dec 19, 2024
5f19e28
several edits
oiclid Dec 19, 2024
a6a5568
done
oiclid Dec 19, 2024
f9e47eb
Merge branch 'akash-network:main' into guides-2
oiclid Dec 19, 2024
dca5d7d
done
oiclid Dec 19, 2024
7499f9e
deleted out-of-date guide
oiclid Dec 23, 2024
44aa3db
Merge branch 'akash-network:main' into guides-2
oiclid Dec 23, 2024
c2348d9
edited sequence.ts file
oiclid Dec 23, 2024
d6b26c0
edited sequence.ts file
oiclid Dec 23, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
94 changes: 78 additions & 16 deletions src/content/Docs/_sequence.ts
Original file line number Diff line number Diff line change
Expand Up @@ -83,27 +83,56 @@ export const docsSequence = [
{ label: "AI Art" },
{ label: "Jupyter Notebook" },
{ label: "Text-Generation-WebUI" },
{ label: "Mistral 7B"}
{ label: "Mistral 7B"},
{ label: "Skypilot"},
{ label: "H2O"},
{ label: "H2O Flow"},
{ label: "H2O LLM Studio"},
{ label: "h2oGPT"},
{ label: "FlowiseAI"},
{ label: "Machine Learning Environments"},
{ label: "Deeplearning4j"},
{ label: "Keras"},
{ label: "Haystack"},
{ label: "AnythingLLM"},
{ label: "LocalAI"},
{ label: "LangFlow"},
{ label: "TensorFlow"},
{ label: "PyTorch"},
],
},
{
label: "Deployments",
subItems: [
{ label: "TLS Termination of Akash Deployments" },
{ label: "Multi-Tiered Deployment" },
{ label: "Ruby on Rails with Sia and Auth0" },
{ label: "Jackal S3 Gateway" },
{ label: "Caddy"},
{ label: "Nginx"},
{ label: "Apache HTTP Server"},
{ label: "LocalStack"},
],
},
{
label: "Tooling",
subItems: [
{ label: "Provider Utilization Dashboard" },
{ label: "Akash Playground" },
{ label: "Provider Utilization Dashboard"},
{ label: "Radicle" },
{ label: "PostgreSQL restore/backup" },
{ label: "Provider Utilization Dashboard" },
{ label: "Akash Playground" },
{ label: "Kong"},
{ label: "Jenkins"},
{ label: "Traefik"},
{ label: "Mautic"},
{ label: "RabbitMQ"},
{ label: "JetBrains Hub"},
{ label: "EMQX"},
{ label: "Apache Flink"},
{ label: "Lightstreamer"},
{ label: "RabbitMQ"},
{ label: "NATS"},
{ label: "Apache Airflow"},
{ label: "Apache Kafka"},
{ label: "Apache Storm"},
],
},
{
Expand All @@ -123,7 +152,7 @@ export const docsSequence = [
{ label: "Waku" },
{ label: "qBittorrent" },
{ label: "Discourse" },
{ label: "Invidious" },
{ label: "Invidious" },
],
},
{
Expand All @@ -132,41 +161,74 @@ export const docsSequence = [
{ label: "JSON Server" },
{ label: "Dolt" },
{ label: "CouchDB" },
{ label: "PostgreSQL restore/backup" },
{ label: "MariaDB"},
{ label: "PostgreSQL" },
{ label: "ArangoDB"},
{ label: "OrientDB"},
{ label: "MongoDB"},
{ label: "Neo4j"},
],
},
{
label: "Data Visualizations",
label: "Hosting",
subItems:[
{ label: "Caddy"},
{ label: "WordPress"},
{ label: "Discourse"},
{ label: "Ghost"},
]
},
{
label: "Data Analysis",
subItems: [
{ label: "Redash" },
{ label: "Dash" },
{ label: "Metabase" },
{ label: "KNIME"},
{ label: "Dataiku"},
{ label: "Apache Superset"},
{ label: "Rstudio"},
{ label: "Apache Druid"},
{ label: "Grafana"},
{ label: "OpenSearch"},
{ label: "Matomo"},
{ label: "JupyterHub"},
{ label: "JATOS"},
],
},
{
label: "Frameworks",
subItems: [
{ label: "Django" },
{ label: "Flask"},
{ label: "Next.js" },
{ label: "React" },
{ label: "Astro" },
{ label: "Angular" },
{ label: "Django" },
{ label: "Nue JS"},
{ label: "Gatsby"},
{ label: "NextJS"},
{ label: "Vue.js"},
],
},
{
label: "Benchmarkings",
subItems: [{ label: "Fast.com" }],
},
{
label: "Apps",
label: "Games",
subItems: [
{ label: "Waku" },
{ label: "qBittorrent" },
{ label: "Discourse" },
{ label: "Invidious" },
],
{ label: "Minecraft"},
]
},
{
label: "Science",
subItems:[
{ label: "GeoNetwork"},
{ label: "GNU Octave"},
{ label: "MATLAB"}
]
}
],
},
{
Expand Down
Binary file added src/content/Docs/assets/h20llm.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
153 changes: 153 additions & 0 deletions src/content/Docs/guides/apps/photoprism/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,153 @@
---
categories: ["Guides"]
tags: ["Apps", "Photo Management",]
weight: 1
title: "Deploying PhotoPrism on Akash"
linkTitle: "PhotoPrism"
---


### **What is PhotoPrism?**
PhotoPrism is a self-hosted AI-powered photo management solution. It allows users to organize, browse, and share their photo collections using modern technology like TensorFlow for image classification and facial recognition. Features include:

- **Automatic Organization:** Tagging, categorization, and duplicate detection.
- **Privacy-Oriented:** Self-hosted to ensure your photos remain private.
- **Powerful Search:** Use keywords, locations, or metadata to find images quickly.
- **AI Capabilities:** Facial recognition, object detection, and more.

It is a popular choice for individuals who want to manage their photo libraries without relying on cloud platforms like Google Photos.

---

## **Steps to Deploy PhotoPrism on Akash**

---

### **Prerequisites**
1. **Akash CLI Installed**: Ensure you have the Akash command-line interface installed and configured. You should have an account with sufficient $AKT tokens.
2. **SDL Template**: The deployment requires an SDL (Service Definition Language) file for specifying deployment details.
3. **Akash Wallet**: Your wallet should be funded with $AKT to pay for the deployment.

---

### **1. Create a Storage Volume**
PhotoPrism requires persistent storage to save photos and metadata. Create a storage volume on Akash using Akash's persistent storage feature.

```
---
version: "2.0"

services:
photoprism:
image: photoprism/photoprism
env:
PHOTOPRISM_ADMIN_PASSWORD: "yourpassword"
PHOTOPRISM_DEBUG: "true"
expose:
- port: 2342
as: 80
to:
- global
resources:
cpu:
units: 1000m
memory:
size: 512Mi
storage:
size: 10Gi
profiles:
compute:
- "aksh-default"
placement:
attributes:
region: us-west
signedBy:
anyOf:
- "akash1..."
profiles:
compute:
aksh-default:
resources:
cpu:
units: 1000m
memory:
size: 512Mi
storage:
size: 10Gi
deployment:
photoprism:
profile: aksh-default
count: 1
```

---

### **2. Update the SDL File**

1. Replace `PHOTOPRISM_ADMIN_PASSWORD` with a secure admin password.
2. Adjust the `storage` size according to your photo library requirements.
3. Update the `region` under the `placement` section if you prefer a specific geographic location for your deployment.
4. Save the file as `deploy.yaml`.
---

### **3. Deploy PhotoPrism on Akash**

1. **Validate the SDL File:**

Run the following command to validate your SDL file:
```
akash tx deployment create --from <wallet_name> --node <akash_node_url>
```

2. **Submit the Deployment:**

After validation, submit your deployment to the Akash network:
```
akash tx deployment create deploy.yaml
```

3. **Query Deployment Status:**

Check the status of your deployment:
```
akash query deployment list --owner <wallet_address>
```

---

### **4. Access the PhotoPrism Web Interface**

1. After the deployment is successful, note the external endpoint provided by Akash.
2. Open a browser and navigate to `http://<external_endpoint>` to access the PhotoPrism UI.
3. Log in using the admin credentials set in the SDL file.

---

### **5. Upload and Organize Photos**

- Upload your photos to PhotoPrism via the web interface.
- Let the AI-powered system analyze and organize your photo library.

---

## **Customizing PhotoPrism**

- **Environment Variables:** Adjust configurations like storage paths, database options, or feature toggles by modifying the environment variables in the SDL file.
- **Resource Scaling:** Increase or decrease CPU, memory, or storage resources in the SDL file based on your needs.

---

### **Costs**
The cost of deploying PhotoPrism on Akash will depend on:
- CPU and memory resources allocated.
- Storage volume size.
- Rental prices on Akash's marketplace.

To estimate costs, query the Akash marketplace for current bids:
```
akash query market bid list
```

---

By deploying PhotoPrism on Akash, you get a secure, private, and scalable solution to manage your photo library efficiently without relying on centralized cloud services.
Loading