De forma predeterminada, puedes conectarte a los puertos HTTP 80 y a los puertos 1024 a 65535 en tus estaciones de trabajo desde el navegador. Para restringir los puertos a los que puedes conectarte en
tus estaciones de trabajo, configura allowedPorts
en la configuración de la estación de trabajo.
Las estaciones de trabajo en ejecución tienen una propiedad host que puedes usar para conectarte con HTTP desde un navegador remoto. Para encontrar la propiedad host, obtén detalles de una estación de trabajo en ejecución a través de la API, Google Cloud CLI, la Google Cloud consola o imprime la variable de entorno $WEB_HOST, que se establece automáticamente dentro de tu estación de trabajo.
La URL se conecta al puerto 80 de forma predeterminada.
Formato de URL de estación de trabajo predeterminado
De forma predeterminada, la URL de la propiedad host usa el siguiente formato:
https://PORT-WORKSTATION_NAME.CLUSTER_ID.cloudworkstations.dev
Los marcadores de posición representan lo siguiente:
PORT: Es el número de puerto, que es el puerto80de forma predeterminada.WORKSTATION_NAME: Es el nombre de la estación de trabajo.CLUSTER_ID: Es el identificador de clúster generado de forma aleatoria.cloudworkstations.dev: Es el nombre de dominio predeterminado para una estación de trabajo.Las URLs de los dominios personalizados usan un formato diferente. Para obtener más información sobre la configuración de dominios personalizados en Cloud Workstations, consulta Configura dominios personalizados para Cloud Workstations.
Conéctate a un puerto diferente cambiando la URL
Para conectarte a un puerto diferente, especifica un número de puerto diferente como prefijo. Por ejemplo, la siguiente URL se conecta al puerto 9900:
https://9900-myworkstation.cluster-12345abcde.cloudworkstations.dev
En este ejemplo, ten en cuenta lo siguiente:
9900: Representa el número de puerto.myworkstation: Representa el ID de la estación de trabajo.cluster-12345abcde: Representa el identificador del clúster.cloudworkstations.dev: Representa el nombre de dominio predeterminado para una estación de trabajo.
Estas URLs requieren la autenticación del usuario. Para abrir estas URLs, debes estar conectado y tener el rol de IAM de usuario de Cloud Workstations, roles/workstations.user, o el permiso workstations.workstations.use.
Conéctate a una app de HTTP desde la Google Cloud consola
Puedes conectarte a una app de HTTP que se ejecuta en una estación de trabajo desde la Google Cloud consola.
Para cualquier estación de trabajo en ejecución para la que tengas permisos de uso, verás un botón Launch. De forma predeterminada, este botón se conecta al puerto 80. Puedes
hacer clic en la arrow_drop_downflecha
de expansión junto a Launch para ver opciones de conexión alternativas. La opción Connect to app web on port te permite especificar un puerto diferente al que conectarte.
Conéctate a una app de HTTP desde el editor base
Para conectarte a una app que se ejecuta en tu estación de trabajo desde el editor base de Cloud Workstations, sigue una de estas instrucciones:
Haz clic en los vínculos de localhost en la terminal. El editor base redirecciona automáticamente los vínculos de localhost a las URLs correctas.
Para abrir una ventana de la terminal, haz clic en el menú Menu > Terminal > New Terminal. Como alternativa, presiona Control+Mayúsculas+` (o Comando+Mayúsculas+` en macOS).
En el símbolo del sistema, ejecuta el siguiente comando para mostrar el vínculo de localhost:
echo http://localhost:PORTReemplaza
PORTpor un número de puerto, como80o8080.Mantén presionado Control (o Comando en macOS) y, luego, haz clic en el vínculo de localhost.
Se abriráPORT-WORKSTATION-HOSTNAMEen tu navegador.
Usa la ventana del navegador: Navega a
https://PORT-WORKSTATION-HOSTNAME, dondePORTes el número de puerto yWORKSTATION-HOSTNAMEes el nombre de host de tu estación de trabajo.
Restringe el acceso a los puertos de una estación de trabajo
Para restringir los puertos a los que se puede conectar en una estación de trabajo, configura allowedPorts en los parámetros de configuración de la estación de trabajo.
Para restringir un solo puerto, configura los campos PortRange
first y last con el mismo número de puerto.
De forma predeterminada, se permiten los puertos 22, 80 y 1024 a 65535.
Para crear una configuración de estación de trabajo con acceso restringido a los puertos 80 y
8080 a 8100, ejecuta el siguiente comando de Google Cloud CLI:
gcloud workstations configs create CONFIG \
--cluster=CLUSTER_ID \
--region=REGION \
--project=PROJECT \
--allowed-ports=first=80,last=80 \
--allowed-ports=first=8080,last=8100
Solicitudes de comprobación previa de CORS
De forma predeterminada, Cloud Workstations se asegura de que todas las solicitudes HTTP/HTTPS a la estación de trabajo se autentiquen mediante una cookie o un encabezado de autenticación.
Las solicitudes de comprobación previa de Intercambio de Recursos de Origen Cruzado (CORS) no incluyen cookies ni encabezados personalizados, por lo que Cloud Workstations las considera no autenticadas y las bloquea. De manera opcional, los administradores pueden permitir que las solicitudes de comprobación previa de CORS no autenticadas pasen a la estación de trabajo, donde se convierte en responsabilidad del servidor de destino en la estación de trabajo validar la solicitud.
Para permitir las solicitudes de comprobación previa de CORS no autenticadas, ejecuta el siguiente comando de Google Cloud CLI:
gcloud beta workstations configs update CONFIG \
--cluster=CLUSTER_ID \
--region=REGION \
--project=PROJECT \
--allow-unauthenticated-cors-preflight-requests
Inhabilita el reemplazo de localhost en las respuestas HTTP
Para permitir que las apps en desarrollo se ejecuten correctamente en la estación de trabajo, Cloud Workstations reemplaza las referencias a localhost, 127.0.0.1 y 0.0.0.0 por el nombre de host de la estación de trabajo en las respuestas HTTP de la estación de trabajo.
Esto podría interferir con algunas aplicaciones. Para inhabilitar este comportamiento, ejecuta el siguiente comando de Google Cloud CLI:
gcloud beta workstations configs update CONFIG \
--cluster=CLUSTER_ID \
--region=REGION \
--project=PROJECT \
--disable-localhost-replacement