Moby: рдбрд┐рдлрд╝реЙрд▓реНрдЯ "рдбреЙрдХрд░ рдкреАрдПрд╕" рдЖрдЙрдЯрдкреБрдЯ рдмрд╣реБрдд рд╡реНрдпрд╛рдкрдХ рд╣реИ

рдХреЛ рдирд┐рд░реНрдорд┐рдд 8 рдЕрдЧре░ 2014  ┬╖  83рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: moby/moby

screenshot 2014-08-07 16 27 38

docker ps рд╕реЗ рдЖрдЙрдЯрдкреБрдЯ 80 рдХреИрд░реЗрдХреНрдЯрд░ рд╡рд╛рдЗрдб рдЯрд░реНрдорд┐рдирд▓реЛрдВ рдкрд░ рдкрдврд╝рдирд╛ рдмрд╣реБрдд рдХрдард┐рди рд╣реИред

/bin/ps рд╕рдВрдХреАрд░реНрдг рдЯрд░реНрдорд┐рдирд▓реЛрдВ рдкрд░ рдЖрдЙрдЯрдкреБрдЯ рд░реИрдкрд┐рдВрдЧ рдХрд╛ рдПрдХ рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рдорд╣рддреНрд╡рдкреВрд░реНрдг рдЬрд╛рдирдХрд╛рд░реА рдкрд╣рд▓реЗ рд░рдЦрдирд╛, рдЖрдЦрд┐рд░реА рдХрдорд╛рдВрдб рдХрд░рдирд╛ рдФрд░ рдЗрд╕реЗ рдЫреЛрдЯрд╛ рдХрд░рдирд╛)ред рдореБрдЭреЗ рдЖрд╢реНрдЪрд░реНрдп рд╣реИ рдХрд┐ рдХреНрдпрд╛ рд╣рдо рдмреЗрд╣рддрд░ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

arecli exbeginner kinenhancement kinfeature

рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА

рдкреЗрдЬрд░ рдХреЛ рдкрд╛рдЗрдк рдХрд░рдиреЗ рдореЗрдВ рдХреНрдпрд╛ рдЧрд▓рдд рд╣реИ?

docker ps | less -S

рд╕рднреА 83 рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

рдЗрддрдирд╛ рдкреНрдпрд╛рд░ рдФрд░ рдвреЗрд░ рд╕рд╛рд░реЗ +1ред рдореИрдВ 80x24 рдЯрд░реНрдорд┐рдирд▓реЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реВрдВ
рдореЗрд░реЗ рд╕рд╣рдпреЛрдЧрд┐рдпреЛрдВ) рдФрд░ рдпрд╣ рдореЗрд░реЗ рд▓рд┐рдП рдХрд╛рдлреА рд╕рдордп рд╕реЗ рдПрдХ рдЫреЛрдЯреА рд╕реА рдкрд░реЗрд╢рд╛рдиреА рд╣реИ
рд╕рдордпред

рдореЗрд░рд╛ рдХрд╣рдирд╛ рд╣реИ рдХрд┐ рдпрд╣ рдЕрдХреНрд╕рд░ рдореБрдЭреЗ рднреА рдорд┐рд▓рддрд╛ рд╣реИред

рд╕рдорд╛рдзрд╛рди рдХреЗ рд▓рд┐рдП рдХреЛрдИ рд╡рд┐рдЪрд╛рд░? рд╕рдВрдХрд░реЗ рдЯрд░реНрдорд┐рдирд▓реЛрдВ рдкрд░ рдПрдХ рдЫреЛрдЯрд╛ рд╕рдВрд╕реНрдХрд░рдг рд╣реЛрдирд╛ рдЕрдЪреНрдЫрд╛ рд▓рдЧрддрд╛ рд╣реИред

рдЦреИрд░, рдЖрдИрдбреА рдХреЛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╡рд╣рд╛рдВ рд╣реЛрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред

рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рдХреИрд╕рд╛ рд╣реИ:

NAME               IMAGE              STATUS      PORTS             COMMAND
prickly_perlman    ubuntu:14.04       Up 15s      8000->8000/tcp    sleep 30000

рд╡реНрдпрд╛рдЦреНрдпрд╛:

  • рдХреЛрдИ рдЖрдИрдбреА рдирд╣реАрдВ рдХреНрдпреЛрдВрдХрд┐ рдХрдВрдЯреЗрдирд░реЛрдВ рдХреЗ рд╣рдореЗрд╢рд╛ рдирд╛рдо рд╣реЛрддреЗ рд╣реИрдВ
  • рдирд╣реАрдВ рдмрдирд╛рдпрд╛ рдЧрдпрд╛, рдЖрдк рдЙрд╕рдХреЗ рд▓рд┐рдП рдирд┐рд░реАрдХреНрд╖рдг рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ
  • рдЦреБрд▓реЗ рд╕рднреА рдмрдВрджрд░рдЧрд╛рд╣реЛрдВ рдХрд╛ рдЕрд╡рд▓реЛрдХрди рдЬрд╛рдирдирд╛ рдмрд╣реБрдд рдЙрдкрдпреЛрдЧреА рд▓рдЧрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рд╢рд╛рдпрдж рдЗрд╕реЗ рдЫреЛрдбрд╝рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ?
  • рдХрдорд╛рдВрдб рдХреЛ рдЯрд░реНрдорд┐рдирд▓ рдХреА рдЪреМрдбрд╝рд╛рдИ рдореЗрдВ рдЫреЛрдЯрд╛ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдЬреИрд╕реЗ /bin/ps

