Rstudio
(→Corriendo RStudio) |
|||
(No se muestran 11 ediciones intermedias realizadas por 2 usuarios) | |||
Línea 6: | Línea 6: | ||
=== Desde la red del CIMA === |
=== Desde la red del CIMA === |
||
− | Si tu computadora está conectada a la red del CIMA, lo único que tenés que hacer es ir a un explorador e ir a la dirección SERVIDOR:8787. Donde SERVIDOR es la dirección del servido. Esto te va a llevar a la página de login donde tenés que usar tu usuario y contraseña del servidor. En la imágen de abajo, por ejemplo, se muestra la página de login en vegeta.cima.fcen.uba.ar |
+ | Si tu computadora está conectada a la red del CIMA, lo único que tenés que hacer es ir a un explorador e ir a la dirección SERVIDOR:8787. Donde SERVIDOR es la dirección del servidor que quieras usar. Esto te va a llevar a la página de login donde tenés que usar tu usuario y contraseña del servidor. En la imágen de abajo, por ejemplo, se muestra la página de login en vegeta.cima.fcen.uba.ar |
− | [[Archivo:Screenshot_from_2020-05-27_16.10.52.png|500px]] |
+ | [[Archivo:Screenshot_from_2020-05-27_16.10.52.png]] |
Una vez iniciada la sesión, se te va a abrir una sesión de RStudio igual que cualquier otra: |
Una vez iniciada la sesión, se te va a abrir una sesión de RStudio igual que cualquier otra: |
||
− | [[Archivo:Screenshot_from_2020-05-27_16.17.19.png|500px]] |
+ | [[Archivo:Screenshot_from_2020-05-27_16.17.19.png]] |
=== Desde cualquier otra red === |
=== Desde cualquier otra red === |
||
Línea 19: | Línea 19: | ||
==== Setup ==== |
==== Setup ==== |
||
− | Si tu computadora está conectada a una red externa (por ejemplo, en tu casa), primero hay que hacer un tunel, lo cual necesita un poco de preparación previa. Primero, desde tu computadora corré estos comandos, cambiando el usuario en la primera línea. |
+ | Si tu computadora está conectada a una red externa (por ejemplo, en tu casa), primero hay que hacer un tunel para conectarse a través de portal, lo cual necesita un poco de preparación previa. Primero, necesitás crear las llaves ssh desde tu computadora. Podés correr estos comandos uno a uno, cambiando el usuario en la primera línea para configurar las llaves si nunca lo hiciste. |
<pre> |
<pre> |
||
export USUARIO=tu usuario en el servidor |
export USUARIO=tu usuario en el servidor |
||
− | + | </pre> |
|
+ | <pre> |
||
ssh-keygen |
ssh-keygen |
||
+ | </pre> |
||
+ | <pre> |
||
ssh-copy-id $USUARIO@portal.cima.fcen.uba.ar |
ssh-copy-id $USUARIO@portal.cima.fcen.uba.ar |
||
</pre> |
</pre> |
||
Línea 40: | Línea 42: | ||
<pre> |
<pre> |
||
export USUARIO=tu usuario en el servidor |
export USUARIO=tu usuario en el servidor |
||
+ | </pre> |
||
+ | <pre> |
||
export SERVIDOR=el servidor que tiene rstudio server |
export SERVIDOR=el servidor que tiene rstudio server |
||
− | + | </pre> |
|
+ | <pre> |
||
ssh-keygen |
ssh-keygen |
||
+ | </pre> |
||
+ | <pre> |
||
ssh-copy-id $USUARIO@$SERVIDOR |
ssh-copy-id $USUARIO@$SERVIDOR |
||
</pre> |
</pre> |
||
Línea 52: | Línea 58: | ||
</pre> |
</pre> |
||
− | Si todo salió bien, no debería pedirte contraseña y está todo listo. |
+ | Si todo salió bien, no debería pedirte contraseña y está todo listo. |
==== Corriendo RStudio ==== |
==== Corriendo RStudio ==== |
||
Línea 63: | Línea 69: | ||
Si todo salió bien, ahora andá a un explorador y andá a "localhost:4571" y vas a ver la ventana de login de RStudio! 🎉️ |
Si todo salió bien, ahora andá a un explorador y andá a "localhost:4571" y vas a ver la ventana de login de RStudio! 🎉️ |
||
+ | |||
+ | Es medio confuso. Para aclarar: el puerto 8787 es el puerto del servidor remoto donde "corre" RStudio Server y no se puede cambiar. El puerto 4571 es el puerto local, que puede ser cualquier puerto disponible de la máquina local. El tráfico que pasa por ese puerto pasa al puerto 8787 del servidor remoto. |
||
=== Poniendo las cosas en un script === |
=== Poniendo las cosas en un script === |
||
− | Para no tener que acordarse y escribir todo eso cada vez que querés usar RStudio Server desde tu compu, podés meter eso en un script. Si corrés el comando de abajo (agregando tu usuario, servidor y cambiando el puerto si querés), se va a crear un script ejecutable en ~/bin/rstudioserver. |
+ | Para no tener que acordarse y escribir todo eso cada vez que querés usar RStudio Server desde tu compu, podés meter eso en un script. El siguiente script primero cierra el tunel, si existía, y lo crea de nuevo y luego abre firefox la dirección y puerto correcto. Modificá NOMBRE, USUARIO y SERVER (y el puerto, si querés), guardalo en la carpeta ~/bin/, hacelo ejecutable (con chmod +x archivo) y luego lo vas a poder correr invocando el nombre del archivo. |
<pre> |
<pre> |
||
− | echo '#!/bin/bash |
+ | !/bin/bash |
− | export USUARIO=tu usuario |
+ | pkill -f rstudio_tunnel |
− | export SERVER=servidor con rstudio |
+ | bash -c "exec -a rstudio_tunnel ssh -f USUARIO@portal.cima.fcen.uba.ar -L 4571:SERVER:8787 -N &" |
− | export PUERTO=4571 |
||
− | export NOMBRE=rstudio_tunnel |
||
− | + | firefox localhost:4571 |
|
− | pkill -f $NOMBRE |
||
− | bash -c "exec -a $NOMBRE ssh -f $USUARIO@portal.cima.fcen.uba.ar -L $PUERTO:$SERVIDOR:8787 -N &" |
||
− | |||
− | firefox localhsot:$PUERTO' > ~/bin/rstudioserver |
||
− | chmod +x ~/bin/rstudioserver |
||
</pre> |
</pre> |
||
− | La penúltima línea asume que tenés firefox instalado. Podés cambiar esa línea por alguna que ejecute tu explorador favorito. |
+ | Si no tenés firefox o querés usar otro explorador, cambiá la última línea. Si usás más de un servidor con RStudio Server, podés crear una copia de este script con otro nombre y cambiando el puerto y el nombre "rstudio_tunnel". |
− | |||
− | Una vez que corras esas líneas, abrí una nueva terminal y vas a poder abrir RStudio Server con sólo escribir rstudioserver. |
||
− | |||
− | Si tenés varios servidores donde corrés RStudio Server, podés crear archivos distintos. Lo importante es que cambies PUERTO y NOMBRE para que sean distintos. |
Última revisión de 23:26 27 mayo 2020
Contenido |
[editar] Usando RStudio Server en el servidor
Si el servidor del CIMA que estás usando tiene RStudio Server instalado y corriendo (preguntá a tu soporte amigo), podés acceder a él desde cualquier computadora y correr R remotamente.
[editar] Desde la red del CIMA
Si tu computadora está conectada a la red del CIMA, lo único que tenés que hacer es ir a un explorador e ir a la dirección SERVIDOR:8787. Donde SERVIDOR es la dirección del servidor que quieras usar. Esto te va a llevar a la página de login donde tenés que usar tu usuario y contraseña del servidor. En la imágen de abajo, por ejemplo, se muestra la página de login en vegeta.cima.fcen.uba.ar
Una vez iniciada la sesión, se te va a abrir una sesión de RStudio igual que cualquier otra:
[editar] Desde cualquier otra red
[editar] Setup
Si tu computadora está conectada a una red externa (por ejemplo, en tu casa), primero hay que hacer un tunel para conectarse a través de portal, lo cual necesita un poco de preparación previa. Primero, necesitás crear las llaves ssh desde tu computadora. Podés correr estos comandos uno a uno, cambiando el usuario en la primera línea para configurar las llaves si nunca lo hiciste.
export USUARIO=tu usuario en el servidor
ssh-keygen
ssh-copy-id $USUARIO@portal.cima.fcen.uba.ar
Esto genera un par de claves rsa. Cuando te pida que confirmes el lugar donde guardar la clave ("Enter file in which to save the key (/home/USUARIO/.ssh/id_rsa)") dale enter. Luego te va a pedir una contraseña para esa clave (opcional). Luego va a copiar la clave pública a portal.cima.fcen.uba.ar. Te va a pedir tu contraseña (la que usás para entrar al servidor, no la de la clave que acabás de crear).
Ahora entrá a portal con el comando
ssh $USUARIO@portal.cima.fcen.uba.ar
Si todo anduvo bien, no debería pedirte contraseña y deberías estar en portal. Ahora vamos a hacer lo mismo, pero para poder logearte sin contraseña desde portal hacia el servidor donde querés correr RStudio Server. Es decir, sin salir de portal, corré estos comandos, modificando tu usuario y el servidor.
export USUARIO=tu usuario en el servidor
export SERVIDOR=el servidor que tiene rstudio server
ssh-keygen
ssh-copy-id $USUARIO@$SERVIDOR
Va a pasar lo mismo que antes. Finalmente, probá que todo esté andando usando corriendo este comando para entrar al servidor.
ssh $USUARIO@$SERVIDOR
Si todo salió bien, no debería pedirte contraseña y está todo listo.
[editar] Corriendo RStudio
Ahora cerrá esa terminal y abrí una nueva en tu computadora local y corré este comando, reemplazando USUARIO y SERVIDOR por tu usuario y el servidor donde está corriendo RStudio Server; el puerto 4571 es aleatorio y podés usar cualquiera que no esté en uso.
ssh -f USUARIO@portal.cima.fcen.uba.ar -L 4571:SERVIDOR:8787 -N &
Si todo salió bien, ahora andá a un explorador y andá a "localhost:4571" y vas a ver la ventana de login de RStudio! 🎉️
Es medio confuso. Para aclarar: el puerto 8787 es el puerto del servidor remoto donde "corre" RStudio Server y no se puede cambiar. El puerto 4571 es el puerto local, que puede ser cualquier puerto disponible de la máquina local. El tráfico que pasa por ese puerto pasa al puerto 8787 del servidor remoto.
[editar] Poniendo las cosas en un script
Para no tener que acordarse y escribir todo eso cada vez que querés usar RStudio Server desde tu compu, podés meter eso en un script. El siguiente script primero cierra el tunel, si existía, y lo crea de nuevo y luego abre firefox la dirección y puerto correcto. Modificá NOMBRE, USUARIO y SERVER (y el puerto, si querés), guardalo en la carpeta ~/bin/, hacelo ejecutable (con chmod +x archivo) y luego lo vas a poder correr invocando el nombre del archivo.
!/bin/bash pkill -f rstudio_tunnel bash -c "exec -a rstudio_tunnel ssh -f USUARIO@portal.cima.fcen.uba.ar -L 4571:SERVER:8787 -N &" firefox localhost:4571
Si no tenés firefox o querés usar otro explorador, cambiá la última línea. Si usás más de un servidor con RStudio Server, podés crear una copia de este script con otro nombre y cambiando el puerto y el nombre "rstudio_tunnel".