marimo on your own server, in one click.
Write reactive Python notebooks in your browser with marimo, on a server you own. ServerAvatar runs it in one Docker container, keeps your notebooks in a volume, generates the sign-in password and turns HTTPS on for you.
- One container
- Reactive Python notebooks
- Locked by a password
Section 01What is marimo
What is marimo?
marimo is an open-source notebook for Python that is reactive: run a cell or move a slider, and marimo runs every cell that depends on it, so code and outputs always agree and there is no hidden state. Each notebook is saved as a plain .py file that you can keep in git, run as a script or show as an app.
This recipe runs marimo's official image in one container, with Python 3.13, and locks the editor with a password the panel generates. Your notebooks live in a Docker volume, so they survive restarts and redeploys. It is the base image: libraries such as pandas, numpy and altair are not preinstalled, and you add them from marimo's package panel when a notebook needs them.
- Free and open source (Apache 2.0)
- Notebooks saved as plain .py files
- Python 3.13 in the container
Section 02Features
What you can do with marimo
Reactive cells
Run a cell and marimo reruns every cell that uses its variables. Delete a cell and its variables leave memory too, so the outputs match the code.
Inputs without callbacks
Bind sliders, dropdowns, text fields, tables and chat boxes to Python. When you change one, the cells that use it run again with the new value.
Explore dataframes
Page through, search, filter and sort a dataframe in an interactive table, with no code. Install pandas or polars from the package panel first.
SQL next to Python
Query dataframes, CSV files and databases such as SQLite and Postgres in SQL cells, and get the result back as a dataframe. SQL cells need extra packages, including DuckDB, that you install from the package panel.
Plain Python files
Each notebook is a .py file that reads cleanly in git and runs with python notebook.py. From the editor you can also download it as HTML, Markdown, PDF or a Jupyter notebook.
App view and slides
Toggle app view to see the notebook as an app with the code hidden, drag outputs onto a grid, or present it as slides.
Section 03Requirements
What you need
A fresh Ubuntu server you can log in to as root. The installer checks all of this before it changes anything.
| Requirement | marimo on Docker |
|---|---|
| Operating system | Ubuntu 24.04 or 26.04 LTS (x86-64) |
| CPU | 1 core or more |
| RAM | 1 GB or more |
| Disk | 10 GB or more (25 GB recommended) |
| Containers | marimo 0.25 (Python 3.13) |
| Ports | 80 and 443 open |
marimo publishes no CPU or RAM minimum, so these are the floor for any server: 1 GB is Ubuntu Server's minimum memory. Disk: about 6.5 GB is in use once the panel and marimo are installed on our test server; 25 GB is Ubuntu's recommendation.
Section 04Install
How to install marimo
Every step happens in the ServerAvatar panel. No terminal needed.
Pick marimo in 1-Click Recipes
On your server, open Applications, click Create application and search for marimo under 1-Click Recipes.
Name it and choose a domain
Give the app a name and use your own domain, or a temporary one that works right away. The panel creates a system user for it.
Create it
Click Create application. The panel starts marimo, turns HTTPS on and shows the sign-in password it generated. Copy it somewhere safe.
Sign in with the access token
Open the app's domain. marimo's login page asks for an access token: enter the password from the panel; there is no username. marimo opens its home page, where the Workspace section lists your notebooks folder; there you create a new notebook and start writing cells.
Section 05FAQ
Questions,answered.
Can't find the answer you're looking for? Reach out to our customer support.
Contact supportRisk free
Deploy your first appin 10 minutes.
Connect a server, pick an application and go live, with SSL and backups already in place.
- No credit card required
- Free 4-day trial
- Deploy in the next 10 minutes
