{"id":17951084,"url":"https://github.com/marcusschiesser/dockerize-jupyter","last_synced_at":"2026-05-16T22:03:28.430Z","repository":{"id":66459242,"uuid":"433388257","full_name":"marcusschiesser/dockerize-jupyter","owner":"marcusschiesser","description":"Serve any Jupyter notebook as a REST API using Docker using the Kernel-Gateway","archived":false,"fork":false,"pushed_at":"2021-11-30T10:33:49.000Z","size":1,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":3,"default_branch":"main","last_synced_at":"2025-02-09T04:43:00.498Z","etag":null,"topics":["docker","jupyter","jupyter-notebook","rest","rest-api"],"latest_commit_sha":null,"homepage":"","language":"Jupyter Notebook","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/marcusschiesser.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2021-11-30T10:30:53.000Z","updated_at":"2021-11-30T10:34:32.000Z","dependencies_parsed_at":"2023-02-28T19:46:05.899Z","dependency_job_id":null,"html_url":"https://github.com/marcusschiesser/dockerize-jupyter","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/marcusschiesser%2Fdockerize-jupyter","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/marcusschiesser%2Fdockerize-jupyter/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/marcusschiesser%2Fdockerize-jupyter/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/marcusschiesser%2Fdockerize-jupyter/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/marcusschiesser","download_url":"https://codeload.github.com/marcusschiesser/dockerize-jupyter/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247033813,"owners_count":20872532,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["docker","jupyter","jupyter-notebook","rest","rest-api"],"created_at":"2024-10-29T09:42:39.745Z","updated_at":"2026-05-16T22:03:23.388Z","avatar_url":"https://github.com/marcusschiesser.png","language":"Jupyter Notebook","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Dockerize-Jupyter\n\nServe any Jupyter notebook as a REST API using Docker using the [Kernel-Gateway](https://jupyter-kernel-gateway.readthedocs.io/en/latest/index.html).\n\n## Development\n\nFirst build the Docker image:\n\n```bash\ndocker build -t jupyter .\n```\n\nThen start the Jupyter server with the local `notebooks` directory mapped:\n\n```bash\ndocker run -p 8888:8888 -v $PWD/notebooks:/app/notebooks jupyter jupyter notebook --allow-root --ip=0.0.0.0 --notebook-dir=/app/notebooks\n```\n\nYou can then directly develop new notebooks from the Jupyter application by opening the link starting with http://127.0.0.1 in your browser. It's possible to expose each notebook cell as a REST endpoint, see [Kernel-Gateway documentation](https://jupyter-kernel-gateway.readthedocs.io/en/latest/http-mode.html).\n\n\u003e **Note:** If you need specific libraries from [PyPi](https://pypi.org/), you can add them to the `requirements.txt` file and rebuild the image. E.g. for adding `pandas`, add `pandas==1.3.4` to the `requirements.txt` file.\n\nAfter finishing development, you have to rebuild the image, to ensure that the latest changes of the notebook files are included in\nthe image. You can then run the image to serve the notebook as a REST server\n\n## Run Server\n\nRun the following command to run the Jupyter Docker image as a REST server:\n\n```bash\ndocker run -p 8888:8888 -e KG_SEED_URI=notebooks/test.ipynb jupyter\n```\n\nThe `KG_SEED_URI` environment variable is used to specify the notebook to be served.\n\nAfter starting up, you can test the API by using curl, e.g.:\n\n```bash\ncurl http://127.0.0.1:8888/test/123\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmarcusschiesser%2Fdockerize-jupyter","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmarcusschiesser%2Fdockerize-jupyter","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmarcusschiesser%2Fdockerize-jupyter/lists"}