@bfirsh : рдердореНрд╕рдЕрдк: рдЗрди рдиреЛрдЯреЛрдВ рдХреЗ рд╕рд╛рде;

  • рдХреГрдкрдпрд╛, рдмрдВрджрд░рдЧрд╛рд╣реЛрдВ рдХреЛ рди рдЫреЛрдбрд╝реЗрдВ, рдореЗрд░реЗ рд▓рд┐рдП рд╡реЗ рдЬрд▓реНрджреА рд╕реЗ рдпрд╣ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╛рдлреА рдЙрдкрдпреЛрдЧреА рд╣реИрдВ рдХрд┐ рдХреМрди рд╕реЗ рдмрдВрджрд░рдЧрд╛рд╣ рдХрд┐рд╕ рдХрдВрдЯреЗрдирд░ рд╕реЗ рдЬреБрдбрд╝реЗ рд╣реИрдВред рдкреНрд░рддреНрдпреЗрдХ рдХрдВрдЯреЗрдирд░ рдХрд╛ рдирд┐рд░реАрдХреНрд╖рдг рдХрд░рдирд╛ рдмреЛрдЭрд┐рд▓ рд╣реИ
  • --no-trunc рд╕рд╛рде рдХреНрдпрд╛ рдХрд░реЗрдВ, рдЕрдм рд╡рд╣ рдХрдВрдЯреЗрдирд░-рдЖрдИрдбреА рджрд┐рдЦрд╛рдИ рдирд╣реАрдВ рджреЗ рд░рд╣рд╛ рд╣реИ? рдРрд╕реЗ рдХрдИ рдЙрджрд╛рд╣рд░рдг рдореМрдЬреВрдж рд╣реИрдВ рдЬреЛ рд░реБрдХреЗ рд╣реБрдП рдХрдВрдЯреЗрдирд░реЛрдВ рдХреЛ рд╢реБрджреНрдз рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрд╕ рд╕реБрд╡рд┐рдзрд╛ рдкрд░ рднрд░реЛрд╕рд╛ рдХрд░рддреЗ рд╣реИрдВ
  • (рдбрд┐рдлрд╝реЙрд▓реНрдЯ) рд╕реЙрд░реНрдЯ рдХреНрд░рдо рдХреНрдпрд╛ рд╣реЛрдЧрд╛? рджрд┐рдирд╛рдВрдХ рдмрдирд╛рдпрд╛ рдЧрдпрд╛ (рддрд╛рд░реНрдХрд┐рдХ рдирд╣реАрдВ, рдХреНрдпреЛрдВрдХрд┐ рд╡рд╣ рдХреЙрд▓рдо рдЕрдм рджрд┐рдЦрд╛рдИ рдирд╣реАрдВ рджреЗ рд░рд╣рд╛ рд╣реИ)? рдХрдВрдЯреЗрдирд░ рдирд╛рдо рдкрд░ рд╡рд░реНрдгрд╛рдиреБрдХреНрд░рдо рдореЗрдВ?
  • рднрд╡рд┐рд╖реНрдп рдореЗрдВ рд╕реБрдзрд╛рд░ рдХреЗ рд▓рд┐рдП; рдпрд╣ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрдВ рдХрд┐ рдХреМрди рд╕реЗ рдХреЙрд▓рдо рдХреЛ рджрд┐рдЦрд╛рдирд╛ рд╣реИ рдФрд░ рдХреНрд░рдордмрджреНрдз рдХрд░рдирд╛ рд╣реИ (рдЬреИрд╕реЗ --columns=a,f,g --sort=a,e
  • рднрд╡рд┐рд╖реНрдп рдореЗрдВ рд╕реБрдзрд╛рд░ рдХреЗ рд▓рд┐рдП; рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди-рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ рдпреЛрдЧреНрдп рдкрд░ рджрд┐рдЦрд╛рдиреЗ рдФрд░ рд╕реЙрд░реНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЙрд▓рдо рдмрдирд╛рдПрдВ
  • рднрд╡рд┐рд╖реНрдп рдореЗрдВ рд╕реБрдзрд╛рд░ рдХреЗ рд▓рд┐рдП; рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдлрд╝рд┐рд▓реНрдЯрд░ рд╡рд┐рдХрд▓реНрдк рд╕реЗрдЯ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрдВ (рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рд░реБрдХреЗ рд╣реБрдП рдХрдВрдЯреЗрдирд░ рди рджрд┐рдЦрд╛рдПрдВ ( -a ))

рдкреЗрдЬрд░ рдХреЛ рдкрд╛рдЗрдк рдХрд░рдиреЗ рдореЗрдВ рдХреНрдпрд╛ рдЧрд▓рдд рд╣реИ?

docker ps | less -S

@ рдмреЗрдВрдЬрд╛рдорд┐рди-рдереЙрдорд╕ рдпрд╛ docker ps рдПрдХ TTY рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдирд╛ рдФрд░ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ less -S рддрдХ рдкрд╛рдЗрдкрд┐рдВрдЧ рдХрд░рдирд╛?

рдЕрдЪреНрдЫреА рдЪрд╛рд▓ @ рдмреЗрдВрдЬрд╛рдорд┐рди-рдереЙрдорд╕, рдореИрдВ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рднрд╡рд┐рд╖реНрдп рдореЗрдВ рдЗрд╕рдХрд╛ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд░реВрдВрдЧрд╛ред рдПрдХ рд╡рд┐рдЪрд╛рд░ рдпрд╣ рд╣реИ рдХрд┐ рдореЗрд░реЗ рд▓рд┐рдП рдорд╣рддреНрд╡рдкреВрд░реНрдг рдЬрд╛рдирдХрд╛рд░реА, рд╕рдмрд╕реЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг, рдХрдВрдЯреЗрдирд░ рдирд╛рдореЛрдВ рдХреЛ рдЫреЛрдбрд╝ рджреЗрддрд╛ рд╣реИред рдЬрдмрдХрд┐ рдореЗрд░реЗ рдЙрдкрдпреЛрдЧ рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ рдореИрдВ рдЖрдорддреМрд░ рдкрд░ CREATED рдФрд░ STATUS рдмрд╛рд░реЗ рдореЗрдВ рдЬреНрдпрд╛рджрд╛ рдкрд░рд╡рд╛рд╣ рдирд╣реАрдВ рдХрд░рддрд╛ред

рдЖрдИрдПрдордУ рдЙрдкрдпреЛрдЧ рдХреЗ рдорд╛рдорд▓реЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рдмреАрдЪ рднрд┐рдиреНрди рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ, рдореЗрд░реЗ рд▓рд┐рдП, STATUS _is_ рдПрдХ рддреНрд╡рд░рд┐рдд рдЬрд╛рдВрдЪ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ рдХрд┐ рдХреНрдпрд╛ рдореЗрд░реЗ рдХрдВрдЯреЗрдирд░ рдЕрднреА рднреА рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдЪрд▓ рд░рд╣реЗ рд╣реИрдВ рдпрд╛ 'рд╡реНрд╣рд╛рдЙрдкреНрд╕реА' рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рд╣реИред

рдореБрдЭреЗ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ рдпрд╣ рдкреАрдПрд╕ рдЖрдЙрдЯрдкреБрдЯ рдХрд╛ рдПрдХ рдмрдбрд╝рд╛ рдкреБрди: рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдмрдирдирд╛ рдЪрд╛рд╣рд┐рдП, рдпрд╛ _start_ рдХреЛ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рдереЛрдбрд╝рд╛ рдХреНрд▓реАрдирд░ рдмрдирд╛рдиреЗ рдФрд░ рдЙрд╕ рдкрд░ рдирд┐рд░реНрдорд╛рдг рдХрд░рдиреЗ рдХреЗ рд╕рд╛рде, рдХреЙрд▓рдо рдХреЛ рджрд┐рдЦрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╡рд┐рдХрд▓реНрдк рдЬреЛрдбрд╝рдХрд░ рдЗрд╕реЗ рдФрд░ рдЕрдзрд┐рдХ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ рдпреЛрдЧреНрдп рдмрдирд╛рдирд╛ рдЪрд╛рд╣рд┐рдП, рдХреНрд░рдо рдХреЛ рдХреНрд░рдордмрджреНрдз рдХрд░рдирд╛ рдФрд░ рдЫрд╛рдирдирд╛ред

@nathanleclaire , рдПрдХ рдмрд╛рд░ рдЬрдм рдЖрдк less рдЕрдВрджрд░ рд╣реЛрдВ рддреЛ рдЕрдкрдиреА рддреАрд░ рдХреБрдВрдЬрд┐рдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ, рдЖрдкрдХреЗ рдкрд╛рд╕ рдкреВрд░реА рд╕рд╛рдордЧреНрд░реА рддрдХ рдкрд╣реБрдВрдЪ рд╣реИред рдпрд╛ рдореИрдВрдиреЗ рдЖрдкрдХреЛ рдЧрд▓рдд рд╕рдордЭрд╛?

@grahamc рдХреНрдпреЛрдВ рдирд╣реАрдВ, рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдк рд╕реЗ рдореИрдВ рдЙрди рдЪреАрдЬреЛрдВ рдХреЛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдирд╣реАрдВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдХрд░рдг рдкрд╕рдВрдж рдХрд░рддрд╛ рд╣реВрдВред рдпрджрд┐ рдЖрд╡рд╢реНрдпрдХ рд╣реЛ рддреЛ рдХреЛрдИ рд╣рдореЗрд╢рд╛ рдЗрд╕ рдЖрдИрдПрдордУ рдХреЗ рд▓рд┐рдП рдПрдХ рдЦреЛрд▓ рдЙрдкрдирд╛рдо рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░ рд╕рдХрддрд╛ рд╣реИред

@thaJeztah рд╕реНрд╡рд┐рдЪ рдХреЗ рд╕рд╛рде рдХреЙрд▓рдо рдирд╛рдо рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдирд╛ рдореЗрд░реЗ рд▓рд┐рдП рд╕рдордЭ рдореЗрдВ рдЖрддрд╛ рд╣реИ, рдЬреИрд╕реЗ рд╕рд┐рд╕реНрдЯрдо ps рдХрдорд╛рдВрдб /bin/ps -o pid,ruser=RealUser -o comm=Command ред

@ рдмреЗрдВрдЬрд╛рдорд┐рди-рдереЙрдорд╕ рдУрд╣, рдореБрдЭреЗ рдЗрд╕рдХрд╛ рдПрд╣рд╕рд╛рд╕ рднреА рдирд╣реАрдВ рдерд╛ред рдЕрдЪреНрдЫрд╛! рдореБрдЭреЗ рдпрд╣ рд╕рдорд╛рдзрд╛рди рдмрд╣реБрдд рдкрд╕рдВрдж рд╣реИред

@ рдмреЗрдВрдЬрд╛рдорд┐рди-рдереЙрдорд╕ /bin/ps рдпрд╣ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдХрд░рддрд╛ рд╣реИред рдпрджрд┐ рдЖрдк рдЗрд╕реЗ рдЕрдХреНрд╖рдо рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рдЖрдк рдЗрд╕реЗ cat рдпрд╛ рдЬреЛ рднреА рд╣реЛ, рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдкрд╛рдЗрдк рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

docker ps рдЖрдЙрдЯрдкреБрдЯ рдХреА рдЪреМрдбрд╝рд╛рдИ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд: рдХреНрдпрд╛ рдХрд┐рд╕реА рджрд┐рдП рдЧрдП рдХрдВрдЯреЗрдирд░ рдХреЗ рд▓рд┐рдВрдХреЗрдЬ рдХреА рд╣рд░ рд╕рдВрднрд╛рд╡рд┐рдд рд╢реНрд░реГрдВрдЦрд▓рд╛ рдХреЛ рдЙрд╕ рдХрдВрдЯреЗрдирд░ рдХреЗ рдирдП рдирд╛рдо рдХреЗ рд░реВрдк рдореЗрдВ рдорд╛рдирдирд╛ тАЛтАЛтАЛтАЛрд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЖрд╡рд╢реНрдпрдХ рд╣реИ? рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЕрдЧрд░ рдореЗрд░реЗ рдкрд╛рд╕ рдП, рдмреА, рд╕реА, рдбреА, рдФрд░ рдИ рдирд╛рдо рдХреЗ рдкрд╛рдВрдЪ рдХрдВрдЯреЗрдирд░ рд╣реИрдВ, рдФрд░ рдП рдмреА рд╕реЗ рд▓рд┐рдВрдХ рд╣реИ, рдмреА рд╕реА рд╕реЗ рд▓рд┐рдВрдХ рдХрд░рддрд╛ рд╣реИ, рдФрд░ рдЗрд╕реА рддрд░рд╣, рддреЛ рдИ рдХреЗ рдкрд╛рдВрдЪ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдирд╛рдо рд╣реЛрдВрдЧреЗ: рдИ, рдбреА/рдИ, рд╕реА/ рдбреА/рдИ, рдмреА/рд╕реА/рдбреА/рдИ, рдФрд░ рдП/рдмреА/рд╕реА/рдбреА/рдИред

рдлрд┐рд░ рдпрджрд┐ рдмреА рднреА рд▓рд┐рдВрдХ рдХрд░рддрд╛ рд╣реИ, рддреЛ рдХрд╣реЗрдВ, рдбреА, рдИ рдХреЛ рдФрд░ рднреА рдирд╛рдо рдорд┐рд▓рддреЗ рд╣реИрдВ: рдмреА/рдбреА/рдИ рдФрд░ рдП/рдмреА/рдбреА/рдИред рдЬрд┐рд╕ рд╕рд┐рд╕реНрдЯрдо рдкрд░ рдореИрдВ рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реВрдВ рдЙрд╕рдХрд╛ рдПрдХ рд░рди рд╕рддреНрд░рд╣ рдХрдВрдЯреЗрдирд░ рд╢реБрд░реВ рдХрд░рддрд╛ рд╣реИ - рдЬреЛ, рд╕рднреА рдПрдХ рд╕рд╛рде, 31 рдирд┐рд░реНрднрд░рддрд╛ рд╕рдВрдмрдВрдзреЛрдВ рдХреЗ рдХрд╛рд░рдг, _рддреАрди рд╕реМ рдЕрд╕реНрд╕реА-рд╕рд╛рдд рдирд╛рдо_ рд╣реИрдВред рдХреЛрдИ рдлрд░реНрдХ рдирд╣реАрдВ рдкрдбрд╝рддрд╛ рдХрд┐ рдореИрдВ рдЕрдкрдиреА рдЯрд░реНрдорд┐рдирд▓ рд╡рд┐рдВрдбреЛ рдХреЛ рдХрд┐рддрдирд╛ рдЪреМрдбрд╝рд╛ рдХрд░ рджреВрдВ, рдкреЗрдЬрд░ рдХреЗ рдмрд┐рдирд╛ docker ps рдХрд╛ рдЖрдЙрдЯрдкреБрдЯ рдЕрдкрдардиреАрдп рд╣реИред рдХреНрдпрд╛ рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╕рдордЭ рдореЗрдВ рдЖрддрд╛ рд╣реИ рдХрд┐ рдХрдВрдЯреЗрдирд░реЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рдирд╛рдореЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рджреНрд╡рд┐рдШрд╛рдд _ рд╕реЗ рднреА рдмрджрддрд░ рд╣реИ? рдпрд╣ рдХрдо рд╕реЗ рдХрдо рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛ рдпрджрд┐ рдЗрд╕ рдкрд╛рдВрдбрд┐рддреНрдп рд╕реНрддрд░ рдХреА рдЧрдгрдирд╛ рдХреЛ рдЕрдХреНрд╖рдо рдХрд░рдиреЗ рдХрд╛ рдХреЛрдИ рддрд░реАрдХрд╛ рд╣реЛред

@mraccident :+1: docker ps рдХреЗрд╡рд▓ рдкреНрд░рд╛рдердорд┐рдХ рдирд╛рдо рджрд┐рдЦрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП, рдЙрд╕ рдХрдВрдЯреЗрдирд░ рдХреЗ рд╕рднреА рдирд╛рдо рдирд╣реАрдВ

рд╕рд▓рд╛рдо, рдпрд╣ рдореБрдЭреЗ рднреА рдкрд░реЗрд╢рд╛рди рдХрд░ рд░рд╣рд╛ рдерд╛ рдФрд░ рдореИрдВрдиреЗ рдЕрднреА рдбреЙрдХрдЯрд░ рдореЗрдВ '--рд╢реЙрд░реНрдЯ' рд╡рд┐рдХрд▓реНрдк рдЬреЛрдбрд╝рд╛ рд╣реИред рдкреВрд░рд╛ рдкреЛрд░реНрдЯ-рдХреЙрд▓рдо рд░рдЦрддреЗ рд╣реБрдПред
https://github.com/ChristianKniep/docker/tree/7477-short_ps

$ docker run --name fd1 -d -p 80 -p 22 -p 53 fedora sleep 600
af6599f9b1178b237f6c2524f14cada45a46b234168e5270b99b16d1ce0be295
$ docker run --name fd2 --link fd1:fd1  -d -p 80 -p 22 -p 53 fedora sleep 600
ec2b2afc72dae7e62b197dc5adbcdeb548435ac495b8c935c728eb7aff658004
$ docker run --name fd3 --link fd2:fd2  --link fd1:fd1  -d -p 80 -p 22 -p 53 fedora sleep 600
ac57921063cc6afbe1cf715872dc33df45147ef1f464859c0912261b88e6bb4b
$ docker ps
CONTAINER ID        IMAGE                       COMMAND             CREATED             STATUS              PORTS                                                                 NAMES
ac57921063cc        fedora:latest   sleep 600           3 seconds ago       Up 2 seconds        0.0.0.0:49159->22/tcp, 0.0.0.0:49160->53/tcp, 0.0.0.0:49161->80/tcp   fd3                               
ec2b2afc72da        fedora:latest   sleep 600           11 seconds ago      Up 10 seconds       0.0.0.0:49156->22/tcp, 0.0.0.0:49157->53/tcp, 0.0.0.0:49158->80/tcp   fd2,fd3/fd2                       
af6599f9b117        fedora:latest   sleep 600           31 seconds ago      Up 30 seconds       0.0.0.0:49153->22/tcp, 0.0.0.0:49154->53/tcp, 0.0.0.0:49155->80/tcp   fd1,fd2/fd1,fd3/fd1,fd3/fd2/fd1                    
$ ./docker-1.1.2-dev ps -S
CONTAINER ID        IMAGE                       PORTS                                                                 NAMES
ac57921063cc        fedora:latest   0.0.0.0:49159->22/tcp, 0.0.0.0:49160->53/tcp, 0.0.0.0:49161->80/tcp   fd3                               
ec2b2afc72da        fedora:latest   0.0.0.0:49156->22/tcp, 0.0.0.0:49157->53/tcp, 0.0.0.0:49158->80/tcp   fd2,fd3/fd2                       
af6599f9b117        fedora:latest   0.0.0.0:49153->22/tcp, 0.0.0.0:49154->53/tcp, 0.0.0.0:49155->80/tcp   fd1,fd2/fd1,fd3/fd1,fd3/fd2/fd1             
$ ./docker-1.1.2-dev ps -h

Usage: docker ps [OPTIONS]

List containers

  -a, --all=false       Show all containers. Only running containers are shown by default.
  --before=""           Show only container created before Id or Name, include non-running ones.
  -f, --filter=[]       Provide filter values. Valid filters:
                          exited=<int> - containers with exit code of <int>
  -l, --latest=false    Show only the latest created container, include non-running ones.
  -n=-1                 Show n last created containers, include non-running ones.
  --no-trunc=false      Don't truncate output
  -q, --quiet=false     Only display numeric IDs
  -S, --short=false     Skip command created and status
  -s, --size=false      Display sizes
  --since=""            Show only containers created since Id or Name, include non-running ones.
$

рдЪреВрдВрдХрд┐ рдореИрдВ рдЬрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдиреМрд╕рд┐рдЦрд┐рдпрд╛ рд╣реВрдВ, рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдореЗрд░рд╛ рдХреЛрдб рд╣реЛ рд╕рдХрддрд╛ рд╣реИ ... рдЕрдиреБрдХреВрд▓рд┐рдд ...
рд▓реЗрдХрд┐рди рдЖрд╢реНрдЪрд░реНрдпрдЬрдирдХ рд╣реИ рдХрд┐ рдПрдХ рд╕рд╛рд▓ рдХреЗ рдЕрдЬрдЧрд░ рдЖрджрдореА рдХреЗ рд░реВрдк рдореЗрдВ рдХреЛрдб рдХреЛ рдмрджрд▓рдирд╛ рдХрд┐рддрдирд╛ рдЖрд╕рд╛рди рд╣реИред рдореБрдЭреЗ рдпрд╣ рдкрд╕рдВрдж рд╣реИ!

рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ: рд╢рд╛рдпрдж рдХреЛрдИ рдЯрд░реНрдорд┐рдирд▓ рдХрд╛ рдЖрдХрд╛рд░ рд▓рд╛ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рд▓рд╛рдЗрдиреЛрдВ рдХреЛ рдЫреЛрдЯрд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЙрд▓рдо рдирд┐рдХрд╛рд▓ рд╕рдХрддрд╛ рд╣реИ ...

EDIT2: рдореИрдВрдиреЗ NAMES рдХреЛ рдЫреЛрдЯрд╛ рдХрд┐рдпрд╛ рдФрд░ рдПрдХ рдХрд╛рдЙрдВрдЯ (CHILDREN) рдЬреЛрдбрд╝рд╛, рднрд▓реЗ рд╣реА рдпрд╣ рдереЛрдбрд╝рд╛ рднреНрд░рд╛рдордХ рд╣реЛ, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ fd3->fd2->fd1 рдХреЛ рднреА рдЧрд┐рдирддрд╛ рд╣реИред

$ ~/bin/docker-1.1.2-dev ps -S
CONTAINER ID        IMAGE                       PORTS                                                                 NAME                #CHILDREN
9b382826657c        fedora:latest   0.0.0.0:49168->22/tcp, 0.0.0.0:49169->53/tcp, 0.0.0.0:49170->80/tcp   fd3                 0
93f5a7b13d8b        fedora:latest   0.0.0.0:49165->22/tcp, 0.0.0.0:49166->53/tcp, 0.0.0.0:49167->80/tcp   fd2                 1
4c6f3564612c        fedora:latest   0.0.0.0:49162->80/tcp, 0.0.0.0:49163->22/tcp, 0.0.0.0:49164->53/tcp   fd1                 3

EDIT3: рдЕрдм рдореИрдВ рд╕рд╣реА рдирд╛рдо рдирд┐рдХрд╛рд▓рддрд╛ рд╣реВрдВ

$ ./docker-1.1.2-dev ps -S
CONTAINER ID        IMAGE                       PORTS                                                                 NAME                #LINKS
71d9d03bba50        fedora:latest   0.0.0.0:49177->22/tcp, 0.0.0.0:49178->53/tcp, 0.0.0.0:49179->80/tcp   fd3                 0
cf67008f418f        fedora:latest   0.0.0.0:49174->22/tcp, 0.0.0.0:49175->53/tcp, 0.0.0.0:49176->80/tcp   fd2                 1
5549c65007b5        fedora:latest   0.0.0.0:49171->22/tcp, 0.0.0.0:49172->53/tcp, 0.0.0.0:49173->80/tcp   fd1                 3

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдмрдВрджрд░рдЧрд╛рд╣реЛрдВ рдХреА рдкрд░рд┐рднрд╛рд╖рд╛ рдФрд░ рд╕рдордп рдХреА рд╡рд╛рдЪрд╛рд▓рддрд╛ docker ps рдЖрдЙрдЯрдкреБрдЯ рдХреА рдЪреМрдбрд╝рд╛рдИ рдХрд╛ рдПрдХ рдмрдбрд╝рд╛ рд╣рд┐рд╕реНрд╕рд╛ рд╣реИрдВред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╕рдордп рдХреЛ рд╕рдВрдХреНрд╖рд┐рдкреНрдд рдХрд░рдиреЗ рдФрд░ рдмрдВрджрд░рдЧрд╛рд╣реЛрдВ рдХреА рдкрд░рд┐рднрд╛рд╖рд╛рдУрдВ рдХреЛ рд▓рд╛рдЗрдиреЛрдВ рдкрд░ рд▓рдкреЗрдЯрдиреЗ рд╕реЗ рдмрд╣реБрдд рд╕реА рдЬрдЧрд╣ рдмрдЪ рдЬрд╛рдПрдЧреА (рдореБрдЭреЗ рдХреЙрд▓рдо рдЪреБрдирдиреЗ/рдЫрд┐рдкрд╛рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрдиреЗ рдХреЗ рдЕрд▓рд╛рд╡рд╛)ред

CONTAINER ID     IMAGE                 COMMAND                CREATED     STATUS              PORTS                            NAMES
8a2e6a22ae1f     me/abc-data:latest    "/bin/sh -c bash"      6 sec       Exited (0) 6 sec                                     app-without-ports
749ed051fb73     me/webserver:latest   "/opt/server/run.sh"   4 days      Up 4 days           0.0.0.0:8080->8080/tcp,          my-webserver
                                                                                              192.168.1.1:9990->9990/tcp      
2eb3c43af24f     me/app:latest         "/opt/container-star   8 days      Up 8 days           0.0.0.0:1234->1234/tcp,          some-other-app
                                                                                              0.0.0.0:4567->4567/tcp, 
                                                                                              0.0.0.0:50000->50000/tcp, 
                                                                                              0.0.0.0:50000->50000/udp  

рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рдПрдХ рдкрд░реНрдпрд╛рд╡рд░рдг рдЪрд░ DOCKER_PS_FORMAT рдХреЛ рдХреЙрд▓рдордирд╛рдо рдХреЗ рд╕рд╛рде рд╕реЗрдЯ рдХрд░рдХреЗ рдПрдХ рдЯреЗрдореНрдкрд▓реЗрдЯ рдкреНрд░рджрд╛рди рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреЙрд▓рдордирд╛рдо: рдЪреМрдбрд╝рд╛рдИ : рд╕рдВрд╢реЛрдзрдХ, ...
рдЬрд╣рд╛рдВ modifier рдЕрддрд┐рд░рд┐рдХреНрдд рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдХреА рдЕрдиреБрдорддрд┐ рджреЗ рд╕рдХрддрд╛ рд╣реИ рдЬреИрд╕реЗ no-trunc , full (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рдХрдВрдЯреЗрдирд░ рдЖрдИрдбреА рдХреЗ рд▓рд┐рдП) рдпрд╛ short рд▓рд┐рдП CREATED рдЬрд╣рд╛рдВ ~1h About an hour ago рд▓рд┐рдП рдПрдХ рд╕рдВрдХреНрд╖рд┐рдкреНрдд рд░реВрдк рд╣реЛ рд╕рдХрддрд╛ рд╣реИред

рдореИрдВ рдЕрдкрдиреЗ рдореЗрдВ рдЗрд╕ рдкрд╛рд░реНрдЯреА / zsh рд╕рдорд╛рд░реЛрд╣ рд▓рд┐рдЦрд╛ ~/.bashrc рдХреЗ рдмреЗрд╣рддрд░ рдкреНрд░рджрд░реНрд╢рди рдЙрддреНрдкрд╛рджрди рдХреЗ рд▓рд┐рдП docker ps , рдЖрдк рдХреЛ рдЫрд┐рдкрд╛рдиреЗ рдпрд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдлрд┐рд░ рд╕реЗ рдЖрджреЗрд╢ рдХреЙрд▓рдо:

dps()  {
  docker ps $@ | awk '
  NR==1{
    FIRSTLINEWIDTH=length($0)
    IDPOS=index($0,"CONTAINER ID");
    IMAGEPOS=index($0,"IMAGE");
    COMMANDPOS=index($0,"COMMAND");
    CREATEDPOS=index($0,"CREATED");
    STATUSPOS=index($0,"STATUS");
    PORTSPOS=index($0,"PORTS");
    NAMESPOS=index($0,"NAMES");
    UPDATECOL();
  }
  function UPDATECOL () {
    ID=substr($0,IDPOS,IMAGEPOS-IDPOS-1);
    IMAGE=substr($0,IMAGEPOS,COMMANDPOS-IMAGEPOS-1);
    COMMAND=substr($0,COMMANDPOS,CREATEDPOS-COMMANDPOS-1);
    CREATED=substr($0,CREATEDPOS,STATUSPOS-CREATEDPOS-1);
    STATUS=substr($0,STATUSPOS,PORTSPOS-STATUSPOS-1);
    PORTS=substr($0,PORTSPOS,NAMESPOS-PORTSPOS-1);
    NAMES=substr($0, NAMESPOS);
  }
  function PRINT () {
    print ID NAMES IMAGE STATUS CREATED COMMAND PORTS;
  }
  NR==2{
    NAMES=sprintf("%s%*s",NAMES,length($0)-FIRSTLINEWIDTH,"");
    PRINT();
  }
  NR>1{
    UPDATECOL();
    PRINT();
  }' | less -FSX;
}
dpsa() { dps -a $@; }

рд╕рдорд╛рдзрд╛рди рд╣реИрдХред рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░реЗрдВ рдХрд┐ рдЖрдк рдХрд┐рд╕ $cols[x] рдХреЛ рдЗрдЪреНрдЫрд╛рдиреБрд╕рд╛рд░ рд░рдЦрдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред

docker ps | perl -ne '<strong i="6">@cols</strong> = split /\s{2,}/, $_; printf "%30s %20s %20s\n", $cols[1], $cols[3], $cols[4]'

рдХреБрдЫ рдРрд╕рд╛ рд╣реЛрдирд╛ рдЖрд╕рд╛рди рдирд╣реАрдВ рд╣реЛрдЧрд╛:

$ docker ps --columns=name,id,status,image

рдФрд░ рд╣рд░ рдХреЛрдИ рд╕рд┐рд░реНрдл рдЙрдкрдирд╛рдо рдХрд░ рд╕рдХрддрд╛ рд╣реИ docker ps ред

рдзрдиреНрдпрд╡рд╛рдж, @caiguanhaoред рдЪрддреБрд░ рдЕрдВрддрд░рд┐рдо рд╕рдорд╛рдзрд╛рдиред рдЗрд╕реЗ рдордЫрд▓реА рдХреЗ рдЦреЛрд▓ рдХреЗ рд▓рд┐рдП рдЯреИрдХрд▓ рдкреНрд▓рдЧрдЗрди рдХреЗ рд░реВрдк рдореЗрдВ рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛ред

рджреЛрд╕реНрддреЛрдВ, рдмрд╕ @caiguanhao рдХреЗ рдХреЛрдб рдореЗрдВ рдПрдХ рдЫреЛрдЯрд╛ рд╕рд╛ рд╕реБрдзрд╛рд░ рдХрд┐рдпрд╛ рд╣реИ

https://github.com/jpmelos/dotfiles/commit/457a9c68f87eb5bd455aa22bdadab81c2651c2ea

рдПрдХ рд╕рд╛рдзрд╛рд░рдг рдкрд░рд┐рд╡рд░реНрддрди рдЬреЛ рдереЛрдбрд╝реА рдорджрдж рдХрд░реЗрдЧрд╛ рд╡рд╣ рд╣реИ CONTAINER ID рдФрд░ IMAGE рдХреЙрд▓рдо рдХреЗ рдмреАрдЪ рдХреА рджреВрд░реА рдХреЛ рдХрдо рдХрд░рдирд╛ред рдЕрдиреНрдп рдХреЙрд▓рдо 3 рд░рд┐рдХреНрдд рд╕реНрдерд╛рди рд╕реЗ рдЕрд▓рдЧ рд╣реЛрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЗрди рджреЛрдиреЛрдВ рдХреЛ 8 рд╕реЗ рдЕрд▓рдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

рдореЗрд░реЗ 5 рд╕реЗрдВрдЯ рдЬрдм рддрдХ рд╡реЗ 'рдбреЙрдХрд░ рдкреАрдПрд╕' рдХреЛ рдкрдврд╝рдиреЗ рдпреЛрдЧреНрдп рдирд╣реАрдВ рдмрдирд╛рддреЗ:

https://github.com/t0mk/dosk#dops

рдХреНрдпрд╛ рд╣рдо рдЙрд╕ рдкрд░ рдХреЛрдИ рдЕрдкрдбреЗрдЯ рджреЗрдЦрдиреЗ рдЬрд╛ рд░рд╣реЗ рд╣реИрдВ?
docker ps рдореЗрд░реЗ рд╡рд┐рдЪрд╛рд░ рд╕реЗ рд╕рдмрд╕реЗ рдЖрдо рдХрдорд╛рдВрдб рд╣реИред рдореБрдЭреЗ рдЖрд╢рд╛ рд╣реИ рдХрд┐ рд╣рдореЗрдВ рдХреЙрд▓рдо рджрд┐рдЦрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдлрд╝рд┐рд▓реНрдЯрд░ рдХрд░рдиреЗ рдХрд╛ рд╡рд┐рдХрд▓реНрдк рджреЗрдирд╛ рдЗрддрдирд╛ рдХрдард┐рди рдирд╣реАрдВ рд╣реИред
(рдореИрдВ рдХреА рддрд░рд╣ рдХреБрдЫ рдЙрдореНрдореАрдж рдереА рдХрд┐ )

рдЭрд▓рдХ

рдЬреИрд╕рд╛ @AntouanK рдХрд╣рд╛ рдФрд░ @wpp рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд╕реБрдЭрд╛рд╡ рджрд┐рдпрд╛, рдПрдХ рдХреЙрд▓рдо рдЭрдВрдбрд╛ рдЬреНрдпрд╛рджрд╛рддрд░ рд╕реНрдерд┐рддрд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП рдкрд╕рдВрдж рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ #10255 рдХреЛ рдЗрд╕ рдкрд░ рдзреНрдпрд╛рди рджреЗрдирд╛ рдЪрд╛рд╣рд┐рдПред

@duglin рдХреНрдпрд╛ рдпрд╣ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдХреЛ рдЫреЛрдЯрд╛ рдмрдирд╛рддрд╛ рд╣реИ, рдпрджреНрдпрдкрд┐? рдпрджрд┐ рдирд╣реАрдВ рддреЛ рдореИрдВ рдЗрд╕реЗ рдЦреБрд▓рд╛ рд░рдЦрдирд╛ рдЪрд╛рд╣реВрдВрдЧрд╛ред

@bfirsh рдЕрдЪреНрдЫрд╛ рдмрд┐рдВрджреБ, рдирд╣реАрдВ, рдпрд╣ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдирд╣реАрдВ рдмрджрд▓реЗрдЧрд╛ред рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ рд╣рдо рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдХреЛ v2 рддрдХ рдмрджрд▓ рд╕рдХрддреЗ рд╣реИрдВ (рдпрджрд┐/рдЬрдм рд╡рд╣ рд╣реИ) рдХреНрдпреЛрдВрдХрд┐ рдЕрдЧрд░ рд╣рдордиреЗ рдХрд┐рдпрд╛ рддреЛ рд╣рдо рдореМрдЬреВрджрд╛ рдХреНрд▓рд╛рдЗрдВрдЯ рдХреЛ рддреЛрдбрд╝ рджреЗрдВрдЧреЗред

рдореЗрд░рд╛ рднреА рдпрд╣реА рд╡рд┐рдЪрд╛рд░ рд╣реИред рд╢рд╛рдпрдж рдХреБрдЫ рдмреБрджреНрдзрд┐рдорд╛рди рддрдВрддреНрд░ рдЬреЛ ENV['COLUMNS'] рдкрд░ рдереНрд░реЗрд╕рд╣реЛрд▓реНрдб рд▓рд╛рдЧреВ рдХрд░рдХреЗ рдкреНрд░рджрд░реНрд╢рд┐рдд рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдХреЙрд▓рдо рдХрд╛ рдЪрдпрди рдХрд░рддрд╛ рд╣реИ?

рдореИрдВ https://github.com/docker/docker/issues/7477#issuecomment -70243594 рд╕реЗ рд╕рд╣рдордд рд╣реВрдВ, рдмрд╕ рд╣рдореЗрдВ рдХреЙрд▓рдо рдЪреБрдирдиреЗ рдХрд╛ рд╡рд┐рдХрд▓реНрдк рджреЗрдВред

рдореИрдВ https://github.com/docker/docker/issues/7477#issuecomment -70243594 рд╡рд┐рдХрд▓реНрдк рдХреЗ рд▓рд┐рдП рднреА рд╡реЛрдЯ рдХрд░рддрд╛ рд╣реВрдВред
docker ps docker ps --columns=id,image,command,created,status,ports,name рдФрд░ рдЕрдзрд┐рдХ рдХреЙрд▓рдо рдЬреИрд╕реЗ ip рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдирд╛ рдЖрд╕рд╛рдиреА рд╕реЗ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдХреБрдЫ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ https://github.com/docker/docker/issues/8786 рдЪрд╛рд╣рддреЗ рдереЗ

+1 рдХреЗ рд▓рд┐рдП --columns

рд╡рд░реНрдХрдЕрд░рд╛рдЙрдВрдб рдХреЗ рд░реВрдк рдореЗрдВ, рдореИрдВ docker ps -q рдХреЛ docker inspect --format рд╕рд╛рде рд╕рдВрдпреЛрдЬрд┐рдд рдХрд░рддрд╛ рд╣реВрдВ:

docker ps -q | xargs docker inspect --format '{{printf "%.12s\t%s" .Id .Config.Cmd}}'

рдЖрдкрдХреЛ рдбреЙрдХрд░ рдирд┐рд░реАрдХреНрд╖рдг рдФрд░ рдЧреЛрд▓рд╛рдВрдЧ рдЯреЗрдореНрдкрд▓реЗрдЯрд┐рдВрдЧ рдХреЗ рдЖрдЙрдЯрдкреБрдЯ рдореЗрдВ рдЦреЛрджрдирд╛ рд╣реЛрдЧрд╛, рд▓реЗрдХрд┐рди рдпрд╣ рд▓рдЧрднрдЧ рдЕрд╕реАрдо рд░реВрдк рд╕реЗ рд╡рд┐рдиреНрдпрд╛рд╕ рдпреЛрдЧреНрдп рд╣реИред

@jafcrocker рдЕрдЪреНрдЫрд╛ рд▓рдЧрд╛ред рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рд╣рдо рдЗрд╕ рддрд░рд╣ рдХреЗ рд╡рд░реНрдХрдЕрд░рд╛рдЙрдВрдб рдХрд╛ рд╕рдВрдЧреНрд░рд╣ рд░рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рд╕рд╛рд░ рдмрдирд╛ рд╕рдХреЗрдВ? рдЬрдм рддрдХ рд╣рдореЗрдВ рдЖрдЙрдЯрдкреБрдЯ рдХреЛ рдареАрдХ рд╕реЗ рдХрд╕реНрдЯрдорд╛рдЗрдЬрд╝ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рдлрд╝реНрд▓реИрдЧ рдирд╣реАрдВ рдорд┐рд▓рддреЗ...

рд╣рдордиреЗ рдЕрднреА #14699 рдХреЛ рдорд░реНрдЬ рдХрд┐рдпрд╛ рд╣реИ рдЬреЛ рдЖрдкрдХреЛ ps рдЖрдЙрдЯрдкреБрдЯ рдмрджрд▓рдиреЗ рдХреЗ рд▓рд┐рдП docker ps --format ... рдЪрд▓рд╛рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рдЖрдк рдЪрд╛рд╣реЗрдВ рддреЛ рдПрдХ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдкреНрд░рд╛рд░реВрдк рднреА рд╕реЗрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЗрд╕ рд╕реНрдХреНрд░реАрдирд╢реЙрдЯ рдХреЛ рджреЗрдЦреЗрдВ:

image

рдореИрдВ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рддрдп рдХреЗ рд░реВрдк рдореЗрдВ рдмрдВрдж рдХрд░рдиреЗ рдЬрд╛ рд░рд╣рд╛ рд╣реВрдВред рдХреГрдкрдпрд╛, рдЗрд╕реЗ рдЖрдЬрд╝рдорд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реНрд╡рддрдВрддреНрд░ рдорд╣рд╕реВрд╕ рдХрд░реЗрдВ рдФрд░ рд╣рдореЗрдВ рдмрддрд╛рдПрдВ рдХрд┐ рдЖрдк рдХреНрдпрд╛ рд╕реЛрдЪрддреЗ рд╣реИрдВред

рдЬреЛ рд▓реЛрдЧ рдЗрд╕реЗ рдЖрдЬрдорд╛рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рдЙрдирдХреЗ рд▓рд┐рдП "рдорд╛рд╕реНрдЯрд░" рдмрд┐рд▓реНрдб https://master.dockerproject.org рдкрд░ рдкрд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рдпрд╣ рд╕реБрд╡рд┐рдзрд╛ рдЬрд▓реНрдж рд╣реА рд╡рд╣рд╛рдВ рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдП (рдпрджрд┐ рдкрд╣рд▓реЗ рд╕реЗ рдирд╣реАрдВ рд╣реИ)

рдЬрдмрдХрд┐ --format рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдПрдХ рдЕрдЪреНрдЫрд╛ рдЬреЛрдбрд╝ рд╣реИ, рдореБрдЭреЗ рдирд╣реАрдВ рд▓рдЧрддрд╛ рдХрд┐ рдпрд╣ рдкреНрд░рд╛рдердорд┐рдХ рд╕рдорд╕реНрдпрд╛ рд╣рд▓ рдХрд░рддрд╛ рд╣реИред рд▓рдЧрднрдЧ рд╕рднреА рдХрдорд╛рдВрдб рд▓рд╛рдЗрди рдЯреВрд▓ рдЬрд┐рдирдХрд╛ рдореИрдВ рджреИрдирд┐рдХ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реВрдВ рд╡реЗ рдЪрд░ рдЖрдХрд╛рд░ рдХреЗ рдЯрд░реНрдорд┐рдирд▓реЛрдВ рдХреЛ рдареАрдХ рд╕реЗ рд╕рдВрднрд╛рд▓рддреЗ рд╣реИрдВред рдЕрдзрд┐рдХрд╛рдВрд╢ $COLUMNS рдкрд░реНрдпрд╛рд╡рд░рдг рдЪрд░ рдХреЛ рджреЗрдЦрдХрд░ рдФрд░ рдЙрдкрдпреБрдХреНрдд рдкрд╛рда рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдХреЗред

рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, 80x24 рдЯрд░реНрдорд┐рдирд▓ рдореЗрдВ ps aux :
screenshot from 2015-07-23 00 47 35

рдФрд░ 137x24 рдЯрд░реНрдорд┐рдирд▓ рдореЗрдВ:
screenshot from 2015-07-23 00 49 35

рдпрд╣ рдХреЙрд▓рдо рдХреА рдЪреМрдбрд╝рд╛рдИ рдХреЛ рдмрджрд▓рддрд╛ рд╣реИ рдФрд░ рдХрдорд╛рдВрдб рдХреЛ рдЫреЛрдЯрд╛ рдХрд░рддрд╛ рд╣реИ рддрд╛рдХрд┐ рд╕рдм рдХреБрдЫ рдПрдХ рд▓рд╛рдЗрди рдореЗрдВ рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдлрд┐рдЯ рд╣реЛ рдЬрд╛рдПред рдкрдардиреАрдпрддрд╛ рдХреЗ рд▓рд┐рдП рд╕рдм рдХреБрдЫ рдФрд░ рдорд╛рдирд╡ рдХреЗ рд▓рд┐рдП рдкрд╛рд░реНрд╕ рдХрд░рдирд╛ рдЖрд╕рд╛рди рд╣реИред

рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ, рдореИрдВ рдПрдХ рдмреИрд╢ рд░реИрдкрд░ рд▓рд┐рдЦ рд╕рдХрддрд╛ рд╣реВрдВ рдЬреЛ $COLUMNS рдЖрдзрд╛рд░ рдкрд░ рд╡рд┐рднрд┐рдиреНрди рд╕реНрд╡рд░реВрдкрдг рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХреЛ рд▓рд╛рдЧреВ рдХрд░реЗрдЧрд╛ рд▓реЗрдХрд┐рди рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╣реИрдХреА рд▓рдЧрддрд╛ рд╣реИ рдФрд░ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдХрд┐рд╕реА рднреА рдХрдорд╛рдВрдб рд▓рд╛рдЗрди рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреЗ рд▓рд┐рдП рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд╡реНрдпрд╡рд╣рд╛рд░ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рдореБрдЭреЗ рдЦреЗрдж рд╣реИ рдХрд┐ рдбреЙрдХрд░ рдХрд╛ рдЖрдЙрдЯрдкреБрдЯ рдЧрдиреНрджрд╛ рдФрд░ рдкрдврд╝рдиреЗ рдореЗрдВ рдХрдард┐рди рд╣реИред

рдХреНрдпрд╛ рдРрд╕рд╛ рдирд╣реАрдВ рдХрд░рдиреЗ рдХрд╛ рдХреЛрдИ рдХрд╛рд░рдг рд╣реИ? рдХрд┐рд╕реА рдкреБрд╕реНрддрдХрд╛рд▓рдп рдореЗрдВ рдХреЛрдИ рд╕реАрдорд╛ рдпрд╛ рдЖрдкрдХреА рдУрд░ рд╕реЗ рдХреЛрдИ рдирд┐рд░реНрдгрдп? рдпрд╣ рдЬрд╛рдирдиреЗ рдХреА рдЬрд░реВрд░рдд рд╣реИ рдХрд┐ рдХреНрдпрд╛ рдпрд╣ рдкреАрдЖрд░ рдореЗрдВ рдареАрдХ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╡рд┐рдЪрд╛рд░ рдХрд░рдиреЗ рд▓рд╛рдпрдХ рд╣реИ, рдпрд╛ рд╢рд╛рдпрдж рдореИрдВ рдЧрд▓рдд рдкреЗрдбрд╝ рдХреЛ рднреМрдВрдХ рд░рд╣рд╛ рд╣реВрдВред

@nsg : рд╕рд╣рдордд - рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдЖрдЙрдЯрдкреБрдЯ рдЕрднреА рднреА рд╕реБрдзрд╛рд░ рдХреЗ рд╕рд╛рде рдХрд░ рд╕рдХрддрд╛ рд╣реИред

рдХреНрдпрд╛ рдЗрд╕ рдореБрджреНрджреЗ рдкрд░ рдХреЛрдИ рдЕрдкрдбреЗрдЯ рдЖрдпрд╛ рд╣реИ?

рддреЛ рдХрд┐рд╕реА рднреА рдХрд╛рд░рдг рд╕реЗ, рдкреАрдПрд╕ рдЖрдЙрдЯрдкреБрдЯ рдореЗрдВ рдЫрд╡рд┐ рд╣реИрд╢ рдЕрдм рдЫреЛрдЯрд╛ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдореБрдЭреЗ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЕрдкрдиреЗ рдЯрд░реНрдорд┐рдирд▓ рдХреЛ рдЕрд▓реНрдЯреНрд░рд╛-рд╡рд╛рдЗрдб (рдкреВрд░реА рд╕реНрдХреНрд░реАрди рдХреЛ рдКрдкрд░ рд▓реЗ рдЬрд╛рдирд╛) рдмрдирд╛рдирд╛ рдерд╛, рдмрд╕ рдЕрддреАрдд рдореЗрдВ рдбреЙрдХрдЯрд░ рдХреЛ рдкреНрд░рдпреЛрдЧ рдХрд░рдиреЗ рдпреЛрдЧреНрдп рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рдЕрдм рдпрд╣ рдкрд░реНрдпрд╛рдкреНрдд рдирд╣реАрдВ рд╣реИред 1.7.1 рддрдХ, рдкреНрд░рддреНрдпреЗрдХ рдкрдВрдХреНрддрд┐ рд▓рдЧрднрдЧ 200 рдХреЙрд▓рдо рдЪреМрдбрд╝реА рд╣реИред рдЗрддрдиреЗ рдЪреМрдбрд╝реЗ рдЯрд░реНрдорд┐рдирд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреМрди рдХрд░рддрд╛ рд╣реИ?

рдореИрдВ рдЗрд╕рдХреЗ рд╕рд╛рде рдереЛрдбрд╝рд╛ рд╕рд╛ рдЦреЗрд▓ рд░рд╣рд╛ рд╣реВрдВред

рдЖрдИрдбреА рдХреЛ рд╣рдЯрд╛рдиреЗ рдФрд░ рдмрдирд╛рдиреЗ рд╕реЗ рд╣рдореЗрдВ рдХреБрдЫ рд╣рдж рддрдХ рдкрддрд╛ рдЪрд▓рддрд╛ рд╣реИ:

NAMES                 IMAGE          STATUS                     PORTS                         COMMAND
elegant_turing        nginx          Up 13 secs                 0.0.0.0:80->80/tcp, 443/tcp   "nginx -g 'daemon off"
composedemo_web_1     composedemo_   Exited (2) 23 secs ago                                   "/bin/sh -c 'python a"
composedemo_redis_1   redis          Exited (137) 11 secs ago                                 "/entrypoint.sh redis"
elated_carson         hello-world    Exited (0) 23 mins ago                                   "/hello"

рд╣рд╛рд▓рд╛рдВрдХрд┐ рдЕрднреА рднреА рдмрд╣реБрдд рд▓рдВрдмрд╛ рд╣реИред рд╣рдо рдЕрдирджреЗрдЦрд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ 0.0.0.0 :

NAMES                 IMAGE          STATUS                     PORTS                 COMMAND
elegant_turing        nginx          Up 13 secs                 80->80/tcp, 443/tcp   "nginx -g 'daemon off"
composedemo_web_1     composedemo_   Exited (2) 23 secs ago                           "/bin/sh -c 'python a"
composedemo_redis_1   redis          Exited (137) 11 secs ago                         "/entrypoint.sh redis"
elated_carson         hello-world    Exited (0) 23 mins ago                           "/hello"

рд▓реЗрдХрд┐рди рдЕрднреА рднреА рдереЛрдбрд╝рд╛ рд▓рдВрдмрд╛ рд╣реИред рд╢рд╛рдпрдж рд╕реНрдерд┐рддрд┐ рдХреЛ рдЫреЛрдЯрд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рд░рдЪрдирд╛рддреНрдордХрддрд╛ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ... рдХреБрдЫ рдкрд╛рд░реНрд╕ рдХрд░рдиреЗ рдпреЛрдЧреНрдп/рд╕реНрдХреИрди рдХрд░рдиреЗ рдпреЛрдЧреНрдп, рд▓реЗрдХрд┐рди рдлрд┐рд░ рднреА рдЫреЛрдЯрд╛... Exit (2) 23s ago рд╣реЛ рд╕рдХрддрд╛ рд╣реИ?

рд╣рд╛рд▓рд╛рдВрдХрд┐ рдХрдорд╛рдВрдб рдХреЛ рдЫреЛрдЯрд╛ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рд╣рдореЗрдВ рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рдФрд░ рднреА рдЫреЛрдЯрд╛ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ рдХрд┐ рдХрдорд╛рдВрдб рдХрд╛ рдХрдо рд╕реЗ рдХрдо _some_ рджрд┐рдЦрд╛рдпрд╛ рдЬрд╛рдПред рдирд╛рдо рдЫреЛрдЯрд╛ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗред рдЫрд╡рд┐ рдХреЛ рдЫреЛрдЯрд╛ рдХрд░рдиреЗ рдкрд░ рд╢рд╛рдпрдж "..." рдкреНрд░рд╛рдкреНрдд рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рд▓рдВрдмреЗ рдмрдВрджрд░рдЧрд╛рд╣реЛрдВ рдХреЗ рд▓рд┐рдП рд╡рд╣реАред

рд╡рд┐рдЪрд╛рд░?

рдХреБрдЫ рд╣реИрдХреНрд╕ рдпрд╣рд╛рдБ рд╣реИрдВ: https://github.com/docker/docker/compare/master...bfirsh :7477-shorter-ps

@bfirsh рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЖрдк рдХрд┐рд╕реА рдЪреАрдЬрд╝ рдкрд░ рд╣реИрдВред

рдпрджрд┐ рдЖрдк 23 рд╕реЗрдХрдВрдб рдХреЗ рдмрдЬрд╛рдп рд╕реНрдерд┐рддрд┐ (рдЬреИрд╕рд╛ рдЖрдкрдиреЗ рдХрд╣рд╛) рдХреЛ 23 рд╕реЗрдХрдВрдб рдореЗрдВ рдмрджрд▓рддреЗ рд╣реИрдВ рдФрд░ рдЫрд╡рд┐ рдФрд░ рдкреЛрд░реНрдЯ рдХреЙрд▓рдо рджреЛрдиреЛрдВ рдХреЛ рдЫреЛрдЯрд╛ рдХрд░рддреЗ рд╣реИрдВ рддреЛ рдпрд╣ рдХрд╛рдлреА рдЫреЛрдЯрд╛ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред

@bfirsh рдЖрдк рдбрд┐рдлрд╝реЙрд▓реНрдЯ рджреГрд╢реНрдп рдореЗрдВ рдХрд╛рдо рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░ рд░рд╣реЗ рд╣реИрдВ? рдХреНрдпрд╛ рдЖрдк --format рд╡рд┐рдХрд▓реНрдк рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реЛрдЪ рд░рд╣реЗ рд╣реИрдВ рдЬреЛ рдХреБрдЫ рд▓реЛрдЧ рдмрд╛рдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ?

рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рд╣рдо s рдмрдЬрд╛рдп sec рдФрд░ m рдмрдЬрд╛рдп mins

@aanm рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА --format docker 1.8 рдореЗрдВ рд╣реИред рдЖрдк рдХреБрдЫ рдЗрд╕ рддрд░рд╣ рдЬреЛрдбрд╝рдХрд░ рдХреНрд▓рд╛рдЗрдВрдЯ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдбрд┐рдлрд╝реЙрд▓реНрдЯ ps рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЛ рднреА рдмрджрд▓ рд╕рдХрддреЗ рд╣реИрдВ:

{
  "psFormat": "table {{ .ID }}\\t{{ .Status }}"
}

рдЖрдк рдЕрдкрдиреЗ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдХреЛ рдЙрд╕ рдкреНрд░рд╛рд░реВрдк рдХреЗ рд╕рд╛рде рд╕реЗрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдЬрд┐рд╕реЗ рдЖрдк рдмреЗрд╣рддрд░ рдкрд╕рдВрдж рдХрд░рддреЗ рд╣реИрдВред

рд╕рдВрд▓рдЧреНрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдЧрд▓реЗ docker exec рдЪрд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдореБрдЭреЗ рдЕрдХреНрд╕рд░ рд╡рд░реНрддрдорд╛рди рдХрдВрдЯреЗрдирд░ рдирд╛рдо рджреЗрдЦрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред

рдЗрд╕рд▓рд┐рдП, рдореБрдЭреЗ рдЖрд╢рд╛ рд╣реИ рдХрд┐ рдЕрдЧрд░ NAMES рдмрд╛рдж IMAGE рдХреЛ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рддреЛ рдпрд╣ рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛, рдореБрдЭреЗ рдЕрдм рдХреБрдЫ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред

рдзрдиреНрдпрд╡рд╛рджред

рдбреЛрдХрд░ 1.8.1 рдореЗрдВ рд╕рдорд╕реНрдпрд╛ (fc21)
--format рдХрдВрдЯреЗрдирд░ рдирд╛рдореЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдирд╣реАрдВ рдЬрд╛рдирддрд╛ рд╣реИред

docker ps --format "{{.ID}}t{{.Image}}t{{.CreatedAt}}t{{.RunningFor}}t{{.Status}}t{{.Name}}" -a
рдЯреЗрдореНрдкрд▓реЗрдЯ рдкрд╛рд░реНрд╕рд┐рдВрдЧ рддреНрд░реБрдЯрд┐: рдЯреЗрдореНрдкрд▓реЗрдЯ: :1:64: <.Name> рдкрд░ "" рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдирд╛: рдирд╛рдо рд╕рдВрд░рдЪрдирд╛ рдкреНрд░рдХрд╛рд░ рдХрд╛ рдХреНрд╖реЗрддреНрд░ рдирд╣реАрдВ рд╣реИ *ps.containerContext

рдЕрдм рддрдХ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВ:
рдбреЙрдХрд░ рдкреАрдПрд╕-рдП | рдкрд░реНрд▓ -рдиреЗ 'рдЪреЙрдореНрдк; @cols = рд╡рд┐рднрд╛рдЬрд┐рдд /s{2,}/, $_; $рдирд╛рдо = рдкреЙрдк @cols; рдкреНрд░рд┐рдВрдЯрдл "%-28s %-20s %-20s %-30sn", $name, $cols[1], $cols[3], $cols[4]'

@parf рдкреНрд▓реЗрд╕рд╣реЛрд▓реНрдбрд░ рдХреЛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ Names рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ:

https://github.com/calavera/docker/blob/missing_ps_placeholder/docs/reference/commandline/ps.md#formatting

рдкреНрд░реЗрд░рдгрд╛ рдХреЗ рд▓рд┐рдП @caiguanhao рдХреЛ рдзрдиреНрдпрд╡рд╛рджред

рдореИрдВ рдЗрд╕реЗ рдпрд╣рд╛рдБ рдЫреЛрдбрд╝ рд░рд╣рд╛ рд╣реВрдБ:

IMAGE                                NAMES                     STATUS              PORTS
xxxxx:x.x                            xx_xxxxxxxx_xxxxx         Up About an hour    10.23.123.111:26002->6379/tcp
xxxxxxxxx:x.x                        xx_xxxxxxxx_xxxxxxxxx     Up About an hour    29015/tcp
                                                                                   10.23.123.111:26001->8080/tcp
                                                                                   10.23.123.111:26000->28015/tcp
xxxxxxxx_xx_xxxxxxxx                 xx_xxxxxxxx               Up About an hour    127.0.0.1:8086->8080/tcp
xxxxxx_xx                            xx_xxx_xxx                Up About an hour    127.0.0.1:8082->8888/tcp
xxx_xx                               xx_xxx                    Up About an hour    127.0.0.1:8083->8080/tcp
xxxx/xxxxxxxxx-xxxxxx                xx_xxx_xxxxxxxxx_xxx      Up 2 hours          10.23.123.111:25002->25565/tcp
xxxx/xxxxxxxxx-xxxxxx                xx_xxx_xxxxxxxxx_xxxxxx   Up 2 hours          10.23.123.111:25001->25565/tcp
xxxxxx/xxxxxxxx:xxxxxx               xxx_xxxxxxxx              Up 3 hours          127.0.0.1:8080->8080/tcp
xxxxxxxxxx/xxxxxxx                   xxx_xxxxxxx               Up 3 hours          10.23.123.111:25->25/tcp
                                                                                   10.23.123.111:587->587/tcp
xx_xxx                               xx_xx                     Up 3 hours          10.23.123.112:9987->9987/tcp
                                                                                   10.23.123.112:10011->10011/tcp
                                                                                   10.23.123.112:30033->30033/tcp
                                                                                   10.23.123.112:9987->9987/udp
xxxx.xx/xxxxxxxxx/xxxxxx:x.x.x       xxx_xxxxxx                Up 3 hours          10.42.241.123:22->22/tcp
                                                                                   443/tcp
                                                                                   127.0.0.1:8000->80/tcp
xxxxxx/xxxxxx-xxxxxx:xxxxxx          xxx_xxxxxx_xx_xxxxxx      Up 3 hours
xxxx.xx/xxxxxxxxx/xxxxxxxxxx:x.x-x   xxx_xxxxxx_xxxxxxxx       Up 3 hours          5432/tcp
xxxx.xx/xxxxxxxxx/xxxxx:xxxxxx       xxx_xxxxxx_xxxxx          Up 3 hours          6379/tcp

/etc/profile.d/dps.sh: https://gist.github.com/GottZ/4a6c2af314d73cd8b71d

рдЕрдЪреНрдЫрд╛ @GottZ , рд╕рд╛рдЭрд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж!

@thaJeztah рдореИрдВрдиреЗ рдмреЗрд╣рддрд░ рджреГрд╢реНрдпрддрд╛ рдХреЗ рд▓рд┐рдП рдкреНрд░рддреНрдпреЗрдХ рдкрдВрдХреНрддрд┐ рдХреЛ рдмреЛрд▓реНрдб рдмрдирд╛рдпрд╛ рд╣реИред рдордЬреЗ рдХрд░реЛ :рдореБрд╕реНрдХреБрд░рд╛рдУ :

рдЗрд╕ рдмреАрдЪ, awk рд╕рд╛рде рдореЗрд░рд╛ рджреГрд╖реНрдЯрд┐рдХреЛрдг:

$ alias my_docker_ps="docker ps | awk 'BEGIN{FIELDWIDTHS = \"20 33 23 20 20 70 20\"}{print \$1,\$2,\$5,\$7}'"

$ my_docker_ps         
CONTAINER ID         IMAGE                             STATUS               NAMES
b83fe9a6a06e         kibana                            Up 32 minutes        kibana              
4d78b9cd2bed         elasticsearch                     Up About an hour     evil_feynman        
fbbc40a49569         mattermost/platform               Up 9 weeks           mattermost-dev      
3b4dd9d00305         outcoldman/splunk:latest          Up 9 weeks           boring_yalow           

@danidelvalle рдмрд╕ рдХреНрдпреЛрдВ рдирд╣реАрдВ;

docker ps --format "table {{.ID}}\t{{.Image}}\t{{.Status}}\t{{.Names}}"

рдпрд╣ рдкрд╣рд▓реЗ рд╣реА рдкреНрд░рддрд┐рдмрджреНрдз рдФрд░ рдЬрд╛рд░реА рдХрд┐рдпрд╛ рдЬрд╛ рдЪреБрдХрд╛ рд╣реИред рдореБрдЭреЗ рд╕рдордЭ рдореЗрдВ рдирд╣реАрдВ рдЖрддрд╛, рдпрд╣ рдЕрднреА рднреА рдХреНрдпреЛрдВ рдЦреБрд▓рд╛ рд╣реИ?

@thaJeztah рддреБрдо рд╕рд╣реА рд╣реЛ, рдзрдиреНрдпрд╡рд╛рдж :)

