Services are used to launch Tensorboards, Notebooks, JupyterHub apps, Streamlit/Voila/Bokeh apps, internal tools, and dashboards based on your models and data analysis.
In order to run a service you will need to create a component with a kind: service as a runtime:
kind: component
version: 1.1
name: notebook
run:
kind: service
ports: [8888]
container:
image: jupyter/tensorflow-notebook
command: ["jupyter", "lab"]
args: [
"--no-browser",
"--ip=0.0.0.0",
"--port={{globals.ports[0]}}",
"--allow-root",
"--NotebookApp.allow_origin=*",
"--NotebookApp.trust_xheaders=True",
"--NotebookApp.token=",
"--NotebookApp.base_url={{globals.base_url}}",
"--LabApp.base_url={{globals.base_url}}"
]The same example in Python:
from polyaxon.schemas import V1Component, V1Service
from polyaxon import k8s
service = V1Service(
ports=[8888],
container=k8s.V1Container(
image="jupyter/tensorflow-notebook",
command=["jupyter", "lab"],
args=[
"--no-browser",
"--ip=0.0.0.0",
"--port={{globals.ports[0]}}",
"--allow-root",
"--NotebookApp.allow_origin=*",
"--NotebookApp.trust_xheaders=True",
"--NotebookApp.token=",
"--NotebookApp.base_url={{globals.base_url}}",
"--LabApp.base_url={{globals.base_url}}"
]
),
)
component = V1Component(name="notebook", run=service)Specification
Please check the service specification guide to learn about all details for running services in Polyaxon.
For live development workflows, see interactive access for shell persistence, sandbox execution, and SSH access.