如何在 Windows 上的 Docker 中執行 Linux 庫?
簡介
本文將介紹 Linux 庫。這些庫的實際功能是什麼,以及不同型別的庫。然後,我們將瞭解如何使用下面提到的各種方法在 Windows 作業系統上使用這些 Linux 庫。
什麼是 Linux 庫?
Linux 終端僅執行並遵循命令。它是一個“僅文字控制檯”,響應終端命令。這些命令或函式的定義或程式碼儲存在庫中。
Linux 庫的型別
可以根據可執行檔案的性質對庫進行分類。
靜態庫
動態庫
靜態庫 - 命令及其定義包含在可執行檔案中。
動態庫 - 命令及其定義未繫結在可執行檔案中。命令的定義不在可執行檔案中,只有命令存在。
方法
有多種方法或途徑可以在 Windows 主機上使用 Linux 庫。其中一些列在下面。
在 Windows 主機上使用 Docker Desktop。
在 Windows 主機上使用虛擬機器。
在 Windows 主機上使用 WSL(適用於 Linux 的 Windows 子系統)。
這裡我們將實現各種 Linux 庫和軟體包的執行。
Docker Desktop
它是一個 Windows 桌面應用程式,用於在 Windows 平臺上執行 Docker 容器。它適用於 Apple、Linux 和 Windows。
步驟 1 - 開啟 Docker Desktop 應用程式

我們可以透過兩種方式建立、執行、停止、銷燬和管理容器。一種是使用此“桌面版本”,或者我們可以使用“Windows 終端”。這裡我們將使用 Windows 終端進行演示。
步驟 2 - 從開始選單開啟終端。如果未安裝,請使用 Microsoft Store 安裝“Windows 終端”。使用命令“docker --version”檢查 docker 版本。
示例
$docker --version
輸出
Docker version 20.10.17, build 100c701
步驟 3 - 執行 Ubuntu 容器和命令
現在在 Docker 容器內執行 Ubuntu 映象。然後,進入此容器以執行 Linux 命令。
PS C:\Users\HP> docker run -itd --name cont1 ubuntu 36a15a62f09afd3cf8837807bc99a9414dc4dc16ac411f245550823444c00651 PS C:\Users\HP> docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 36a15a62f09a ubuntu "bash" 7 seconds ago Up 4 seconds cont1 PS C:\Users\HP> docker exec -it cont1 bash root@36a15a62f09a:/# pwd / root@36a15a62f09a:/# whoami root root@36a15a62f09a:/# ls bin boot dev etc home lib lib32 lib64 libx32 media mnt opt proc root run sbin srv sys tmp usr var root@36a15a62f09a:/# which ls /usr/bin/ls
因此,我們能夠在 Windows 上的 Docker 中執行 Linux 庫。
虛擬機器
我們可以使用虛擬機器來安裝 Linux 發行版,然後在其上執行 Docker 容器,而不是使用 Docker Desktop。安裝虛擬化工具,我們將使用 Oracle VM VirtualBox Manager。建立一個 Ubuntu 虛擬機器並啟動它。
步驟 1 - 啟動 Ubuntu 虛擬機器

虛擬機器啟動後,它將為 Ubuntu 虛擬機器開啟一個新的顯示視窗。

步驟 2 - 開啟 Linux 終端並執行 Docker 容器。
hemant@hemant-VirtualBox:~$ docker run -itd --name busybox_cont busybox 5836441ac4def5b76cc92718f5e6451f91c1a9a1bca4b4a244092e5e31083279 hemant@hemant-VirtualBox:~$ docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 5836441ac4de busybox "sh" 5 seconds ago Up 3 seconds busybox_cont
步驟 3 - 在這裡執行 Linux 命令。
hemant@hemant-VirtualBox:~$ docker exec -it busybox_cont sh / # ls bin dev etc home proc root sys tmp usr var / # pwd / / # date Thu Dec 8 04:45:16 UTC 2022 / # which date /bin/date
WSL:適用於 Linux 的 Windows 子系統
WSL 是微軟的產品。這是一個在微軟架構上無縫執行的 Linux 核心。
步驟 1 - 從 Microsoft Store 安裝它
在 Microsoft Store 中搜索 WSL,下載並安裝它。

使用以下 PowerShell 命令在 WSL 上安裝 Ubuntu。
$ wsl --install -d ubuntu
現在您可以透過搜尋“Ubuntu”從開始選單啟動應用程式。
步驟 2 - 我們已安裝適用於 Ubuntu 的 WSL。現在執行 Linux 庫命令。
hemant@DESKTOP-G29Q9GU:~$ pwd /home/hemant hemant@DESKTOP-G29Q9GU:~$ date Thu Dec 8 10:34:53 IST 2022 hemant@DESKTOP-G29Q9GU:~$ which date /usr/bin/date hemant@DESKTOP-G29Q9GU:~$ which ls /usr/bin/ls hemant@DESKTOP-G29Q9GU:~$ whatis ls ls (1) - list directory contents hemant@DESKTOP-G29Q9GU:~$ whatis date date (1) - print or set the system date and time hemant@DESKTOP-G29Q9GU:~$ whatis wget wget (1) - The non-interactive network downloader.
結論
因此,在本文中,我們能夠使用 WSL、VM 和 Docker Desktop 等各種方法在 Windows 系統上執行 Linux 庫命令。