新聞中心
有人可能會想到禁用SELinux或者更換內(nèi)核版本等方式解決。默認情況下使用overlayFS作為容器存儲驅(qū)動程序(storage driver)。只需要將容器存儲驅(qū)動程序切換為另一種類型即可。
在我的工作中,Docker是必不可少的一項技術(shù)。然而,在最近使用CentOS7時,我發(fā)現(xiàn)它居然無法正常啟動Docker!這讓我非常失望和沮喪。

創(chuàng)新互聯(lián)是專業(yè)的白堿灘網(wǎng)站建設(shè)公司,白堿灘接單;提供做網(wǎng)站、網(wǎng)站設(shè)計,網(wǎng)頁設(shè)計,網(wǎng)站設(shè)計,建網(wǎng)站,PHP網(wǎng)站建設(shè)等專業(yè)做網(wǎng)站服務(wù);采用PHP框架,可快速的進行白堿灘網(wǎng)站開發(fā)網(wǎng)頁制作和功能擴展;專業(yè)做搜索引擎喜愛的網(wǎng)站,專業(yè)的做網(wǎng)站團隊,希望更多企業(yè)前來合作!
首先,讓我們來看看這個問題的具體表現(xiàn)。當我嘗試運行“systemctl start docker”命令時,終端輸出了以下信息:
Job for docker.service failed because the control process exited with error code.
See "systemctl status docker.service" and "journalctl -xe" for details.
于是乎,我按照提示查看了日志文件,并找到了如下錯誤信息:
docker: Error starting daemon: SELinux is not supported with the overlay2 graph driver on this kernel. Either boot into a newer kernel or disable selinux in Docker's daemon.json file.
對此錯誤信息,有人可能會想到禁用SELinux或者更換內(nèi)核版本等方式解決。但對于一個長期穩(wěn)定支持企業(yè)級應(yīng)用的操作系統(tǒng)來說,在遇到這種問題時只能束手無策地選擇放棄嗎?
其實并不是這樣。經(jīng)過多方調(diào)查和驗證之后,我發(fā)現(xiàn)原因竟然出在CentOS7自身默認配置上!
具體來說,在CentOS7中,默認情況下使用overlayFS作為容器存儲驅(qū)動程序(storage driver)。而由于overlayFS本身存在一些限制,例如不支持SELinux等,因此就導(dǎo)致了Docker無法正常啟動。
那么該怎樣解決這個問題呢?其實非常簡單。只需要將容器存儲驅(qū)動程序切換為另一種類型即可。
具體步驟如下:
1. 編輯Docker配置文件daemon.json
sudo vi /etc/docker/daemon.json
2. 在文件中添加以下內(nèi)容:
{
"storage-driver": "devicemapper"
}
3. 保存并退出文件編輯模式
4. 重新啟動Docker服務(wù)
systemctl restart docker.service
這樣做之后,再次嘗試運行“systemctl start docker”命令時,你會發(fā)現(xiàn)它已經(jīng)可以正常工作了!
當然,在進行以上操作之前,請務(wù)必備份好你的數(shù)據(jù)以防意外發(fā)生。同時也要注意,在使用devicemapper作為容器存儲驅(qū)動程序時可能會出現(xiàn)性能瓶頸等問題。
總結(jié)起來,CentOS7是一個優(yōu)秀的操作系統(tǒng),但在默認配置上還有改進的空間。對于像我這樣依賴Docker技術(shù)的用戶來說,遇到無法啟動的情況真是讓人沮喪。希望CentOS團隊能夠及時修復(fù)這類問題,并提供更加友好和穩(wěn)定的默認配置方案!
新聞標題:CentOS7下無法啟動Docker:讓我失望的操作系統(tǒng)
文章地址:http://www.5511xx.com/article/dpdhejh.html


咨詢
建站咨詢
