He iniciado un servidor Jupyter Notebook en mi servidor centos6.5 y jupyter se ejecuta como
[I 17:40:59.649 NotebookApp] Serving notebooks from local directory: /root
[I 17:40:59.649 NotebookApp] 0 active kernels
[I 17:40:59.649 NotebookApp] The Jupyter Notebook is running at:https://[all ip addresses on your system]:8045/
[I 17:40:59.649 NotebookApp] Use Control-C to stop this server and shut down all kernels (twice to skip confirmation).
Cuando quiero acceder a Jupyter de forma remota en la misma red de área local, diga abrir http://192.168.1.111:8045/
, no puedo abrir una página de Jupyter en absoluto. Por cierto, puedo acceder al servidor centos remoto con éxito.
¿Cuál es la posible razón?
fuente
jupyter notebook --ip 0.0.0.0
, puede decidir el tiempo de ejecución con el mismo resultado, pero sin la necesidad de un archivo de configuración.Logré obtener acceso a mi servidor local por ip usando el comando que se muestra a continuación:
reemplace el
xx.xx.xx.xx
por su ip local del servidor jupyter.fuente
jupyter notebook --ip 0.0.0.0 --port 8888
0.0.0.0
permitirá el acceso al portátil en todas las interfaces de red, no solo en el host local. Si lo está ejecutando y accediendo a él en la misma máquina, o si está ejecutando un servidor como nginx frente a él, debe limitarlo127.0.0.1
solo aJames023 ya indicó la respuesta correcta. Solo formateándolo
si aún no ha configurado el archivo jupyter_notebook_config.py
Paso 1: genere el archivo escribiendo esta línea en la consola
Paso 2: editar los valores
(agregue las siguientes dos líneas en cualquier lugar porque los valores predeterminados se comentan de todos modos)
c.NotebookApp.allow_origin = '*'
#permitir todos los orígenesc.NotebookApp.ip = '0.0.0.0'
# escuchar en todas las IPPaso 3: una vez que hayas cerrado el gedit, en caso de que tu puerto esté bloqueado
sudo ufw allow 8888
# habilite su puerto tcp: 8888, que es su puerto jupyter predeterminadoPaso 4: establezca una contraseña
jupyter notebook password
# le pedirá la contraseñaPaso 5: inicie jupyter
y conectarse como http://xxx.xxx.xxx.xxx:8888/login ?
fuente
c.NotebookApp.allow_origin
, agreguec=get_config()
. También al abrir el enlace en su computadora personal, en lugar de usarhttps
usehttp
. por lo que abrirá algo comohttp://external_ip_from_GCP_console:8888
. el usohttp
es importante, es un pequeño detalle y fácil de superponer. Gracias @Koushik por compilar la respuesta. Elegí tu respuesta porque funcionó para mí.En RedHat 7, debemos permitir el puerto específico antes de ejecutar el comando de Jupiter. Digamos que el puerto es
8080
.Entonces podemos ejecutarlo normalmente. Por ejemplo, usando:
o lo que quieras.
fuente
ip
yport
es perfectoAlternativamente, puede simplemente crear un túnel al servidor:
Luego, simplemente ábralo
127.0.0.1:8888
en su navegador.También omite
-i <your_key>
si no tiene un archivo_identidad.fuente
8888:127.0.0.1:8888
, el primero8888
es el puerto de la máquina local, el último es el puerto de la máquina remota.ssh your_username@host_ip_address -L your_port:127.0.0.1:remote_port
funciona en mi caso. Gracias.Desde su línea de comando, podemos ver que su servidor jupyter se está ejecutando normalmente. La razón por la que no puede acceder a su servidor jupyter remoto es que las reglas de firewall de su servidor centos6.5 remoto bloquean la solicitud entrante de su navegador local, es decir, bloquean su tcp: Puerto 8045.
sudo ufw allow 80 # enable http server
sudo ufw allow 443 # enable https server
sudo ufw allow 8045 # enable your tcp:8045 port
luego intente acceder a su jupyter nuevamente.
Quizás también necesite descomentar y editar ese lugar en su
jupyter_notebook_config.py
archivo:e incluso apague su VPN si tiene una.
fuente
La otra razón puede ser un firewall. Tuvimos el mismo problema incluso con
cuaderno jupyter --ip xx.xx.xx.xxx --port xxxx.
Entonces resulta ser un firewall en nuestro nuevo centOS7.
fuente
Estoy usando Anaconda3 en Windows 10. Cuando lo instale, recuerde marcar "agregar a variables de entorno".
Requisito previo: un archivo de configuración de portátil
Comprobar para ver si tiene un archivo de configuración portátil,
jupyter_notebook_config.py
. La ubicación predeterminada para este archivo es su carpeta Jupyter ubicada en su directorio de inicio:C:\\Users\\USERNAME\\.jupyter\\jupyter_notebook_config.py
/Users/USERNAME/.jupyter/jupyter_notebook_config.py
/home/USERNAME/.jupyter/jupyter_notebook_config.py
Si aún no tiene una carpeta de Jupyter, o si su carpeta de Jupyter no contiene un archivo de configuración de notebook, ejecute el siguiente comando:
PS
jupyter notebook --generate-config
Este comando creará la carpeta Jupyter si es necesario, y creará el archivo de configuración del cuaderno
jupyter_notebook_config.py
, en esta carpeta.De forma predeterminada, Jupyter Notebook solo acepta conexiones desde localhost.
Edite el
jupyter_notebook_config.py
archivo de la siguiente manera para aceptar todas las conexiones entrantes:c.NotebookApp.allow_origin = '*' #allow all origins
También deberá cambiar las direcciones IP en las que escuchará el portátil:
c.NotebookApp.ip = '0.0.0.0' # listen on all IPs
fuente
si está utilizando el entorno Conda, debe volver a configurar el archivo de configuración. Y la ubicación del archivo será algo como esto. No configuré el archivo de configuración después de crear env en Conda y ese fue mi problema de conexión.
fuente
Si todavía tiene problemas y está ejecutando algo como una instancia EC2 de AWS, puede ser solo un caso de abrir el puerto a través de la consola de AWS.
mira esta respuesta
fuente
Tengo el mismo problema, pero ninguna de las soluciones anteriores funciona para mí. Pero si configuro una computadora portátil jupyter de la versión Docker, con la misma configuración, me funciona.
Para mi situación, podrían ser problemas con las reglas de iptables. A veces puede usar
ufw
para permitir todas las rutas a su servidor. Pero el mío soloiptables -F
para borrar todas las reglas. Entonces revisaiptables -L -n
si funciona.Problema fijo.
fuente
edite lo siguiente en el archivo jupyter_notebook_config
ingrese la dirección IP real de la computadora
c.NotebookApp.ip = '192.168.xx'
c.NotebookApp.allow_origin = '*'
en el lado del cliente, inicie el cuaderno jupyter con contraseña de inicio de sesión contraseña del
cuaderno jupyter
después de configurar la contraseña, inicie sesión en el navegador y luego escriba la dirección IP del servidor remoto seguida del puerto. ejemplo 192.168.1.56:8889
fuente
Intente hacer el siguiente paso:
El siguiente comando corrige la lectura / escritura
fuente
¿Es esa su dirección IP privada? Si es así, necesitará usar su público. Vaya a ipchicken para averiguar qué es. Sé que está en la misma LAN, pero intente esto para ver si resuelve algún problema.
fuente
Cualquiera que todavía esté atascado, siga las instrucciones de esta página .
Básicamente:
Siga los pasos descritos inicialmente por AWS.
source activate python3
No cortes ni pegues nada. En su lugar, abra una nueva ventana de terminal sin cerrar la primera.
En la nueva ventana ingrese ingrese el comando SSH como se describe en el enlace anterior.
Abra un navegador web y vaya a http://127.0.0.1:8157
fuente