Linux伺服器上使用docter安裝指定版本的nginx伺服器

一只爱阅读的程序员發表於2024-03-23

前提條件:確保伺服器上已經安裝docker

系統版本: lsb_release -a

docker版本: docker -v

目前伺服器上沒有安裝任何映象

.第一步、直接使用docker拉取nginx映象,命令如下,

docker pull nginx

如下圖所示,預設使用的最新版本。

這時在次執行 docker images 命令,結果如下,

已經拉取到最新的nginx映象。

.第二步、使用docker啟動nginx服務

命令如下

docker run -d --name test-nginx -p 8080:80 nginx

引數解釋:

-d:以後臺模式執行容器。

--name test-nginx:給容器命名為test-nginx

-p 8080:80:將docker容器的埠80對映到主機的埠8080,這樣可以透過主機的8080埠訪問容器中的Nginx服務。

檢視容器的執行狀態,命令為 docker ps -a

.第三步、開啟伺服器的8080

.第四步、訪問測試

訪問成功,發現nginx的版本為1.25.4。去nginx官網看一下,

https://nginx.org/en/

發現其主要提供三個版本,

Mainline version:主線版

Stable version: 穩定版

Legacy versions: 歷史版本

其實這還是存在一個問題,1.25.4版本的nginx是否是我們想要的呢?是否是安全的的?

答案不是。那麼如何選擇nginx版本呢?一般來說,伺服器軟體版本選擇,根據公司的實際需要來進行選擇,並不是越新越好。而是越穩定越好,因為誰都不想生產環境出問題叭。

因此即使是在平時做測試的時候,能選擇穩定版,就儘量選擇穩定版本。這裡為了測試,我們選擇1.24.0 這個版本。那我們如何安裝指定版本呢?操作方式如下,

.第一步、先停掉之前執行的映象服務;

列出當前正在執行的所有容器

docker ps -a

停止容器服務

docker stop 容器名或者ID

刪除容器

docker rm 容器名或者容器id

執行docker images 命令

可以把已經下載的docker 映象檔案一起清理掉,不然187M就會白白浪費空間。

docker rmi IMAGE ID映象id

刪除前後在執行一次 docker images 命令,發現已經刪除。

接下來從頭開始在操作一遍。

.a.拉取指定版本的nginx映象;命令如下

docker pull nginx:1.24.0

.b.啟動docker容器服務。注意這時候啟動就需要注意啦!!!

需要先檢視本地已經下載的映象

docker images

然後獲取1.24.0 版本 nginx對應的 Images ID

放到下面命令中的 -d 後面即可以啟動指定版本的 nginx 服務

如果-d 後面不新增 image id 引數,則預設是以最新的nginx 版本啟動服務;命令如下,

docker run --name exam-nginx -p 8080:80 -d 7f0fd59e0094

說明:可以使用滑鼠選中圖片中白色的部分(7f0fd59e0094),然後右鍵即可新增到命令的最後面。

最後在執行docker -ps -a 就可以發現容器已經啟動啦。

.c.開啟瀏覽器測試。結果如下,

這時候發現nginx版本已經變為1.24.0,達到要求。

參考部落格:

# 參考博文: nginx 版本選擇

https://bbs.huaweicloud.com/blogs/342018

# 拉取nginx映象

https://juejin.cn/post/7130150571964629022

# 檢視 docker 容器中的nginx 的版本

https://blog.51cto.com/u_16213429/8203760

# 拉取指定版本的nginx

https://www.cnblogs.com/xiufengd/p/15044315.html

相關文章