Ciao
Ho fatto diverse installazioni pulite di recente.
Quello che ho notato è che la formulazione della prima risposta nel processo di verifica se Docker è installato.
"Fallito nel trovare Docker… ecc.
L’uso della parola ‘fallito’ come prima risposta nella maggior parte delle installazioni non è un buon feedback per chi non ha familiarità con la riga di comando.
Copi e incolli
sudo -s
git clone https://github.com/discourse/discourse_docker.git /var/discourse
cd /var/discourse
e ciò si traduce in un fallimento a meno che Docker non sia già installato, il che è abbastanza improbabile nella maggior parte dei casi.
La formulazione può essere cambiata in qualcosa di meno negativo?
"Docker non trovato…
"[COME PREVISTO] … Docker non è installato…
"Il prossimo passo è installare Docker poiché non è attualmente installato…
"Funzionato! - Il prossimo passo è installare Docker poiché non è attualmente installato…
@pfaffman So che fai molte installazioni, hai qualche pensiero?
Sì,
sto parlando della risposta della riga di comando - echo
La parola Failed può essere omessa e sostituita con una dicitura diversa?
O meglio, l’installazione può semplicemente proseguire senza fermarsi per una risposta qui?
Se stai eseguendo un’installazione, l’ultima parola che vuoi vedere è Failed
Soprattutto dopo aver appena copiato e incollato (correttamente) dalle istruzioni di installazione.
Questo è un buon punto. Ci sono anche una serie di comandi grep che producono output confusi e che sembrano errori. Ho pensato in passato di ripulire quello. Probabilmente richiederà un’ora o due e sono un po’ riluttante a farlo nel mio tempo libero, dato che la maggior parte delle persone riesce a sopportare quei messaggi spaventosi.
La prossima volta che apporterò modifiche, però (forse il mese prossimo per rendere più facile disattivare le nuove cose di ember-cli), vedrò di rendere quel linguaggio meno spaventoso.
Ciao Jay,
Sì, ho seguito alcune installazioni e il panico si attenua con l’esperienza.
Il linguaggio utilizzato riflette il risultato negativo dell’istruzione if alla riga 131.
In termini di codifica questo è corretto, ma in realtà è un comportamento atteso non trovare Docker installato poiché la maggior parte delle persone ha appena effettuato un’installazione pulita.
Ho sempre pensato che questo codice che ho incollato nella riga di comando avrebbe/avrebbe dovuto installare Docker senza bisogno di dialogo?
sudo -s
git clone https://github.com/discourse/discourse_docker.git /var/discourse
cd /var/discourse
Ciò che viene presentato qui può essere facilmente evitato sostituendo i messaggi con stringhe di lingua. Due modi possibili per raggiungere questo obiettivo:
implementando chiamate API (leggi) e utilizzando Weblate,
memorizzando tutte le stringhe di lingua localmente (all’interno dell’installazione di Discourse) e sostituendo tutti i messaggi con segnaposto.
Entrambi i modi sopra descritti richiedono una modifica sostanziale del core di Discourse.
Mi è venuto in mente che, piuttosto che correggere tutte le cose che penso siano problematiche, la modifica che richiedi consiste solo in un paio di righe, quindi ho inviato questo:
Penso che menzionare PATH nel messaggio sia un indicatore importante del fatto che docker/docker.io possa essere o meno installato, ovvero il problema potrebbe essere che PATH non include la posizione in cui è stato installato.
Se l’obiettivo è semplicemente evitare di usare una parola fortemente negativa, penso che basterebbe sostituire “Failed to” con “Could not”.
Tornando al negativo…
Non ho bisogno di saperlo… Voglio solo installare Docker quando incollo…
Perché interrompere un’installazione per segnalare che ciò che si sta installando non è stato precedentemente installato?
Continua con l’installazione di Docker.
Se Docker viene trovato nel PATH - yippee - Installa Discourse
Eliminare completamente le due righe?
Probabilmente è meglio non perdere tempo su questo.
Diverse opinioni su ‘copia’ sono difficili da risolvere senza turbare qualcuno.
Quando farò la mia prossima installazione pulita… potrò sorridere riguardo a questo argomento e andare nel mio ‘posto felice’ e, come mi è stato detto, Docker “non è stato trovato” sulla mia nuova installazione e mentre premo ‘S’ per installare Docker, potrò farlo senza imprecare con i denti stretti “Pensavo fosse quello che stavo fottutamente facendo - Sbrigati”.
Penso che sia perché non stai installando docker. Quello che stai facendo nel momento di quel messaggio è eseguire la configurazione di Discourse che si basa sulla disponibilità di docker - ti aiuta a installarlo se non riesce a trovarlo, ma te lo chiede perché non sa nulla del tuo sistema.
Forse non riesce a trovarlo perché non è installato, nel qual caso installarlo è ovviamente la risposta corretta. Forse non riesce a trovarlo perché hai deliberatamente installato docker altrove per qualche motivo, che non è nel PATH predefinito del sistema, nel qual caso installarlo è la risposta sbagliata. (Una risposta corretta sarebbe interrompere la configurazione ed eseguirla di nuovo con PATH=/dove/docker/è:$PATH ./discourse-setup)
È possibile che tu stia interpretando il nome del repository, discourse_docker, come docker? Non lo è, è lo strato esterno di Discourse, i componenti che devono interagire con docker come lo script di configurazione, lo script di avvio, ecc.