Altro (tutti?) utente di sistema coinvolto in qualche modo?

Ciao ragazzi.

Perché Discourse — non ho provato altri container, né Ubuntu né Docker sono la mia arma preferita — coinvolge altri utenti (tutti regolari?)?

Quando avvio Discourse, un certo numero di processi viene avviato per conto di un utente che non pensavo avesse nulla a che fare con discourse/container, certamente è l’utente da cui faccio sudo, per il deployment di Discourse. Ecco:

unicorn_launche─┬─ruby─┬─ruby───23*[{ruby}]
                │      ├─8*[ruby───8*[{ruby}]]
                │      └─7*[{ruby}]
                └─sleep
-> $ ps -Fp 8794
UID          PID    PPID  C    SZ   RSS PSR STIME TTY          TIME CMD
appmgr      8794    8792  0  3829  4320   2 12:17 ?        00:00:00 /bin/bash config/unicorn_launcher -E production -c config/unicorn.conf.rb
-> $ ps -Fp 8792
UID          PID    PPID  C    SZ   RSS PSR STIME TTY          TIME CMD
root        8792    8788  0   562   684   4 12:17 ?        00:00:00 runsv unicorn

Quello che vedo/ottengo è tutto valido e legittimo? Se sì, dove potrei trovare delle man page che ne gettino più luce? Sono ancora nuovo come Sysadmin di Ubuntu/Docker/Discourse.

Quando visualizzi i processi al di fuori del container, i processi relativi a Discourse verranno visualizzati come utente con UID 1000 sull’host.

Il motivo è che i processi all’interno del container vengono eseguiti sotto l’UID 1000 del container. :slight_smile:

È solo una strana particolarità del funzionamento dei container Docker. :slight_smile:

Sì. È previsto.

Unicorn è la cosa che serve le pagine. Ruby è il linguaggio in cui è scritto discourse. Puoi vedere che il launcher di unicorn ha avviato tutti quei processi.

Se guardi a cosa è in esecuzione sul tuo computer Windows o Mac, non sai nemmeno cosa siano tutte quelle cose. :person_shrugging:

Non sono sicuro di come potresti imparare quello. Forse la documentazione di rails? Per un nuovo amministratore di sistema ci sono molte altre cose che sono più probabilmente utili.

Forse l’ho lasciato un po’ vago - quello che mi ha lasciato perplesso è l’utente a cui appartengono (alcuni) processi. Gli strumenti che uso per i container e che rendono tutti i miei container senza privilegi di root — a meno che i requisiti di rete non lo rendano impossibile — rendono chiara la mappatura tra/da UID reali e subUID, una volta che si vede chiaramente cosa è cosa. Grazie @ClawdiaWolf. Vorrei che queste cose fossero nella documentazione ufficiale (non solo nel codice).

Se ne è discusso anche qui:

:slight_smile: