Applications v1.0.0

Learn about SLYD's application marketplace and how to deploy applications on your compute instances.

What are SLYD Applications?

SLYD Applications are pre-configured software packages that can be deployed to your compute instances with a single click. They include popular development frameworks, databases, productivity tools, and specialized applications for various domains. Applications are optimized for the SLYD environment and come with automatic updates, security patches, and easy configuration options.

Application Marketplace

The SLYD Application Marketplace is a curated collection of applications that you can browse, search, and deploy:

SLYD Application Marketplace

Fig 1. SLYD Application Marketplace

Application Categories

The marketplace organizes applications into several categories to help you find what you need:

Development

IDEs, code editors, version control, and development frameworks

Databases

SQL and NoSQL databases, caching systems, and data storage solutions

AI & ML

Machine learning frameworks, model training tools, and AI services

Web Servers

Web servers, content management systems, and hosting platforms

Analytics

Data analytics, visualization, and business intelligence tools

DevOps

CI/CD pipelines, monitoring, and infrastructure management

Application Details

Each application in the marketplace includes comprehensive details to help you make informed decisions:

JupyterLab Icon

JupyterLab

Published by: SLYD Labs
4.5 (238 ratings)
Version: 3.6.3
Updated: 2 weeks ago
5,000+ installations
Overview
Requirements
Configuration
Reviews

JupyterLab is the next-generation web-based user interface for Project Jupyter. It enables you to work with documents and activities such as Jupyter notebooks, text editors, terminals, and custom components in a flexible, integrated, and extensible manner.

This SLYD application includes pre-installed Python packages for data science and machine learning, including numpy, pandas, matplotlib, scikit-learn, and more.

JupyterLab Screenshot

Key Features

  • Interactive notebook environment for code, text, and visualizations
  • Support for multiple programming languages (Python, R, Julia)
  • Built-in terminal and text editor
  • Customizable layout with drag-and-drop interface
  • Extensions for additional functionality
2+ CPU cores
4+ GB RAM
10+ GB Storage

Deploying Applications

You can deploy applications to your compute instances in several ways:

Deploy During Instance Creation

1

When creating a new compute instance, select the "Applications" tab

2

Browse or search for applications to add to your instance

3

Select the applications you want to install and configure their settings

4

Complete the instance creation process and the selected applications will be automatically installed

This is the recommended approach for new instances as applications are installed during the provisioning process.

Deploy from Marketplace

1

Navigate to the Application Marketplace in your SLYD dashboard

2

Find and select the application you want to deploy

3

Click "Deploy" and select the target instance from the dropdown

4

Configure application settings and complete the deployment

This method is useful when you want to add new applications to existing instances.

Deploy via CLI or API

1

Use the SLYD CLI or API to deploy applications programmatically

2

Specify the application ID and target instance ID

3

Provide configuration parameters as needed

4

Monitor the deployment status through the CLI, API, or dashboard

CLI Example
slyd apps deploy --app-id jupyter-lab --instance-id inst-abc123 \
    --config '{"port": 8888, "password": "auto-generate"}' \
    --wait
API Example
curl -X POST https://api.slyd.cloud/v1/apps/deployments \
    -H "Authorization: Bearer YOUR_API_KEY" \
    -H "Content-Type: application/json" \
    -d '{
      "app_id": "jupyter-lab",
      "instance_id": "inst-abc123",
      "config": {
        "port": 8888,
        "password": "auto-generate"
      }
    }'

Application Configuration

Most applications in the SLYD marketplace can be customized during or after deployment:

Basic Configuration

Simple configuration options that can be set through the UI, such as:

  • Application port
  • Admin username and password
  • Default database name
  • Initial data settings

Advanced Configuration

Detailed configuration via configuration files, such as:

  • Configuration file upload
  • Environment variables
  • Initialization scripts
  • Resource allocation

Integration Options

Connect your application with other services:

  • Authentication providers
  • External storage services
  • Monitoring systems
  • Backup solutions

Managing Applications

After deployment, you can manage your applications through the SLYD dashboard:

Start/Stop

Control whether an application is running without uninstalling it

Go to Instance details, select the "Applications" tab
Find the application and click the "Stop" or "Start" button

Configure

Update application settings after deployment

Go to Instance details, select the "Applications" tab
Find the application and click the "Configure" button
Update settings and save changes

Update

Upgrade the application to the latest version

Go to Instance details, select the "Applications" tab
Look for applications with an update badge
Click "Update" and confirm the version change

Uninstall

Remove an application from your instance

Go to Instance details, select the "Applications" tab
Find the application and click the "Uninstall" button
Choose whether to keep application data and confirm
Warning: Uninstalling without data preservation will permanently delete all application data.

Application Backups

SLYD provides built-in backup capabilities for your applications:

Scheduled Backups

Configure automatic backups on hourly, daily, or weekly schedules. Backups can be stored within SLYD or exported to external storage.

Manual Backups

Create on-demand backups before making significant changes or at important milestones in your application lifecycle.

Restore Options

Restore applications to previous states, either on the same instance or to a new instance for testing and recovery.

In-place restoration
New instance restoration
Selective component restore

Custom Applications

In addition to marketplace applications, you can deploy your own custom applications to SLYD instances:

Package Upload

Upload pre-packaged applications in formats like Docker containers, tarballs, or zip archives. SLYD will extract and deploy them according to your specifications.

Docker containers
Tarballs (.tar.gz)
Zip archives (.zip)

Git Repository

Connect a Git repository to deploy applications directly from source code. SLYD supports automatic builds and deployments from GitHub, GitLab, and Bitbucket.

GitHub
GitLab
Bitbucket

CLI Deployment

Use the SLYD CLI to deploy applications from your local development environment or CI/CD pipeline.

CLI Deployment
slyd apps deploy-custom --instance-id inst-abc123 \
    --source-dir ./my-app \
    --build-cmd "npm install && npm run build" \
    --start-cmd "npm start" \
    --env-vars '{"NODE_ENV": "production"}'
Publishing to the Marketplace

If you've created a custom application that could benefit other SLYD users, you can submit it for review to be included in the public marketplace. Contact the SLYD team at [email protected] for submission guidelines.

Best Practices

Follow these recommendations to get the most out of SLYD applications:

Security

  • Always change default passwords immediately after deployment
  • Use secure tunnel configurations with authentication for sensitive applications
  • Keep applications updated to get the latest security patches
  • Use application-specific users rather than system accounts for daily use

Performance

  • Right-size your instance based on the application requirements
  • Deploy related applications to the same instance to reduce latency
  • Enable application-specific caching where available
  • Monitor resource usage and scale instances as needed

Data Management

  • Configure regular backups for applications with important data
  • Use persistent storage volumes for databases and file-heavy applications
  • Implement proper data retention policies
  • Test backup and restore procedures periodically

Development Workflow

  • Use development/staging/production instances for proper testing
  • Leverage Git integration for continuous deployment
  • Document application configurations in your code repository
  • Use environment variables for configuration to avoid hardcoding
An unhandled error has occurred. Reload 🗙