{"id":18033991,"url":"https://github.com/miolab/jupyterlab_elixir","last_synced_at":"2026-04-05T20:31:12.044Z","repository":{"id":55523139,"uuid":"306224571","full_name":"miolab/jupyterlab_elixir","owner":"miolab","description":"JupyterLab + Poetry + Docker環境で、Elixirを実行する（「fukuoka.ex Elixir／Phoenix Advent Calendar 2020」投稿記事サポート用リポジトリ）","archived":false,"fork":false,"pushed_at":"2020-12-23T22:27:47.000Z","size":20,"stargazers_count":0,"open_issues_count":2,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-10T07:15:39.714Z","etag":null,"topics":["circleci","docker","elixir","jupyterlab","poetry","python"],"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/miolab.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}},"created_at":"2020-10-22T04:43:12.000Z","updated_at":"2020-12-23T22:35:18.000Z","dependencies_parsed_at":"2022-08-15T02:20:42.939Z","dependency_job_id":null,"html_url":"https://github.com/miolab/jupyterlab_elixir","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/miolab%2Fjupyterlab_elixir","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/miolab%2Fjupyterlab_elixir/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/miolab%2Fjupyterlab_elixir/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/miolab%2Fjupyterlab_elixir/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/miolab","download_url":"https://codeload.github.com/miolab/jupyterlab_elixir/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247261584,"owners_count":20910105,"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":["circleci","docker","elixir","jupyterlab","poetry","python"],"created_at":"2024-10-30T11:09:13.647Z","updated_at":"2025-12-30T23:08:21.870Z","avatar_url":"https://github.com/miolab.png","language":"Jupyter Notebook","funding_links":[],"categories":[],"sub_categories":[],"readme":"# JupyterLab Elixir\n\n[![miolab](https://circleci.com/gh/miolab/jupyterlab_elixir.svg?style=svg)](https://github.com/miolab/jupyterlab_elixir)\n\n「fukuoka.ex Elixir／Phoenix Advent Calendar 2020」投稿記事のサポート用リポジトリ\n\n- [JupyterLab + Poetry + Docker環境で、Elixirを実行する](https://qiita.com/im_miolab/items/01ba3987330a587bd757)\n\n## 概要\n\n__JupyterLab__ で、Python __以外__ の開発言語も実行できるようにする。\n\n- 実行環境の構築は __Docker__ で行い、Pythonバージョン及びライブラリ管理は __Poetry__ で行います。\n- Poetryでは仮想環境の構築はスキップします。（Dockerコンテナの構築やってるため）\n- Elixirの対話型実行環境 __「IEx」__ をJupyterLabで実行します。\n  - JupyterカーネルのIElixirを使います。\n\n### モチベーション\n\n- JupyterLabではコマンドの実行結果をそのままファイル形式で保存できます。\n- そのため、たとえばElixirならIEx実行コマンドのコード管理にも役立てられる、ということがJupyterLabを実行するメリットのひとつです。\n- また、`Boyle` により、すぐにElixirライブラリの試用が可能となります。  \n  （mixファイルの準備とかimport hogeとかしなくてもいい）\n\n### 実行環境\n\n- MacOS\n- Docker (docker-compose)\n\n## 環境構築\n\n\n- 任意のプロジェクト名でディレクトリを作ります\n- ディレクトリ直下に、以下の3ファイルを用意します\n\n  ```terminal\n  .\n  ├── Dockerfile\n  ├── docker-compose.yml\n  └── pyproject.toml\n  ```\n\n## 実行\n\n```terminal\n$ cd hogehoge（ファイルを用意したディレクトリ）\n\n$ docker-compose build\n\n$ docker-compose up\n```\n\n- コンテナが起動したら、ブラウザで [localhost:8890](http://localhost:8890) を確認します。\n\n  \u003cimg width=\"599\" alt=\"jupyter_ex1\" src=\"https://user-images.githubusercontent.com/33124627/102766011-d1593b80-43c0-11eb-8d06-2246098404f3.png\"\u003e\n\n  - Elixirカーネルを追加することができました。\n\n  \u003cimg width=\"716\" alt=\"jupyter_ex2\" src=\"https://user-images.githubusercontent.com/33124627/102766016-d4542c00-43c0-11eb-917b-ce48e606436d.png\"\u003e\n\n  - Elixirのコマンド実行もできています。\n\n  - JupyterLabでの実行結果をファイルで保存できるので便利。\n\n### ElixirのライブラリをJupyterLabで使う\n\n- `Boyle.install({:math, \"~\u003e 0.5.0\"})` のようにコードを書くことで、ライブラリの使用が可能となります。\n\n  \u003cimg width=\"745\" alt=\"math_ex\" src=\"https://user-images.githubusercontent.com/33124627/102885673-18b1fb80-4497-11eb-95a6-f3dad9a1c8e3.png\"\u003e\n\n  - [math (Hex)](https://hex.pm/packages/math)\n\n---\n\n### 参考\n\n- GitHub\n\n  - [Jupyter kernels](https://github.com/jupyter/jupyter/wiki/Jupyter-kernels)\n\n    - [IElixir](https://github.com/pprzetacznik/IElixir)\n\n      - [example Using](https://github.com/pprzetacznik/IElixir/blob/master/resources/example.ipynb)\n\n      - [ZeroMQ header files missing](https://github.com/pprzetacznik/IElixir#zeromq-header-files-missing)\n\n      ```terminal\n      ===\u003e /IElixir/deps/erlzmq/c_src/erlzmq_nif.c:24:10: fatal error: zmq.h: No such file or directory\n        #include \"zmq.h\"\n                  ^~~~~~~\n      compilation terminated.\n      ```\n\n      - [Boyle usage](https://github.com/pprzetacznik/IElixir/blob/master/resources/boyle%20example.ipynb)\n\n        - https://github.com/pprzetacznik/IElixir/blob/master/resources/boyle%20example%20-%20matrex%20installation%20and%20usage.ipynb\n\n        - https://github.com/pprzetacznik/IElixir/blob/master/resources/inlineplot%20example%20-%20gnuplot.ipynb\n\n- Docker\n\n  - [Python](https://hub.docker.com/_/python)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmiolab%2Fjupyterlab_elixir","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmiolab%2Fjupyterlab_elixir","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmiolab%2Fjupyterlab_elixir/lists"}