Docker是目前流行的容器技術,它可以讓開發者方便地建置、運行和維護應用程式。但是,使用Docker時,需要注意容器執行時的權限問題。預設情況下,Docker透過使用root使用者來執行容器,這可能會存在安全風險。因此,我們需要學習如何為Docker增加使用的用戶,即將非root用戶指定為預設用戶。
為什麼要為Docker增加使用者?
Docker的安全性是非常重要的。尤其是當我們使用Docker來託管生產應用程式時,我們必須非常小心,因為應用程式容器可能攜帶著可以導致資料外洩或破壞的敏感資訊。因此,在這種情況下,我們不能使用root使用者來執行Docker容器。否則,任何容器中的惡意程式碼都可以存取宿主機器上的系統資源,這是非常危險的。
因此,為了解決這個問題,我們應該使用非root使用者來執行Docker容器。這將增加系統的安全性,並提高我們在使用Docker時的安全性。
如何為Docker增加使用的使用者?
Docker在運行時預設為root用戶,如果我們需要將非root用戶指定為預設用戶,則需要按照以下步驟進行操作:
第一步:建立一個非root用戶
我們需要建立一個新的非root用戶,並且禁用本地的root用戶。我們可以使用以下指令建立新使用者:
$ sudo adduser <username>
這條指令將新使用者的使用者名稱指定為
第二步:將新用戶加入docker群組
現在,我們已經建立了一個新的非root用戶,但是我們還需要將其新增到Docker群組中,以允許該使用者存取Docker套接字。我們可以使用以下指令將使用者加入docker群組:
$ sudo usermod -aG docker <username>
這條指令將新使用者加入docker群組。需要注意的是,我們必須以root使用者身分執行此命令。
第三個步驟:重啟Docker守護進程
接下來,我們需要重新啟動Docker守護進程,以使新使用者能夠存取Docker套接字。我們可以使用以下命令來重啟Docker守護進程:
$ sudo systemctl restart docker
該命令將重新啟動Docker守護進程,並使新用戶可以存取Docker套接字。
第四步: 將Docker服務配置為使用新用戶
現在,我們已經為Docker增加了新用戶,但是我們還需要將Docker服務配置為使用該用戶。我們可以使用以下命令來編輯Docker系統服務:
$ sudo vim /etc/systemd/system/multi-user.target.wants/docker.service
這條命令將開啟Docker系統服務檔案以編輯。在檔案中,我們需要修改以下內容:
ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock
修改為:
ExecStart=/usr/bin/dockerd --group docker -H fd:// --containerd=/run/containerd/containerd.sock
這個修改將Docker服務配置為使用docker群組。儲存並關閉檔案後,我們需要重新載入Docker系統服務:
$ sudo systemctl daemon-reload $ sudo systemctl restart docker
現在,我們已經成功將非root用戶指定為預設用戶,可以執行Docker容器。
總結
Docker是使用root用戶運行容器的預設設置,這可能會有安全問題。因此,我們應該學習如何為Docker增加使用的用戶,並停用root用戶。在操作過程中,我們建立了新的非root用戶,並將其新增到docker群組中,最後配置了Docker服務以使用該用戶。這樣,我們就成功地增加了Docker的安全性,並保護了我們的應用程式和系統資源。
以上是如何增加docker使用的用戶的詳細內容。更多資訊請關注PHP中文網其他相關文章!