《一起學Docker27:如何在容器重建後,仍舊保留之前的bash歷史?》 矻矻來福Krave bash 命令行歷史可以讓我們快速重複之前使用過的命令,也可以檢查之前輸入的命令是否存在什麼問題。你只需要在命令行終端,按向上 ↑ 箭頭按鈕就能查看 bash 歷史。可以說是非常好用的功能。但是重新構建容器的話,或者切換會話的話,之前的歷史記錄就都丟失了。不過辦法總比困難多。今天就來說一說,怎樣可以做到,即便是重建容器,仍舊能保留 bash 歷史。首先,更新 Dockerfile ,使得每次 bash 中使用命令,都會更新歷史,並把歷史保存在持久化的路徑中。如果你是 root 用戶,可以這樣更新 Dockerfile : 如果你是 非root 用戶,可以這樣更新 Dockerfile 。將 user-name-goes-here 替換成你容器中 非root用戶 的用戶名。 整個邏輯是:設置 PROMPT_COMMAND 環境變量,設為:展示所有 ( all 即 -a )歷史。然後將 HISTFILE 變量設為存放歷史記錄的路徑。如果需要,再創建 /commandhistory 路徑以及 .bash_history 文件,設置文件的權限以便用戶有權寫入文件。最後,把這段命令片段寫入用戶的 .bashrc 文件。這樣每次啟動容器,都會執行這個代碼片段。接著添加本地卷來存儲命令行歷史。這一步會根據你使用 Dockerfile 或 image,還是使用 Docker Compose 而有所不同。如果使用的是 Dockerfile 或 image:在 devcontainer.json 文件中,使用 mounts 屬性: 如果使用的是 Docker Compose :更新或擴展你的 docker-compose.yml 文件,針對目標服務,做如下修改: 最後,為了讓所做的修改能夠生效,如果已經構建過容器,並且已連接容器,可以在 Command Palette 中運行 Remote-Containers: Rebuilld Container 命令;如果沒有,則運行 Remote-Containers: Open Folder in Container 命令。之後,無論你怎麼重構容器,之前輸入過的命令行歷史都會被保留下來。歡迎關注我的賬號,我將持續更新。我們下期,不見不散。 《一起學Docker27:如何在容器重建後,仍舊保留之前的bash歷史?》完,請繼續朗讀精采文章。 喜歡 小編的世界 e4to.com,請記得按讚、收藏及分享!
音調
速度
音量
語言
一起學Docker27:如何在容器重建後,仍舊保留之前的bash歷史?
精確朗讀模式適合大多數瀏覽器,也相容於桌上型與行動裝置。
不過,使用Chorme瀏覽器仍存在一些問題,不建議使用Chorme瀏覽器進行精確朗讀。