Skip to main content

What is Selfmade Ninja Labs

Selfmade Ninja Labs gives you labs — private Linux machines that run in the cloud. Each one is yours: root access, a terminal, VS Code in the browser, SSH, persistent storage, and a private tunnel from your own laptop or phone.

Use a lab to develop, host a site, run a database, practise security, or teach.

What you can do

Run a labPick from ready-made environments and deploy in about a minute.
Reach it privatelyAdd a device once; it reaches every lab you own over an encrypted tunnel.
Publish itAttach a domain and serve over HTTPS. Certificates are handled for you.
Add a databaseMySQL, MariaDB, PostgreSQL, MongoDB, Redis or RabbitMQ, reachable from inside your labs.
Build your own environmentDefine a lab once and deploy it repeatedly.
Work with an AI assistantConnect an editor or AI client and let it read, write and run things in your lab.
Learn and competeGuided lessons, quizzes, coding challenges and security labs.

Two kinds of lab

Machine labs are working environments — Ubuntu, Docker, Node-RED, n8n, Kali, Jupyter and more. You get root, and your files persist.

Challenge labs are security exercises. Each has a story, a set of missions, a flag to capture, and a scoreboard.

What persists, and what does not

This is the single most useful thing to understand early.

  • Your home directory persists. Files there survive stopping, restarting and redeploying.
  • Everything else resets when the lab is rebuilt. Install packages through a startup script so they come back every time.
  • Storage is per account, not per lab. One storage area is mounted into every lab you run, so a file written in one is immediately in all of them — and your quota is shared across them.
Start here

New? Deploy your first lab takes about five minutes and needs nothing installed.

Where to go next

Search everything

Press Ctrl + K ( + K on a Mac), or use the search box at the top, to search every page, including the admin guide.

Stories and step-by-step guides

The Selfmade Ninja blog has walkthroughs, event write-ups and student posts that go with these docs. Good places to start:

PostGoes with
Connect Selfmade Ninja Labs MCP to ChatGPT and ClaudeConnect ChatGPT or Claude
How to play CTF challenges in Selfmade Ninja LabsChallenge labs
Connect MySQL to VS Code via Selfmade Ninja LabsRelational databases
NGINX RTMP lab: live streaming guidePublish ports

Browse by topic: Labs · Getting started · Hosting · CTF challenges · Updates