@oidiub13 рдореБрдЦреНрдп рд░реВрдк рд╕реЗ https://github.com/docker/docker/issues/7477#issuecomment -123898874 рдХреЗ рдХрд╛рд░рдг

рд╣рд╛рдБ рдпрд╣ рдХрд╖реНрдЯрдкреНрд░рдж рд╣реИ ..

рдореИрдВ рдЖрдорддреМрд░ рдкрд░ рдЯрд░реНрдорд┐рдирд▓ рдХреЙрд▓рдо рдЪреМрдбрд╝рд╛рдИ рдкрд░ рдбрд┐рдлрд╝реЙрд▓реНрдЯ ps рдХреЛ рдЫреЛрдЯрд╛ рдХрд░рдиреЗ рдХреЗ рд╕рд╛рде рдареАрдХ рд╣реВрдВ:

dps() {
  docker ps | cut -c-$(tput cols)
}

--columns=name,id,status,image рд▓рд┐рдП +1

рдпрд╣ рд╕рдорд╕реНрдпрд╛ рдЕрднреА рднреА рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ рдореМрдЬреВрдж рд╣реИред рдХрд┐рд╕реА рднреА рддрд░рд╣ рдиреАрдЪреЗ рджрд┐рдП рдЧрдП (рдЙрдмрдВрдЯреВ рдореЗрдВ рдкрд░реАрдХреНрд╖рдг рдХрд┐рдП рдЧрдП) рдХреЛ рдЕрдкрдиреЗ .bashrc рд░рдЦрдирд╛ рдПрдХ рд╕рдорд╛рдзрд╛рди рд╣реИ:

