[PYTHON] Versuchen Sie, Polynote zu installieren

Ich habe eine Software namens "Polynote" wie Jupyter Notebook installiert, die sowohl Scala als auch Python gleichzeitig verwenden kann.

Anstatt Python- und Scala-Notizen zu machen, können Sie Python und Scala in einer Note mischen!

Polynote offizielle Website Polynote | The polyglot Scala notebook

Einführungsartikel zu Polynote Netflix’s Polynote is a New Open Source Framework to Build Better Data Science Notebooks | by Jesus Rodriguez | DataSeries | Aug, 2020 | Medium

Installationsverfahren

  1. Installieren Sie Python
  2. Installieren Sie Java
  3. Installieren Sie Polynote
  4. Installieren Sie das Paket, das Sie verwenden möchten, aus Polynote-Notizen
  5. Starten Sie Polynote

1. Installieren Sie Python

Installieren Sie Python3. Diesmal habe ich 3.8.1 mit pyenv installiert.

Wenn ich Python normal mit pyenv installiert habe, ist bei der Installation von Polynote selbst der folgende Fehler in pip install -r. / Requirements.txt aufgetreten. Es scheint, dass das Erstellen des Pakets "jep", von dem Polynote abhängt, fehlschlägt.

    /usr/bin/ld: /home/xxxx/.pyenv/versions/3.8.1/lib/libpython3.8.a(floatobject.o): relocation R_X86_64_PC32 against symbol `PyFloat_Type' can not be used when making a shared object; recompile with -fPIC
    /usr/bin/ld: final link failed: bad value
    collect2: error: ld returned 1 exit status
    error: command 'gcc' failed with exit status 1

Ich verstehe den Grund nicht, aber ich konnte den Fehler vermeiden, indem ich ihn mit der folgenden Option an pyenv installierte.

$ PYTHON_CONFIGURE_OPTS="--enable-shared" pyenv install -v --force 3.8.1

2. Installieren Sie Java

Installieren Sie Java 11.

Offizielle Dokumentation besagt, dass Java 8 und 11 unterstützt, aber 11 ist gut.

Zuerst bin ich um 8 gelaufen. Obwohl es startet, erhalte ich viele Fehlermeldungen sowohl in der Befehlszeile als auch im Browser, insbesondere das Sammlungsframework von Scala ist nutzlos. AbstractMethodError und NullPointerException treten häufig auf.

3. Installieren Sie Polynote

$ wget 'https://github.com/polynote/polynote/releases/download/0.3.11/polynote-dist.tar.gz'
$ tar xvzf polynote-dist.tar.gz  
$ cd polynote
$ pip install -r ./requirements.txt

4. Installieren Sie das Paket, das Sie verwenden möchten, aus Polynote-Notizen

Installieren Sie das Paket wie Sie möchten.

$ pip install matplotlib

5. Starten Sie Polynote

$ python ./polynote.py

[INFO]   Loading configuration from config.yml
[INFO]   Loaded configuration: PolynoteConfig(Listen(8192,127.0.0.1),KernelConfig(None,None),Storage(tmp,notebooks,Map(),Wal(false)),List(),List(),Map(),None,Behavior(true,Always,List()),Security(None,None),UI(/),Credentials(None),Map(),StaticConfig(None,None))
[WARN]   Polynote allows arbitrary remote code execution, which is necessary for a notebook tool to function.
   |     While we'll try to improve safety by adding security measures, it will never be completely safe to
   |     run Polynote on your personal computer. For example:
   |
   |     - It's possible that other websites you visit could use Polynote as an attack vector. Browsing the web
   |       while running Polynote is unsafe.
   |     - It's possible that remote attackers could use Polynote as an attack vector. Running Polynote on a
   |       computer that's accessible from the internet is unsafe.
   |     - Even running Polynote inside a container doesn't guarantee safety, as there will always be
   |       privilege escalation and container escape vulnerabilities which an attacker could leverage.
   |
   |     Please be diligent about checking for new releases, as they could contain fixes for critical security
   |     flaws.
   |
   |     Please be mindful of the security issues that Polynote causes; consult your company's security team
   |     before running Polynote. You are solely responsible for any breach, loss, or damage caused by running
   |     this software insecurely.
[INFO]
   |       _____      _                   _
   |      |  __ \    | |                 | |
   |      | |__) |__ | |_   _ _ __   ___ | |_ ___
   |      |  ___/ _ \| | | | | '_ \ / _ \| __/ _ \
   |      | |  | (_) | | |_| | | | | (_) | ||  __/
   |      |_|   \___/|_|\__, |_| |_|\___/ \__\___|
   |                     __/ |
   |                    |___/
   |
[INFO]   Polynote version 0.3.11
[INFO]   Server listening on http://localhost:8192/

Wenn Sie mit einem Browser auf Port 8192 zugreifen, sieht der Bildschirm etwas anders aus als das Jupyter-Notizbuch, und Sie können Notizen erstellen.

Das Folgende ist ein Ausführungsbeispiel. Sie können Python und Scala mischen.

image.png

Recommended Posts

Versuchen Sie, Polynote zu installieren
Versuchen Sie, Chainer-Gogh zu installieren
Versuchen Sie, Sonnet zu installieren (Hinweis)
Versuchen Sie, OpenAM unter Amazon Linux zu installieren
Versuchen Sie, OpenCV 3.0 auf dem AMI zu installieren
Python installieren 3.4.3.
Versuchen Sie Python
Versuchen Sie PyOpenGL
Versuchen Sie, GeoSpark (Apache Sedona) in einer Python-Umgebung zu installieren