Dokcer搭建各種服務 第三章 安裝nginx

2021-09-19 14:55:32 字數 2184 閱讀 9299

這個系列是對我學習docker的乙個總結,先從各種服務的搭建開始,直接帶大家實戰入門。其實docker本身是運維技能,後端同學只需要了解即可。我這個系列也不會對docker太過深入,點到為止。

這次以靜態資源伺服器nginx開始。

首先老套路,和上一章一樣,開啟dockerhub,搜尋nginx。

我們就直接拉取最新到映象,來不及解釋了

官網給出了很多命令,那麼我們到底需要用多複雜多命令呢。

在這之前我們先了解乙個概念:掛載

可以簡單理解為同步,本質是將容器裡位置指向了宿主的位置,然後只需要修改宿主,就可以直接修改到容器,通常用來掛載一些配置檔案,這樣就不需要進入容器,然後在容器操作那麼麻煩了。

在這裡我們需要掛載什麼呢,主要也就是html和conf。

html是來儲存vue打包好到資源,這樣以後更新資源只需要傳到宿主伺服器相應位置即可;

conf是來儲存最常用到配置檔案,有人就會疑惑了,那上一章到mysql為什麼沒有掛載,因為mysql的大部分配置可以直接sql修改實現,修改埠的話就-p 修改對映,其餘配置預設即可。這一章,我們需要開啟nginx的gzip(gzip主要就是壓縮資源)配置,來加速vue的首頁載入。

掛載之前要保證宿主伺服器有這些目錄

mkdir /soft/nginx/html

mkdir /soft/nginx/conf

最終如下:

docker run --name mynginx -d -p 8001:80 -v /soft/nginx/html:/usr/share/nginx/html -v /soft/nginx/conf/nginx.conf:/etc/nginx/nginx.conf:ro nginx
解釋一下比上一章多的命令

-v 位置1:位置2,意思是將宿主位置1和容器位置2掛載

後面的:ro 意思是readonly,只能在宿主位置1改,容器位置2唯讀。

有人就要問來那麼這麼多的命令有沒有完整所有的教程,docker官網請。但是直接上來蒙頭看你其實什麼都記不住,結合實際情景遇啥學啥即可。

nginx的預設埠是80,這裡插乙個小知識,其實80是http預設埠,你所訪問的所有**http後面都是有:80,不過被省略了。然後請問https預設埠是啥呢?

最終效果就是將宿主伺服器的有8001埠暴露在外,外網訪問埠不是80注意。

關鍵點在:

#開啟gzip

gzip on;

#最小壓縮

gzip_min_length 1k;

#gzip快取

gzip_buffers 16 8k;

#http版本

#壓縮等級,1-9,越大壓縮越厲害,消耗伺服器資源越大

gzip_comp_level 7;

#需要壓縮的型別

gzip_vary on;

gzip_disable "msie [1-6]";

然後我們將打包好的vue放到html下

將配置檔案放到conf下

docker restart mynginx
重新整理,即可看到改變,並且首頁載入速度提公升2倍以上。

第三章 資料服務

1 資料服務 增刪改查 2 資料服務系統 關聯式資料庫,nosql,newsql 3 聯機資料庫 事務性執行 4 資料服務不等於資料分析 1 實體,屬性,主鍵,外來鍵 2 完整性 實體完整性,參照完整性,使用者自定義的完整性 3 基本操作 選擇,投影,連線 分組,聚集 4 連線 巢狀迴圈連線,排序合...

第三章 堆疊

1.基礎知識 堆疊可以實現很多的應用,遞迴的問題轉化成非遞迴形式,在本質上也是堆疊的問題.它是一種 filo 操作的資料結構,一般也有兩種儲存方式 陣列跟鍊錶實現形式,這裡我給出了鍊錶形式的堆疊模板,裡面包括了基本的堆疊所有的操作,還有兩個比較著名的應用例子,時間倉促,精力比較有限,關於迷宮老鼠還沒...

第三章 曙光

第三章 曙光 第二場校園招聘開始了。其實,洋對這個公司的不是很了解。因為前幾天突然在bbs上面看到了這個公司的招聘資訊,洋覺得這個公司不錯,就上網投了簡歷。接下來的乙個多小時,讓洋很震撼!想不到這個公司這個厲害,而且無論從哪方面來說,絕對不比之前的那個公司差。想不到自己的乙個不經意的決定到了這個大的...