CMD_WATCHDOCKER="watch \"docker ps -q | xargs docker inspect --format '{{.Id}} @{{.Config.Image}} @{{.Config.Cmd}} @{{range \\\$p, \\\$conf := .NetworkSettings.Ports}}{{\\\$p}}->{{(index \\\$conf 0).HostPort}}{{end}} @{{.NetworkSettings.IPAddress}}' | column -t -s='@' | cut -c 1-5,64-\""
alias watchdocker='eval $CMD_WATCHDOCKER'

watchdocker рдЪрд▓ рд░рд╣рд╛ рд╣реИ:

4596c3   ruby:2.2.2   [bash]                        172.17.0.82
827ca9   postgres     [postgres]   5432/tcp->5432   172.17.0.72

@Pithikos docker ps--format '{{ .ID }}\t{{ .Image }}\t{{ .Command }}\t{{ .Ports }}' рдкреНрд░рддреНрдпреЗрдХ рдХрдВрдЯреЗрдирд░ рдХреЗ рд▓рд┐рдП рдЙрди рд╕рднреА API рдХреЙрд▓ рдХрд┐рдП рдмрд┐рдирд╛ рдЖрдкрдХреЛ рдпрд╣ рджреЗрдЧрд╛ред
рд╕рд╛рде рд╣реА рдЖрдк рдЗрд╕реЗ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд╕реНрд╡рд░реВрдк рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрд╕реЗ ~/.docker/config.json рдореЗрдВ рдбрд╛рд▓ рд╕рдХрддреЗ рд╣реИрдВ

