Junior
Kuidas ühendada Dockeriga loodud töötava konteineriga?
sobes.tech AI
Vastus AI-lt
On mitmeid võimalusi:
-
Docker attach: Ühendab teie terminali standardsisendi, -väljundi ja -vigadega põhiprotsessi konteineris.
docker attach <konteineri_id_või_nimi>- Eelised: Lihtne kasutada, kohene ühendus põhiprotsessiga.
- Miinused: Seansi väljumine (Ctrl+C) võib peatada põhiprotsessi. Ei sobi eraldi käskude käivitamiseks konteineris.
-
Docker exec: Käivitab uue käsu töötavas konteineris ja ühendab selle terminaliga. Ideaalne interaktiivseks tööks (shell) või skriptide täitmiseks.
docker exec -it <konteineri_id_või_nimi> <käsk>- Parameeter
-ittähendab interaktiivset režiimi (-i) ja pseudo-TTY jaotust (-t). <käsk>- käsk, mida tuleb konteineris täita, tavaliseltbashvõish:
docker exec -it minu_web_server bash # Ühendus bash-iga konteineris docker exec minu_andmebaasi_konteiner ps aux # Käsk `ps aux` täitmine ja tulemuse kuvamine- Eelised: Ei peata põhiprotsessi väljumise ajal. Võimaldab käivitada mis tahes käske konteineris. Kõige levinum meetod silumiseks ja hoolduseks.
- Miinused: Käivitab uue protsessi konteineris.
- Parameeter
-
SSH-server konteineris: Parem keerulisem lähenemine, mis nõuab SSH-serveri paigaldamist ja konfiguratsiooni konteineri pildil. Võimaldab ühenduda konteineriga nagu tavalise virtuaalmasina või serveriga SSH protokolli kaudu.
- Eelised: Tavaline ja harjumuspärane haldamisviis. Turvalisem tootmiskeskkonnas (õigesti seadistatud).
- Miinused: Teeb konteineri pildi keerulisemaks. Nõuab SSH-serveri seadistamist ja võtmete/paroolide haldamist. Rikkub "üks protsess — üks konteiner" põhimõtet, kui põhiprotsess ei ole SSH.
Soovitus: Enamikel juhtudel on kõige sobivam ja turvalisem viis silumiseks ja interaktiivseks tööks docker exec -it.