um Jupyter-Notebook vergine
Seguindo um pacote do último concurso, encontrei um problema estranho.
Havia o requisito para instalar o jupyter-notebook.
Eu trabalho no Windows e havia algum Python antigo instalado.
Nenhuma grande surpresa: a instalação do jupyter-notebook falhou
Portanto, a versão mais recente do Python foi instalada rapidamente.
Grande decepção: a instalação do jupyter-notebook falhou novamente!
Porque a nova instalação do Python não atualizou a antiga.
E também a variável de ambiente PATH não foi limpa
Isso não ficou óbvio imediatamente e exigiu muito tempo e esforço.
Seguiram-se vários ciclos de instalação e desinstalação.
Depois de muita intervenção manual nas configurações do Windows,
Finalmente permitiu que o Jupyter-Notebook fosse iniciado.
Embora não estivesse disposto a operar no ambiente virtual (venv).
Este foi o ponto em que eu tinha apenas o suficiente.
Eu disse a mim mesmo: "O que você faz aqui é um absurdo!"
Depois de limpar meu espaço de trabalho e os rastros de todas as
instalações com falha (vários GB), adotei uma abordagem diferente.
- Minha ideia era usar minha instalação do Docker que funciona bem.
- Encontre um contêiner simples com o Jupyter-Notebook instalado
- Preencha-o com todos os módulos Python necessários
- Vincule seu diretório local ao contêiner. Portanto, uma cópia no contêiner não é necessária.
- Para não esquecer o mapeamento para a porta padrão 8888
O contêiner do Docker foi construído e executado em tempo zero
em comparação com todas as minhas tentativas anteriores.
Foi composto por estes 2 arquivos:
Dockerfile
ARG IMAGE=jupyter/base-notebook
FROM $IMAGE
USER root
COPY ./requirements.txt /tmp/requirements.txt
RUN pip3 install -r /tmp/requirements.txtSe você não tiver requisitos, apenas descomente as 2 últimas linhas.
docker-compose.yaml
version:'3.9'services: notebook: build: context:. dockerfile:Dockerfile entrypoint:jupyternotebook --allow-root --no-browser --ip0.0.0.0 --port8888 --NotebookApp.token='' --NotebookApp.password='' --notebook-dir=/ext ports: -8888:8888 volumes: -./:/extE agora, depois de iniciar o contêiner, seu Jupyter-Notebook está pronto para acesso.
http://localhost:8888/
Isso foi definitivamente mais fácil do que minhas tentativas anteriores.
Eu senti isso como um sucesso pessoal,
pois este era um território totalmente novo para mim.