@ cpuguy83 рдХреМрди рд╕рд╛ рд╕рдВрд╕реНрдХрд░рдг рдЗрд╕рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ? рдореИрдВ рдХрднреА рднреА рдпрд╣ рдХрд╛рдо рдХрд░рдиреЗ рдореЗрдВ рдХрд╛рдордпрд╛рдм рдирд╣реАрдВ рд╣реБрдЖ, рди рд╣реА рдХрд╛рдо рдкрд░ рдФрд░ рди рд╣реА рдШрд░ рдкрд░ред рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛ рдпрджрд┐ рдбреЙрдХреНрд╕ рдореЗрдВ рдпрд╣ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ рдХрд┐ рдХреМрди рд╕рд╛ рд╕рдВрд╕реНрдХрд░рдг рдХрд┐рд╕рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИред

@Pithikos рдпрд╛ рддреЛ 1.8 рдпрд╛ 1.9, рдирд┐рд╢реНрдЪрд┐рдд рдирд╣реАрдВ рд╣реИред

рдбреЙрдХрд░ рдкреАрдПрд╕/рдЫрд╡рд┐рдпреЛрдВ рдХреЛ 80 рдХреЙрд▓рдо рдореЗрдВ рдлрд┐рдЯ рдХрд░реЗрдВ

screenshot94

