Repozitář: https://github.com/teng-lin/notebooklm-py/tree/main
Video, které mě inspirovalo k návodu:
Potřeboval jsem rozběhnout notebooklm-py v Dockeru, ale první přihlášení jsem nechtěl dělat uvnitř kontejneru. V Dockeru sice zvládnu CLI provoz, ale nemohu tam pohodlně spustit GUI prohlížeč pro autentizaci, takže login dělám na hostitelském počítači a do Dockeru pak přenesu hotový storage_state.json.
V Dockeru instaluji jen CLI nástroj:
pipx install notebooklm-py
Pak v kontejneru používám připravený adresář pro NotebookLM data:
/home/ubuntu/.notebooklm
Na hostu dělám jen jednorázový login přes Playwright a prohlížeč.
Na hostu jsem si pro login připravil vlastní virtuální prostředí, abych nemíchal browser závislosti se systémovým Pythonem.
mkdir -p ~/notebooklm cd ~/notebooklm python3 -m venv .venv source .venv/bin/activate pip install "notebooklm-py[browser]" playwright install chromium
Po úspěšném přihlášení mi vznikl soubor:
$HOME/notebooklm/.notebooklm/storage_state.json
Jakmile jsem dokončil přihlášení na hostu, zkopíroval jsem storage_state.json do kontejneru. Cílově ho chci mít tady:
/home/ubuntu/.notebooklm/storage_state.json
V běžném provozu už v Dockeru nepotřebuji browser login. Stačí mi mít nainstalovaný nástroj přes pipx a přítomný storage_state.json.
Pak už používám notebooklm CLI normálně v kontejneru podle potřeby. Browser autentizaci znovu řeším jen ve chvíli, kdy přihlášení vyprší nebo potřebuji vytvořit nový stav cookies.
Protože v Dockeru používám AI, nestačí mi jen samotné CLI. Potřeboval jsem ještě nainstalovat skill, aby AI uměla s NotebookLM pracovat přímo.
Spustil jsem:
notebooklm skill install
Tím se připravil skill pro Claude a instalátor mi vypsal, kam ho uložil. Potom jsem si tento skill přesunul podle své potřeby na místo, odkud ho moje AI v Dockeru používá.
notebooklm-py[browser] a spouštím playwright install chromium.pipx install notebooklm-py.storage_state.json./home/ubuntu/.notebooklm.storage_state.json obsahuje přihlašovací cookies, takže ho nedávám do Gitu.notebooklm skill install.
Nejpraktičtější je udělat notebooklm login jednou na hostitelském počítači a do Dockeru přenést jen storage_state.json. Tím oddělím browser krok od běžného CLI použití a v kontejneru už nemusím řešit Playwright GUI.