在 Docker 容器內安裝 Linux 軟體包
在 Linux 機器上安裝 Docker 後,下一步是建立映象並執行容器。您需要建立一個作業系統發行版的基準映象,然後透過安裝軟體包和依賴項並提交更改來新增和修改基準映象。
在本文中,我們將向您展示如何建立一個 Ubuntu 基準映象,並在其之上透過新增軟體包並不斷提交更改來建立中間映象層。我們將更新 Ubuntu 基準映象,安裝三個軟體包:vim 編輯器、Firefox 和 Python 3。
請注意,我們可以透過兩種方式實現此目的:要麼在 Dockerfile 中提及所有命令並一次性構建映象,要麼可以逐步進行,並透過 CLI 不斷提交更改。我們將在這裡討論這兩種方法。
方法 1. 使用 CLI 分步進行。
開啟終端並執行以下命令。請注意,如果您不是 root 使用者,則需要在所有命令前新增 sudo。
sudo docker run ubuntu bash -c “apt -y update”
這將檢查 Ubuntu 映象是否存在於本地。如果不存在,它將顯示“Unable to find image 'ubuntu:latest' locally”訊息並開始從 Docker Hub 下載。下載映象後,它將執行 apt update 命令。
我們現在將在容器內安裝 vim 編輯器。為此,我們將執行 Ubuntu 映象的 bash。
sudo docker run -it ubuntu bash
這將開啟一個互動式 Ubuntu bash。在 bash 中,逐一輸入以下命令來安裝軟體包。
apt-get -y update apt-get -y install vim apt-get -y install firefox apt-get install software-properties-common add-apt-repository ppa:deadsnakes/ppa apt install python3.7 exit
第一個命令執行更新。然後,它安裝 vim 編輯器、Firefox 和 Python 3 的一些依賴項。然後它新增官方 Python 3 倉庫並安裝 Python 3.7,然後退出 bash。
您可以使用以下命令檢查 Python 的版本。
python3.7 --version
退出 bash 後,您需要提交更改。使用以下命令查詢容器 ID。
sudo docker ps -l
複製容器 ID 並貼上到以下命令中。
sudo docker commit <CONTAINER_ID> <NEW IMAGE NAME>
您可以使用以下命令檢查是否已建立具有指定名稱和已安裝軟體包的新 Ubuntu 映象。
sudo docker images
方法 2. 透過建立 Dockerfile
建立一個名為 Dockerfile 的檔案,並將以下命令放在其中。
#Create ubuntu as base image FROM ubuntu #Install packages RUN apt-get -y update RUN apt-get -y install vim RUN apt-get -y install firefox RUN apt-get -y install software-properties-common RUN add-apt-repository ppa:deadsnakes/ppa RUN apt-get -y install python3.7
使用以下命令構建映象。
sudo docker build -t username/imagename . (don’t forget the dot)
此命令使用 Dockerfile 構建 Docker 映象。
使用以下命令執行 Docker 映象。
sudo docker run -t username/imagename:tagname
總而言之,建立映象和安裝軟體包的更好方法是使用包含適當命令的 Dockerfile,因為它將幫助您跟蹤所做的更改和安裝的軟體包,並使整個專案更加清晰。