https://github.com/rhoit/my-config/blob/e374a3cf28f3bc461766ce32f823207692c74f83/shell/shellrc.d/docker.sh#L10 -L28

рдЭрд▓рдХ

рд╕рд╣реА рдЙрдкрдпреЛрдЧ рдкреНрд░рд╛рд░реВрдк рд╕реНрдЯреНрд░рд┐рдВрдЧ рдореЗрдВ "рддрд╛рд▓рд┐рдХрд╛" рдХреАрд╡рд░реНрдб рдХреЗ рд╕рд╛рде рд╣реИ, рдпрд╣ рдЖрдкрдХреЛ docker ps -a --format="table {{.ID}}\t{{.Names}}\t{{.Image}}\t{{.Command}}\t{{.Status}}" рдЕрдЪреНрдЫрд╛ рд╕реНрдерд╛рди рд╕реНрд╡рд░реВрдкрдг рджреЗрдЧрд╛

рдореИрдВ рдЗрд╕ рдПрдХ рдХреЛ рдмрдВрдж рдХрд░рдиреЗ рдХрд░ рд░рд╣рд╛ рд╣реВрдБ рдХреЗ рд░реВрдк рдореЗрдВ рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ --format рдХреЗ рд▓рд┐рдП рдзреНрд╡рдЬ ps рдореБрджреНрджреЗ рдХреЛ рд╕рдВрдмреЛрдзрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рд╕рдмрдХреЛ рд╢реБрдХреНрд░реАрдпрд╛!

