Now API key registration is open (beta)!
For more fun, we have also released an Atom editor / Visual Studio Code plugin,
that runs your code directly from the editor without installing anything else!
- Search and install
live-code-runnerin Atom’s package manager.
- Get Sorna API access / secret key at Sorna Cloud
- Type your keys on package preferences page.
- You are ready to go!
All you need is Python 3.6 or higher.
(Yes, it works as well on Windows!)
Just do some magic on your command line:
$ pip install sorna-client $ export SORNA_ACCESS_KEY=... $ export SORNA_SECRET_KEY=...
Then run the following Python code:
from sorna.kernel import Kernel kern = Kernel('lua5') result = kern.execute('print("hello world!")', mode='query') print(result['console']) # hello world! kern.destroy()
Now you have executed a real Lua code without installing Lua (in our clouds)!
Coming soon: run your code from the command line!
$ python -m sorna --gpu my-tensorflow-model.py some-data.csv
Coming soon: compile your code as well!
$ python -m sorna --build="make" --exec="./main" main.c lib.c lib.h Makefile
There are many more languages you can use. Currently Sorna supports 11 programming languages now.
You may run also your own Sorna API server on your machines.
* Python 3.6+, Linux 64bit or macOS, Docker 1.12+ required
Sorna consists of three loosely coupled components.
sorna-gateway: Provides an HTTP REST API server and routes user code snippets to agents.
sorna-agent: Executes user code snippets inside Docker containers.
sorna-repl: The Docker containers with REPL (read-evaluate-print-loop) daemons in various programming languages.
We call each code-running container a kernel. All kernels have our custom-built sandbox (called “sorna-jail”) that secures our infrastructure on the system-call level.
- Q: Why “Sorna”?
It’s an acronym for “Software on Remote Networking Appliances”. Kidding?
Here is the real origin…
- Q: vs. AWS Lambda?
Sorna has no packaging process — just run your code snippets on-the-fly.
- Q: vs. Apache Zeppelin / Jupyter Notebooks?
Sorna is a pure back-end API with an optional front-end helper library (sorna-media). It can be plugged into existing front-ends including Jupyter and Zeppelin as well to extend their computation capabilities to cloud-scale! We plan to provide such integration in the future.
Sorna and its sub-projects are distributed under GNU Lesser Public License (LGPL) 2.0.