84669 人學習
152542 人學習
20005 人學習
5487 人學習
7821 人學習
359900 人學習
3350 人學習
180660 人學習
48569 人學習
18603 人學習
40936 人學習
1549 人學習
1183 人學習
32909 人學習
使用一個容器管理多個應用程式服務進程?還是每個服務進程建立一個容器?
各區別是?
小伙看你根骨奇佳,潜力无限,来学PHP伐。
推薦伺服器管理工具雲端幫手
推薦一款神器應該可以幫到你,雲端幫手是一款功能強大的全面集中化管理雲端主機軟體。不只是相容Linux系統,Windows也是可以用的。實際上使用功能還是挺不錯的,因為功能全面且安裝簡單,基本上都是傻瓜式一鍵搞定,中間添加雲主機的話,首次要添加探針,以後就基本可以在面板上操作了,這個是挺方便的。主流雲那幾個基本上我都試過沒問題,系統也沒問題,這個倒是挺省心的,不會說存在什麼雲商的或者係統的就用不了,又要另外找軟體。大致功能如下:1.批量管理多台雲端主機;2.相容性強大,相容於市面基本所有的雲端商雲端主機,相容作業系統;3.操作簡單,視覺化介面預覽資源、一鍵修復、一鍵部署;4. 可以遠端登入雲端主機FTP桌面,處理雲端主機上的檔案;5.監控和,資源還有警告功能,這個是挺好的,不用盯著看;6.系統修復功能,這個是挺實用也比較必須的;7.免費使用。總得來說功能還挺全的,不存在需要又要另外找軟體的尷尬,一個雲幫手軟體基本上滿足了所有需求。
docker中的業務怎麼拆,拆多細,實際上是個見仁見智的事情。
例如gogs的docker容器,啟動瞭以下幾個東西:
s6-svscan-+-s6-supervise |-s6-supervise---gogs |-s6-supervise---sshd `-s6-supervise---syslogd
解釋一下,一般容器啟動如下東西:
1. PID=1的init进程,一般用supervisord,有些人用s6,例如上文中提到的gogs。此进程主要用于进程保活,进程重启。 2. agent,一般用于监控,某些agent还有可能会被用于执行命令等,例如有些公司会在java容器内安插一个agent,在异常的时候可以执行jmap等操作。 3. 业务进程,一般附属于init进程。很少见到有直接把业务进程当做主进程(init进程)的情况。因为主进程(init进程)跪掉,docker就跪了。 4. 其他附属进程,例如上文中提到的gogs,会附属启动一个sshd。有些还会附属启动其他服务,例如syslogd。
對個人:
举个栗子,gitlab 对于个人,完全可以为了方便,把gitlab的所需要的所有服务,都放进同一个docker。 包括: 1. nginx 2. sshd 3. mysql 4. gitlab(unicorn)
但是實際上,生產環境中,不能這麼做。
至少,即便mysql不能託管給DBA,也不要放到同一個docker裡,最次,也得做關聯容器,mysql放在一個籃子裡,gitlab放在另一個籃子裡。
從業務上來說,已經不是同一個東西了。
從穩定性來說,也不建議。
這是使用docker的最底線的節操,不能再低了。
別人怎麼拆解gitlab的業務
像marathon可以調度容器化服務的工具,有healthcheck功能,假如php-fpm掛了,healthcheck檢查的是php-fpm端口,maraton會殺掉這個容器,重新起一個instance。 假如所有進程都放一個容器裡,雖然可以建立多個health,但是healthcheak之間or的關係,假如nginx和php-fpm都掛了,healthcheck還是通過的。 也可以一個healthcheck透過nginx存取一個php頁面,這樣兩個服務進程都檢查到了。但是如果其中一個掛了,對容器進程重啟代價還挺大的。
例如一個應該有一個web應用, 和一個資料庫元件, 在web經常更新的情況下應該把兩個分開, 如果穩定版, 可以用幾年不更新的就放一起吧.
推薦伺服器管理工具雲端幫手
推薦一款神器應該可以幫到你,雲端幫手是一款功能強大的全面集中化管理雲端主機軟體。不只是相容Linux系統,Windows也是可以用的。實際上使用功能還是挺不錯的,因為功能全面且安裝簡單,基本上都是傻瓜式一鍵搞定,中間添加雲主機的話,首次要添加探針,以後就基本可以在面板上操作了,這個是挺方便的。主流雲那幾個基本上我都試過沒問題,系統也沒問題,這個倒是挺省心的,不會說存在什麼雲商的或者係統的就用不了,又要另外找軟體。大致功能如下:
1.批量管理多台雲端主機;
2.相容性強大,相容於市面基本所有的雲端商雲端主機,相容作業系統;
3.操作簡單,視覺化介面預覽資源、一鍵修復、一鍵部署;
4. 可以遠端登入雲端主機FTP桌面,處理雲端主機上的檔案;
5.監控和,資源還有警告功能,這個是挺好的,不用盯著看;
6.系統修復功能,這個是挺實用也比較必須的;
7.免費使用。總得來說功能還挺全的,不存在需要又要另外找軟體的尷尬,一個雲幫手軟體基本上滿足了所有需求。
docker中的業務怎麼拆,拆多細,實際上是個見仁見智的事情。
例如gogs的docker容器,啟動瞭以下幾個東西:
解釋一下,一般容器啟動如下東西:
對個人:
但是實際上,生產環境中,不能這麼做。
至少,即便mysql不能託管給DBA,也不要放到同一個docker裡,最次,也得做關聯容器,mysql放在一個籃子裡,gitlab放在另一個籃子裡。
從業務上來說,已經不是同一個東西了。
從穩定性來說,也不建議。
這是使用docker的最底線的節操,不能再低了。
別人怎麼拆解gitlab的業務
像marathon可以調度容器化服務的工具,有healthcheck功能,假如php-fpm掛了,healthcheck檢查的是php-fpm端口,maraton會殺掉這個容器,重新起一個instance。
假如所有進程都放一個容器裡,雖然可以建立多個health,但是healthcheak之間or的關係,假如nginx和php-fpm都掛了,healthcheck還是通過的。
也可以一個healthcheck透過nginx存取一個php頁面,這樣兩個服務進程都檢查到了。但是如果其中一個掛了,對容器進程重啟代價還挺大的。
例如一個應該有一個web應用, 和一個資料庫元件,
在web經常更新的情況下應該把兩個分開, 如果穩定版, 可以用幾年不更新的就放一起吧.