рдЗрд╕ рдореБрджреНрджреЗ рдХрд╛ рдирд╛рдо рд╢рд╛рдпрдж рдареАрдХ рдирд╣реАрдВ рдерд╛ред рдпрд╣ рдЕрднреА рднреА рдмрдирд╛ рд╣реБрдЖ рд╣реИ рдХрд┐ рдХрдорд╛рдВрдб рдХреЗ рд▓рд┐рдП _default_ 80 рд╡рд░реНрдг рдЪреМрдбрд╝рд╛ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рд╣рд╛рд▓рд╛рдВрдХрд┐ рдЗрд╕рдХреЗ рдмрдВрдж рд╣реЛрдиреЗ рдХреА рдЦреБрд╢реА рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдЗрддрдирд╛ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдирд╣реАрдВ рд╣реИред

--format рдкрд░реНрдпрд╛рдкреНрдд рдирд╣реАрдВ рд▓рдЧрддрд╛ рд╣реИред
https://docs.docker.com/engine/reference/commandline/ps/#/formatting

рдкрд░рд┐рдгрд╛рдо рдХреЛ рд▓рдВрдмрд╡рдд рд░реВрдк рд╕реЗ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╡рд┐рдХрд▓реНрдк рдЬреЛрдбрд╝рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреИрд╕реЗ, рдЬреИрд╕реЗ select * from foobar\G MySQL рдореЗрдВ

рдореИрдВ рдЖрдорддреМрд░ рдкрд░ рд╕рд┐рд░реНрдл рдпрд╣ рдЬрд╛рдирдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рдХрд┐ рдХреМрди рд╕реЗ рдХрдВрдЯреЗрдирд░ рдЪрд▓ рд░рд╣реЗ рд╣реИрдВ (рдФрд░ рдХрд┐рддрдиреЗ рд╕рдордп рдХреЗ рд▓рд┐рдП)ред

рдпрд╣ рдореЗрд░реЗ рд▓рд┐рдП рдЪрд╛рд▓ рд╣реИ:

$ docker ps --format "table {{.Names}}\t{{.Status}}"

рдЗрд╕рд╕реЗ рднреА рдмреЗрд╣рддрд░, рдореИрдВрдиреЗ рдЗрд╕реЗ рдЙрдкрдирд╛рдо рдпрд╛рдж рд░рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЖрд╕рд╛рди рдореЗрдВ рд▓рдкреЗрдЯрд╛:

alias dps='docker ps --format "table {{.Names}}\t{{.Status}}"'

рдпрд╣рд╛рдБ рдЖрдЙрдЯрдкреБрдЯ рдХрд╛ рдПрдХ рдирдореВрдирд╛ рд╣реИ:

NAMES                     STATUS
projectxyz_chrome_1       Up 11 minutes
projectxyz_web_1          Up 11 minutes
projectxyz_app_1          Up 11 minutes
projectxyz_phpmyadmin_1   Up 11 minutes
projectxyz_memcached_1    Up 11 minutes
projectxyz_db_1           Up 11 minutes

рдЖрдк рдпрд╣рд╛рдВ --format рдХрдорд╛рдВрдб рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдзрд┐рдХ рдЬрд╛рди рд╕рдХрддреЗ рд╣реИрдВ:
https://docs.docker.com/engine/reference/commandline/ps/

рдЖрд╢рд╛ рд╣реИ рдХрд┐ рдпрд╣ рдХрд┐рд╕реА рдХреА рдорджрдж рдХрд░рддрд╛ рд╣реИ

@joshmedeski рдЖрдк рдЕрдкрдиреЗ рдкрд╕рдВрджреАрджрд╛ рд╕реНрд╡рд░реВрдкрдг рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рднреА рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рддрд╛рдХрд┐ рдЗрд╕реЗ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдХреЗ рд░реВрдк рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХреЗ; https://docs.docker.com/engine/reference/commandline/cli/#/configuration -files

рдХреАрд╕реНрдЯреНрд░реЛрдХреНрд╕ рдХреЛ рдмрдЪрд╛рдиреЗ рдХреА рднрд╛рд╡рдирд╛ рдореЗрдВ рдпрд╣рд╛рдБ рдЫреЛрдЯреА рдмреИрд╢ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╣реИ рдЬрд┐рд╕реЗ рдореИрдВрдиреЗ рддрд░реНрдХреЛрдВ рдХреА рдПрдХ рд╕реВрдЪреА рд▓реЗрдиреЗ рдХреЗ рд▓рд┐рдП рд▓рд┐рдЦрд╛ рд╣реИ, рдЧреЛ рдЯреЗрдореНрдкреНрд▓реЗрдЯ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд░реЗрдВ рдФрд░ docker ps рдХрдорд╛рдВрдб рдХреЛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░реЗрдВ рддрд╛рдХрд┐ рдХрд┐рд╕реА рднреА рдХреНрд░рдо рдореЗрдВ рдЬреЛ рднреА рдХреЙрд▓рдо рдЪрд╛рд╣рд┐рдП, рдЙрд╕рдХрд╛ рддрддреНрдХрд╛рд▓ рдкреНрд░рджрд░реНрд╢рди рджрд┐рдпрд╛ рдЬрд╛ рд╕рдХреЗред рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдбрд╛рд▓рдирд╛ рдкрд░реНрдпрд╛рдкреНрдд рдЧрддрд┐рд╢реАрд▓ рдирд╣реАрдВ рд╣реИ - рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдПрдХ рдкрд▓ рдореЗрдВ рдХреЙрд▓рдо рдХрд╛ рдПрдХ рд╕реЗрдЯ рдФрд░ рдПрдХ рдкрд▓ рдмрд╛рдж рдЕрд▓рдЧ рд╕реЗрдЯ рд╣реЛрдирд╛ рдмрд╣реБрдд рдЙрдкрдпреЛрдЧреА рд╣реИред рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдпрд╣рд╛рдБ рд╣реИ , рдЖрд╢рд╛ рд╣реИ рдХрд┐ рдпрд╣ рдХрд┐рд╕реА рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧреА рд╣реИред рдЪреАрдпрд░реНрд╕ -рдПрдВрдбреА

#!/usr/bin/env python2
# -*- coding: utf-8 -*-

import subprocess

show_all = False
fields = [
  "Names",
  "Command",
  "Image",
  "CreatedAt",
  "Status",
]

cmd = ['docker', 'ps']
if show_all:
  cmd += ['-a']
cmd += ['--format', '\t'.join([('{{ .'+field+' }}') for field in fields])]
response = subprocess.check_output(cmd)

dataset = [fields]
dataset_widths = [0] * len(fields)
for idx, line in enumerate(response.split('\n')[:-1]):
  fieldvalues = line.decode('utf-8').replace(u"\u2026", u"_").split('\t')
  dataset.append(fieldvalues)
  for jdx, fieldvalue in enumerate(fieldvalues):
    if dataset_widths[jdx] < len(fieldvalue):
      dataset_widths[jdx] = len(fieldvalue)

for idx, items in enumerate(dataset):
  output_line = ['{:>3d}'.format(idx)]
  for jdx, item in enumerate(items):
    output_line.append(('{:'+str(dataset_widths[jdx])+'s}').format(item))
  print '   '.join(output_line)

рдЗрд╕реЗ рдЕрдкрдиреЗ ~/.docker/config.json рдореЗрдВ рдбрд╛рд▓реЗрдВ
{ "psFormat": "table {{.Names}}\\t{{.Image}}\\t{{.RunningFor}} ago\\t{{.Status}}\\t{{.Command}}", "imagesFormat": "table {{.Repository}}\\t{{.Tag}}\\t{{.ID}}\\t{{.Size}}" }

рдФрд░ рдЕрдкрдиреА рдкрд╕рдВрдж рдХреЗ рдЕрдиреБрд╕рд╛рд░ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░реЗрдВред рдореЗрд░реЗ рд▓рд┐рдП рд╕рдорд╕реНрдпрд╛ рд╣рдореЗрд╢рд╛ рд▓рдВрдмреА рдЫрд╡рд┐ рдХрд╛ рдирд╛рдо рдереА (рдХреНрдпреЛрдВрдХрд┐ рдЗрд╕рдореЗрдВ рдореЗрд░реА рдХрд╕реНрдЯрдо рдЫрд╡рд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП рдореЗрд░рд╛ рд╡реНрдпрдХреНрддрд┐рдЧрдд рднрдВрдбрд╛рд░ рдирд╛рдо рдерд╛)

рд╣рд░ рдХреЛрдИ рдЬреЛ рдПрдХ рдмреЗрд╣рддрд░ рдбреЙрдХрдЯрд░ рдкреАрдПрд╕ рдХреА рддрд▓рд╛рд╢ рдореЗрдВ рд╣реИ, рдЙрд╕реЗ рдЗрд╕реЗ рджреЗрдЦрдирд╛ рдЪрд╛рд╣рд┐рдП:
https://github.com/moncho/dry

рд╕рдорд╛рдзрд╛рди рд╣реИрдХред рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░реЗрдВ рдХрд┐ рдЖрдк рдХрд┐рд╕ $cols[x] рдХреЛ рдЗрдЪреНрдЫрд╛рдиреБрд╕рд╛рд░ рд░рдЦрдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред

docker ps | perl -ne '<strong i="7">@cols</strong> = split /\s{2,}/, $_; printf "%30s %20s %20s\n", $cols[1], $cols[3], $cols[4]'

рдзрдиреНрдпрд╡рд╛рджред

рдореБрдЭреЗ рдмрд╕ рдЗрддрдирд╛ рд╣реА рдЪрд╛рд╣рд┐рдП рдерд╛:
docker ps | perl -ne '<strong i="12">@cols</strong> = split /\s{2,}/, $_; printf "%30s %20s %20s", $cols[1], $cols[4], $cols[6]'

рдЫрд╡рд┐ рд╕реНрдерд┐рддрд┐ рдирд╛рдо рджреЗ рд░рд╣рд╛ рд╣реИ
рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рд╕рдВрд░реЗрдЦрд┐рдд рд╕реНрддрдВрднреЛрдВ рдореЗрдВ

рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ

рдХреБрдЫ рдЗрд╕ рддрд░рд╣ рд╕реЗ рдмреИрд╢ рдЙрдкрдирд╛рдо рдмрдирд╛рдирд╛ рдмреЗрд╣рддрд░ рд╣реИ:

