一、什么是Nginx
Nginx (engine x) 是一個高性能的HTTP和反向代理web服務器,
Nginx是一款輕量級的Web 服務器/反向代理服務器及電子郵件(IMAP/POP3)代理服務器,在BSD-like 協(xié)議下發(fā)行。其特點是占有內(nèi)存少,并發(fā)能力強,事實上nginx的并發(fā)能力確實在同類型的網(wǎng)頁服務器中表現(xiàn)較好,中國大陸使用nginx網(wǎng)站用戶有:百度、京東、新浪、網(wǎng)易、騰訊、淘寶等。
Nginx特點:
高并發(fā)、高性能
可擴展性好
高可靠性
熱部署
BSD許可證
基本安裝方式 Linux安裝的方式
安裝Nginx源
執(zhí)行以下命令:
rpm -ivh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm
安裝該rpm后,我們就能在/etc/yum.repos.d/ 目錄中看到一個名為nginx.repo 的文件。
安裝完Nginx源后,就可以正式安裝Nginx了。
yum install -y nginx
Nginx默認目錄
輸入命令:
whereis nginx
即可看到類似于如下的內(nèi)容:
nginx: /usr/sbin/nginx /usr/lib64/nginx /etc/nginx /usr/share/nginx
以下是Nginx的默認路徑:
(1) Nginx配置路徑:/etc/nginx/
(2) PID目錄:/var/run/[nginx.pid](https://www.centos.bz/tag/nginx-pid/)
(3) 錯誤日志:/var/log/nginx/[error](https://www.centos.bz/tag/error/).log
(4) 訪問日志:/var/log/nginx/access.log
(5) 默認站點目錄:/usr/share/nginx/html
事實上,只需知道Nginx配置路徑,其他路徑均可在/etc/nginx/nginx.conf 以及/etc/nginx/conf.d/default.conf 中查詢到。
常用命令
(1) 啟動:
nginx // /usr/sbin/nginx
(2) 測試Nginx配置是否正確:
nginx -t
(3) 優(yōu)雅重啟:
nginx -s reload
(4) 查看nginx的進程號:
ps -ef |grep nginx
(5)nginx服務停止
nginx -s stop
kill -9 pid 殺死進程
Docker安裝基本安裝
拉取Nginx鏡像
docker pull nginx:latest
查看本地鏡像列表(即可看到nginx)
docker images
運行容器
docker run --name nginx-test -p 80:80 -d nginx
參數(shù)說明:
--name nginx-test:容器名稱。
-p 80:80: 端口進行映射,將本地 8080 端口映射到容器內(nèi)部的 80 端口。
-d nginx: 設置容器在在后臺一直運行。
安裝成功
Docker高級安裝(配置數(shù)據(jù)卷)
為了更方便開發(fā)和配置,需要將Docker容器內(nèi)的信息進行宿主機間的配置
docker exec -it nginx-test bash 可通過如下命令進入容器內(nèi)部
創(chuàng)建目錄
mkdir -p /usr/local/nginx
依次在該目錄下創(chuàng)建三個文件目錄
#創(chuàng)建 www目錄
mkdir -p /usr/local/nginx/html
#創(chuàng)建日志目錄
mkdir -p /usr/local/nginx/logs
#創(chuàng)建配置文件目錄
mkdir -p /usr/local/nginx/conf
拷貝配置文件
docker cp 容器ID:/etc/nginx/nginx.conf /usr/local/nginx/conf
docker cp 容器ID:/etc/nginx/conf.d/ /usr/local/nginx/conf
修改配置文件
將usr/local/nginx/conf/nginx.conf 內(nèi)容中的 include 默認路徑改為當前路徑
重新創(chuàng)建/運行容器(conf.d只掛載文件夾,不掛載文件)
docker run -d -p 80:80 --name nginx-80 -v /usr/local/nginx/html:/usr/share/nginx/html -v /usr/local/nginx/conf/nginx.conf:/etc/nginx/nginx.conf -v /usr/local/nginx/conf/conf.d/:/etc/nginx/conf.d/ -v /usr/local/nginx/logs:/var/log/nginx nginx
測試重新訪問
Docker-compose安裝