Docker sysrq 是 Docker 所支援的一個(gè)高級(jí)調(diào)試功能,在需要時(shí)啟用可以使 Docker 更加可靠。sysrq 是在 Linux 內(nèi)核下運(yùn)作的一個(gè)特殊的信號(hào)處理程序,Docker 利用了它在容器內(nèi)部無需輸入容器 ID 的情況下來運(yùn)行 sysrq 操作,然后進(jìn)行加強(qiáng)的調(diào)試。
docker sysrq
要在 Docker 容器中啟用 sysrq,需要使用上述命令。Docker 目前只支援了調(diào)試鍵 Option+t ,它會(huì)觸發(fā) EOI(End of Interrupt,中斷結(jié)束)信號(hào),也就是說如果要使用 sysrq 其他的操作,需要通過其他方式來啟用,如下所示:
docker run --cap-add SYS_ADMIN --security-opt apparmor:unconfined debian:buster-slim bash
這個(gè)命令將會(huì)用特權(quán)權(quán)限啟用一個(gè)容器,可以訪問以前不能訪問的系統(tǒng)調(diào)用和文件。
使用命令啟用 Docker sysrq 很簡(jiǎn)單,但是在使用過程中需要注意的是,sysrq 功能可以為 Docker 容器的排錯(cuò)帶來極大好處,但是為了保障 Docker 系統(tǒng)本身的完整性,我們應(yīng)該謹(jǐn)慎操作。
在 sysrq 運(yùn)作時(shí),需要遵循如下幾點(diǎn):
- 1、確保了解 Linux 內(nèi)核的知識(shí);
- 2、遵循 Docker 的官方文檔;
- 3、熟知不同的操作指令和相應(yīng)的含義;
- 4、在使用之前提前做好備份,防止數(shù)據(jù)出錯(cuò)。