docker ps --format="table {{.Image}}\t{{.Status}}\t{{.Ports}}\t{{.Names}}"

"рдЯреЗрдмрд▓" рдкреНрд░рд╛рд░реВрдк рдкрд░ рдзреНрдпрд╛рди рджреЗрдВ

рд╕рдорд╛рдзрд╛рди рд╣реИрдХред рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░реЗрдВ рдХрд┐ рдЖрдк рдХрд┐рд╕ $cols[x] рдХреЛ рдЗрдЪреНрдЫрд╛рдиреБрд╕рд╛рд░ рд░рдЦрдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред

docker ps | perl -ne '<strong i="7">@cols</strong> = split /\s{2,}/, $_; printf "%30s %20s %20s\n", $cols[1], $cols[3], $cols[4]'

рдпрд╣ рдХрдорд╛рд▓ рд╣реИ, thnx

@nagracks рдпрджрд┐ рдЖрдк рдЙрд╕ рдкреНрд░рд╛рд░реВрдк рдХреЛ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдХреЗ рд░реВрдк рдореЗрдВ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рдореИрдВ --format рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЕрдиреБрд╢рдВрд╕рд╛ рдХрд░рддрд╛ рд╣реВрдВ (рдЬрд┐рд╕реЗ рдЖрдкрдХреА ~/.docker/config.json рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ)

рдЕрдЧрд░ рдореИрдВ рдЕрдкрдиреА .docker/config.json рдлрд╝рд╛рдЗрд▓ рдХреЛ рдЗрд╕ рддрд░рд╣ рд╕реЗ рдХреБрдЫ рдХрд╕реНрдЯрдо рдХреЗ рд╕рд╛рде рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░рддрд╛ рд╣реВрдВ:

"imagesFormat": "table {{.ID}}  {{.Repository}}\t{{.Tag}}  {{.CreatedSince}}  {{.Size}}",
"psFormat": "table {{.ID}}  {{.Names}}\t{{.Image}}  {{.Command}}  {{.Status}}",

рдлрд┐рд░ рдореИрдВ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд╕реНрд╡рд░реВрдк рдХреЛ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП docker ps рдХрдорд╛рдВрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреИрд╕реЗ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ? рдореИрдВрдиреЗ рдХреЛрд╢рд┐рд╢ рдХреА docker ps --format "" , рд▓реЗрдХрд┐рди рдпрд╣ рдЕрднреА рднреА config.

docker ps --format=table рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рддрд╛рд▓рд┐рдХрд╛ рдкреНрд░рд╛рд░реВрдк рджреЗрдирд╛ рдЪрд╛рд╣рд┐рдП

рдореИрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╕рд░рд╛рд╣рдирд╛ рдХрд░рддрд╛ рд╣реВрдВ рдХрд┐ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рдЙрдкрд▓рдмреНрдз рдЖрдЙрдЯрдкреБрдЯ рдХрд╛ рдХрдо-рд╡рд░реНрдмреЛрдЬрд╝ рд╕рдВрд╕реНрдХрд░рдг рдерд╛, рдпрд╣ рдпрд╛рдж рдХрд┐рдП рдмрд┐рдирд╛ рдХрд┐ рддрд╛рд▓рд┐рдХрд╛ рд╕реНрд╡рд░реВрдкрдг рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рдХреНрдпрд╛ рд╣реИ рдпрд╛ рд╕реНрд╡рд░реВрдкрдг рд╕рдВрджрд░реНрдн рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрдиреАрдп рдирд╛рдо рдХреНрдпрд╛ рд╣реИрдВред рднрд▓реЗ рд╣реА рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдХреЛ рд╡реИрд╕реЗ рд╣реА рд░рдЦрд╛ рдЬрд╛рдПрдЧрд╛, _pre-formatted_ рдХрдо рд╡рд░реНрдмреЛрдЬрд╝ рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рд▓рд┐рдП рдПрдХ рдзреНрд╡рдЬ рдЙрдкрдпреЛрдЧреА рд╣реЛрдЧрд╛ред

рдХрдо рд╡рд░реНрдмреЛрдЬрд╝ рд╕рдВрд╕реНрдХрд░рдг рд╕реЗ рдХрд┐рд╕ рдЬрд╛рдирдХрд╛рд░реА рдХреЛ рдХрдо рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдпрд╣рд╛рдВ рдореЗрд░реЗ рджреЛ рд╕реЗрдВрдЯ рд╣реИрдВ:

  • рдЕрдзрд┐рдХрд╛рдВрд╢ рдЙрдкрдпреЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдирд╛рдо рдФрд░ рдЖрдИрдбреА рдПрдХ рд╣реА рдЙрджреНрджреЗрд╢реНрдп рдХреА рдкреВрд░реНрддрд┐ рдХрд░рддреЗ рд╣реИрдВ, рдФрд░ рдРрд╕реЗ рдХреЛ рд╕рдорд╛рдкреНрдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
  • рдирд┐рд░реНрдорд╛рдг рдбреЗрдЯрд╛рдЯрд╛рдЗрдо рд╢рд╛рдпрдж рдХреБрдЫ рдРрд╕рд╛ рд╣реИ рдЬрд┐рд╕реЗ рдЖрдк рдХрдо рд╡рд░реНрдмреЛрдЬрд╝ рдЖрдЙрдЯрдкреБрдЯ рд╕реЗ рдЫреЛрдбрд╝реЗ рдЬрд╛рдиреЗ рдХреЗ рд╕рд╛рде рдареАрдХ рд╣реЛрдВрдЧреЗ
  • рдореИрдВ рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдк рд╕реЗ рдХрдо рд╡рд░реНрдмреЛрдЬрд╝ рдЖрдЙрдЯрдкреБрдЯ рд╕реЗ рдкреЛрд░реНрдЯ рдХреЛ рдЫреЛрдбрд╝рдиреЗ рдХреЗ рд╕рд╛рде рднреА рдареАрдХ рд╣реВрдБ

рдореЗрд░реЗ рдЙрдкрдпреЛрдЧ рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ рдореИрдВ рдЖрдорддреМрд░ рдкрд░ рдХреЗрд╡рд▓ рдЙрд╕ рдХрдВрдЯреЗрдирд░ рдХрд╛ рдирд╛рдо рджреЗрдЦрдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рдЬрд┐рд╕рдХреЗ рдЦрд┐рд▓рд╛рдл рдореИрдВ рдХреБрдЫ рдЕрдиреНрдп рдХрдорд╛рдВрдб рдЪрд▓рд╛ рд░рд╣рд╛ рд╣реВрдВ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рд░рд┐рдореЛрдЯ рд╕рд░реНрд╡рд░ рдиреЛрдб рдкрд░), рдФрд░ рдЖрдЙрдЯрдкреБрдЯ рдХреЛ рдХрдИ рд▓рд╛рдЗрдиреЛрдВ рдореЗрдВ рд▓рдкреЗрдЯрдиреЗ рд╕реЗ рдпрд╣ рдкрддрд╛ рд▓рдЧрд╛рдирд╛ рдореБрд╢реНрдХрд┐рд▓ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ рдЙрд╕ рдХрдВрдЯреЗрдирд░ рдХрд╛ рд╕рдЯреАрдХ рдирд╛рдо рдЬрд┐рд╕рдореЗрдВ рдореБрдЭреЗ рджрд┐рд▓рдЪрд╕реНрдкреА рд╣реИред

рдореИрдВ рдпрд╣рд╛рдВ "рдЕрдиреБрдореЛрджрд┐рдд" рд╕рдорд╛рдзрд╛рди рд╕реЗ рдХреБрдЫ рд╣рдж рддрдХ рдирд┐рд░рд╛рд╢ рд╣реВрдВ, "рдмрд╕ рдПрдХ рдЙрдкрдирд╛рдо рдХреЛ --format рдкреИрд░рд╛рдореАрдЯрд░ рдХреЗ рд╕рд╛рде рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░реЗрдВ", рдЬреИрд╕реЗ рдХрд┐ рдЖрдк рд╣рдореЗрд╢рд╛ рдЗрди рдЖрджреЗрд╢реЛрдВ рдХреЛ рдРрд╕реЗ рд╡рд╛рддрд╛рд╡рд░рдг рдореЗрдВ рдЪрд▓рд╛ рд░рд╣реЗ рд╣реЛрдВрдЧреЗ рдЬрд╣рд╛рдВ рдЖрдкрдиреЗ рдЕрдкрдирд╛ рдЙрдкрдирд╛рдо рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд┐рдпрд╛ рд╣реИ, рдпрд╛ рд╕реНрд╡рд░реВрдкрдг рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рдФрд░ рд╕рдВрджрд░реНрдн рдЪрд░ рдпрд╛рдж рд░рдЦреЗрдВ

рдореИрдВ рдЕрднреА рднреА рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рд░реЛрдЬрд╛рдирд╛ рдПрдлрдбрдмреНрд▓реНрдпреВрдЖрдИрдбрдмреНрд▓реНрдпреВ рдореЗрдВ рдЪрд▓рд╛рддрд╛ рд╣реВрдВред docker ps -a рдХрд╛ рдореЗрд░рд╛ рд╡рд░реНрддрдорд╛рди рдЖрдЙрдЯрдкреБрдЯ _180 рд╡рд░реНрдг рдЪреМрдбрд╝рд╛_ рд╣реИ - рдореЗрд░реА 27" 4K рд╕реНрдХреНрд░реАрди рдХреЗ рдЖрдзреЗ рд╕реЗ рдЕрдзрд┐рдХ!

CONTAINER ID        IMAGE                                          COMMAND                 CREATED             STATUS                    PORTS               NAMES
994be99dddd1        nvidia/cuda:10.2-devel-ubuntu18.04             "bash"                  4 days ago          Exited (0) 4 days ago                         eager_tesla
30796cc3db32        nvidia/cuda:10.2-devel-ubuntu18.04             "bash"                  4 days ago          Exited (127) 4 days ago                       laughing_maxwell
ed5f20c1cff3        gcr.io/deeplearning-platform-release/tf2-gpu   "/entrypoint.sh bash"   4 days ago          Exited (0) 3 days ago                         distracted_ardinghelli
0bb06e992ef4        gcr.io/deeplearning-platform-release/tf2-gpu   "/entrypoint.sh bash"   4 days ago          Exited (0) 4 days ago                         bold_brahmagupta

рдФрд╕рдд рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд╕реЗ рдпрд╣ рдЕрдкреЗрдХреНрд╖рд╛ рдирд╣реАрдВ рдХреА рдЬрд╛рдиреА рдЪрд╛рд╣рд┐рдП рдХрд┐ рд╡рд╣ рдЕрдкрдиреЗ docker ps рдХрдорд╛рдВрдб рдХреЛ рдХреЗрд╡рд▓ рдЙрдЪрд┐рдд рдЖрдХрд╛рд░ рдХреЗ рдЯрд░реНрдорд┐рдирд▓ рдкрд░ рдкрдардиреАрдп рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдирд╛рдо рджреЗрдЧрд╛ред рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ 80 рд╡рд░реНрдгреЛрдВ рдЬрд┐рддрдирд╛ рдЫреЛрдЯрд╛ рди рд╣реЛ, рд▓реЗрдХрд┐рди рдпрд╣ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ 180 рд╡рд░реНрдгреЛрдВ рдХрд╛ рдирд╣реАрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред

рдореИрдВ рдПрдХ рд╕реНрдЯреНрд░реЙрдореИрди рдХреЗ рд░реВрдк рдореЗрдВ рдПрдХ рдкреБрд▓ рдЕрдиреБрд░реЛрдз рдЦреЛрд▓рдиреЗ рдХрд╛ рд▓реБрддреНрдл рдЙрдард╛ рд░рд╣рд╛ рд╣реВрдВред рдореИрдВ

рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
0 / 5 - 0 рд░реЗрдЯрд┐рдВрдЧреНрд╕

рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджреЛрдВ

kunyan picture kunyan  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

xied75 picture xied75  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

Nurza picture Nurza  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

karellm picture karellm  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

noahwhite picture noahwhite  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