在Docker中,有四種不同的運行模式可以供用戶選擇。下面我們來介紹一下這四種模式。
1. 單進程模式
docker run -it nginx /bin/bash
在單進程模式下,Docker只運行一個主進程,該進程運行在容器內(nèi)。簡而言之,你可以像啟動任何其他進程一樣簡單地啟動容器。Unix進程通常可以在容器內(nèi)直接運行。
2. 單主進程 + 關(guān)聯(lián)進程守護程序
docker run --name my_container --privileged -d my_project/bin/my_daemon
在這種模式下,Docker啟動了一個主進程,并通過進程守護程序來管理所有其他進程。這種設(shè)置非常適合需要同時運行多個進程的容器。一旦主進程退出或崩潰,進程守護程序就會相應(yīng)地關(guān)閉所有相關(guān)的附屬進程。
3. 多進程模式
docker run -d -p 8080:80 -e DATABASE_URI=dhcp://$(boot2docker ip 2>/dev/null):5432/postgresmy_app
在多進程模式下,每個進程都可以運行在其自己的容器中。這樣做的好處是可以更好地隔離不同的進程和服務(wù),增強容器的彈性和可重用性。
4. 單進程多樣式模式
docker run --privileged my_project/bin/shell docker run -p 3306:3306 my_project/bin/mysql
在單進程多樣式模式下,Docker在同一容器中啟動多個進程,每個進程都有自己的環(huán)境和上下文。這種設(shè)置通常用于開發(fā)或測試環(huán)境中,因為它會增加管理負擔,同時也會降低容器的可移植性。
下一篇田子css代碼