This repository contains example Dockerfiles and configurations for custom Seqera Studio applications. Each example demonstrates how to create and deploy different types of interactive applications in Seqera Studios.
- Marimo - A reactive Python notebook environment
- CellxGene - Interactive single-cell data visualization
- Streamlit - MultiQC visualization using Streamlit
- Shiny - Interactive data visualization with R Shiny
- TTYD - Interactive web-based terminal with bioinformatics tools
All examples in this repository require:
- Docker installed
- Wave configured in your Seqera Platform workspace
- Access to a container registry (public or Amazon ECR) for pushing your images
All examples in this repository:
- Are compatible with both local Docker testing and Seqera Studios
- Use the required Seqera base image and connect-client
- Include detailed setup and usage instructions
- Support data mounting via datalinks in Studios
- Are built for linux/amd64 platform compatibility
- Use multi-stage builds to include the connect-client
- Follow consistent container best practices
All examples follow the same deployment process:
- Select the Studios tab in your workspace
- Click Add Studio
- In the General config section:
- Select Prebuilt container image as the container template
- Enter your container image URI (e.g.,
cr.seqera.io/scidev/your-example
) - Set a Studio name and optional Description
- Configure compute resources in the Compute and Data section:
- Select your compute environment
- Adjust CPU, GPU, and memory allocations as needed
- Mount any required data using the Mount data option
- Review the configuration in the Summary section
- Click Add and start to create and launch the Studio
- Official documentation on building custom studio environments
- Each example's README contains specific instructions for:
- Building and testing locally
- Required dependencies and configurations
- Example-specific features and usage
- Data format requirements
- Customization options
Feel free to contribute new examples or improvements to existing ones. Each example should:
- Follow the established README structure
- Include comprehensive documentation
- Maintain consistency with common features
- Provide clear prerequisites and deployment instructions
- Include example data or clear data requirements