el lsof
comando me dice que launchd
está escuchando en el puerto 4444:
$ sudo lsof -i tcp:4444
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
launchd 1 root 32u IPv4 0xfe4e7e9bb5c1a5 0t0 TCP localhost:krb524 (LISTEN)
launchd 1 root 46u IPv4 0xfe4e7e9bb5c1a5 0t0 TCP localhost:krb524 (LISTEN)
Estoy tratando de configurar un servidor Selenium ( https://www.seleniumhq.org/ ) cuyo puerto predeterminado es 4444. Me doy cuenta de que podría cambiar el puerto de Selenium, pero no recuerdo haber tenido este conflicto en Mac anteriormente (yo supongo que antes de Tiger)
¿Es posible/viable haber launchd
ejecutado en un puerto diferente?
EDITAR: Encontré la siguiente información al buscar qué plist
archivos se refieren al puerto 4444; muestra que es parte de la Server
configuración. La función Wiki del servidor está actualmente DESACTIVADA. ¿Es seguro editar este archivo para cambiar la configuración del puerto?
/Applications/Server.app/Contents/ServerRoot/private/etc/apache2/webapps/com.apple.webapp.auth.plist:19: http://localhost:4444/auth /Applications/Server.app/Contents/ServerRoot /private/etc/apache2/webapps/com.apple.webapp.changepassword.plist:19: http://localhost:4444/changepassword /Applications/Server.app/Contents/ServerRoot/private/etc/apache2/webapps/com .apple.webapp.collabd.plist:24: http://localhost:4444/svc/ Applications/Server.app/Contents/ServerRoot/private/etc/apache2/webapps/ com.apple.webapp.collabd.plist :33 : http://localhost:4444/streams/activity/ Applications/Server.app/Contents/ServerRoot/private/etc/apache2/webapps/ com.apple.webapp.wiki.plist:24: http://localhost:4444 /avance/Applications/Server.app/Contents/ServerRoot/private/etc/apache2/webapps/com.apple.webapp.wiki.plist:33: http://localhost:4444/files /Applications/Server.app/Contents/ServerRoot /private/etc/apache2/webapps/com.apple.webapp.wiki.plist:42: http://localhost:4444/upload_file /Applications/Server.app/Contents/ServerRoot/private/etc/apache2/webapps/com .apple.webapp.wiki.plist:51: http://localhost:4444/app-context/wiki
Sí. Cambiar el puerto es tan simple como ejecutarlo con una anulación de línea de comando:
selenium-server -port 4455
Lo anterior intentaría escuchar en el puerto 4455 en lugar de 4444
Cambiar launchd es un poco más de trabajo ya que necesita ubicar el archivo exacto en el sistema de archivos que recibió las instrucciones para escuchar en 4444.
Aquí hay una buena redacción de una de esas formas de configurar Selenium para usar el puerto 4444
Por lo tanto, deberá editar el plist que controla el lanzamiento. Recomendaría usar homebrew para instalar esto:
mac:dev me$ brew install selenium-server-standalone
==> Downloading https://selenium-release.storage.googleapis.com/3.11/selenium-server-standalone-3.11.0.jar
######################################################################## 100.0%
==> Caveats
To have launchd start selenium-server-standalone now and restart at login:
brew services start selenium-server-standalone
Or, if you don't want/need a background service you can just run:
selenium-server -port 4444
==> Summary
🍺 /usr/local/Cellar/selenium-server-standalone/3.11.0: 5 files, 22.3MB, built in 7 seconds
mac:dev me$ selenium-server -port 4455
Puede ver que puede anular el puerto de este servidor Selenium desde la línea de comando o editar ~/Library/LaunchAgents/homebrew.mxcl.selenium-server-standalone.plist
para cambiar estas dos líneas que controlan el puerto predeterminado:
<string>-port</string>
<string>4444</string>
una vez que guarde el cambio, realice un ciclo del servicio usando:
brew services restart selenium-server-standalone
Le sugiero que anote qué archivos cambia y exactamente cómo los cambia, ya que es muy probable que las actualizaciones de la aplicación Server deshagan todos los cambios que realizó. Es posible que incluso desee crear un script de shell que busque estos archivos y los cambie automáticamente en el momento del arranque, cada vez. Tengo que hacer algo similar para que el apache del sistema no interrumpa mi apache instalado en brew.
bmike