Hola
He realizado bastantes instalaciones nuevas recientemente.
Lo que noté fue que la redacción de la primera respuesta en el proceso de verificación de si Docker está instalado.
"Falló al encontrar Docker … etc.
El uso de la palabra ‘falló’ como primera respuesta en la mayoría de las instalaciones no es una buena retroalimentación para nadie que no esté familiarizado con la línea de comandos.
Copias y pegas
sudo -s
git clone https://github.com/discourse/discourse_docker.git /var/discourse
cd /var/discourse
y resulta en un fallo a menos que Docker ya esté instalado, lo cual es bastante improbable en la mayoría de los casos.
¿Se puede cambiar la redacción a algo menos negativo?
"Docker no encontrado …
"[COMO SE ESPERABA] … Docker no está instalado …
"El siguiente paso es instalar Docker ya que actualmente no está instalado …
"¡Funcionó! - El siguiente paso es instalar Docker ya que actualmente no está instalado …
@pfaffman Sé que realizas muchas instalaciones, ¿alguna opinión?
Sí,
me refiero a la respuesta de la línea de comandos: echo
¿Se puede eliminar la palabra Failed y usar otra redacción?
¿O mejor aún, la instalación puede continuar sin detenerse para obtener una respuesta aquí?
Si estás realizando alguna instalación, lo último que quieres ver es Failed
Especialmente después de haber copiado y pegado (correctamente) las instrucciones de instalación.
Ese es un buen punto. También hay un montón de comandos grep que escupen cosas confusas y parecen errores. He pensado antes en limpiar eso. Probablemente llevará una hora o dos y soy algo reacio a hacerlo en mi tiempo libre, ya que la mayoría de la gente puede soportar esos mensajes aterradores.
Sin embargo, la próxima vez que haga cambios (quizás el próximo mes para que sea más fácil desactivar las nuevas cosas de ember-cli), veré cómo hacer que ese lenguaje sea menos aterrador.
Hola Jay,
Sí, he pasado por algunas instalaciones y el pánico disminuye con la experiencia.
El lenguaje utilizado refleja el resultado negativo de la instrucción if en la línea 131.
En términos de codificación, esto es correcto, pero en realidad es un comportamiento esperado no encontrar Docker instalado, ya que la mayoría de las personas acaban de realizar una instalación limpia.
Siempre pensé que este código que pegué en la línea de comandos instalaría Docker sin necesidad de diálogo.
sudo -s
git clone https://github.com/discourse/discourse_docker.git /var/discourse
cd /var/discourse
Lo que se presenta aquí se puede prevenir fácilmente reemplazando los mensajes con cadenas de idioma. Dos formas posibles de lograr esto:\n* implementar llamadas a la API (leer) y usar Weblate,\n* almacenar todas las cadenas de idioma localmente (dentro de la instalación de Discourse) y reemplazar todos los mensajes con marcadores de posición.\n\nAmbas formas anteriores requieren una modificación importante del núcleo de Discourse.
Se me ocurrió que, en lugar de arreglar todas las cosas que creo que son problemáticas, el cambio que solicitas son solo un par de líneas, así que envié esto:
Hola Jay, gracias por tomarte el tiempo para hacer esto, sé que estás ocupado con tu propio sitio web, que por cierto se ve genial. Mis mejores deseos.
Creo que mencionar PATH en el mensaje es un indicador importante de si docker/docker.io está instalado o no, es decir, el problema puede ser que PATH no incluya la ubicación donde se ha instalado.
Si el objetivo es simplemente evitar usar una palabra fuertemente negativa, creo que reemplazar “Failed to” por “Could not” haría el trabajo.
Probablemente lo mejor sea no dedicarle tiempo.
Múltiples opiniones sobre ‘copiar’ son difíciles de resolver sin molestar a alguien.
Cuando haga mi próxima instalación limpia… podré sonreír sobre este tema e ir a mi ‘lugar feliz’ y, como me dicen que Docker “no se encontró” en mi instalación nueva y al presionar ‘S’ para instalar Docker, podré hacerlo sin maldecir con los dientes apretados “Pensé que eso era lo que estaba h… haciendo - ¡Sigue adelante!”.
Creo que es porque no estás instalando docker. Lo que estás haciendo en el punto de ese mensaje es ejecutar la configuración de Discourse, que depende de que docker esté disponible; te ayuda a instalarlo si no lo encuentra, pero te pregunta porque no sabe nada sobre tu sistema.
Tal vez no lo encuentra porque no está instalado, en cuyo caso instalar es obviamente la respuesta correcta. Tal vez no lo encuentra porque deliberadamente has instalado docker en otro lugar por alguna razón, que no está en la ruta predeterminada del sistema (PATH), en cuyo caso instalar es la respuesta incorrecta. (Una respuesta correcta sería abortar la configuración y ejecutarla de nuevo con PATH=/donde/esta/docker:$PATH ./discourse-setup)
¿Es posible que estés interpretando el nombre del repositorio, discourse_docker, como si fuera docker? No lo es, es la capa externa de Discourse, los componentes que necesitan interactuar con docker, como el script de configuración, el script de lanzamiento, etc.