CentOS 7 使用Docker搭建Nginx

2022-03-21 16:32:18 字數 3620 閱讀 1549

1. 前提是docker已經安裝好了

2.拉取nginx映象

docker pull nginx

#使用命令檢視拉取到的映象

3. 執行nginx映象

docker run -d -p 80:80 --name nginx nginx
引數說明

啟動後輸入docker ps -a即可檢視執行的容器:

4. 訪問nginx

瀏覽器訪問http://ip即可,出現以下頁面說明執行成功

5. 配置nginx

mkdir -p /home/service/nginx/log

mkdir -p /home/service/nginx/conf

mkdir -p /home/service/nginx/conf.d

mkdir -p /home/service/nginx/static

mkdir -p /home/service/nginx/ssl

然後從nginx容器中複製乙份配置檔案到宿主機剛剛建立的conf目錄

docker cp nginx:/etc/nginx/nginx.conf /home/service/nginx/conf/nginx.conf
可以看到已經有了

檢視一下內容

上圖可以看出,這個配置檔案還引入了其他的配置檔案,所以我們需要把include引入的檔案也複製乙份到宿主機,但是我們不知道那些檔案叫什麼,所以我們需要進入容器內檢視

docker exec -it nginx /bin/bash

cd /etc/nginx/conf.d

ls

可以看到裡面有個default.conf檔案

我們需要把這個檔案複製到宿主機,使用exit命令退出容器

exit

docker cp nginx:/etc/nginx/conf.d/default.conf /home/service/nginx/conf.d/default.conf

還記得我們前面訪問nginx的時候那個頁面嗎?是的,那個頁面也要複製到宿主機

docker cp nginx:/usr/share/nginx/html/index.html /home/service/nginx/static/index.html
6. 修改配置檔案

開始修改宿主機上複製出來的conf檔案,首先修改nginx.conf,修改配置檔案修改後的結果:

}

檢視default.conf

server 

error_page 500 502 503 504 /50x.html;

location = /50x.html

}

停止上次的nginx容器並刪除容器
docker stop nginx

docker rm nginx

重新啟動乙個nginx映象
docker run -p 443:443 -p 80:80 --name nginx \    

--link jenkins \

-v /home/service/nginx/static:/usr/share/nginx/html \

-v /home/service/nginx/conf/nginx.conf:/etc/nginx/nginx.conf \

-v /home/service/nginx/log:/var/log/nginx \

-v /home/service/nginx/conf.d:/etc/nginx/conf.d \

-v /home/service/nginx/ssl:/ssl \

-d nginx

-v的意思就是把宿主機目錄掛載到冒號後面的容器目錄

--link用於連線容器,後面是零乙個容器的唯一name,這樣nginx就可以在配置檔案使用jenkins:埠配置了

此處多監聽了乙個443埠,用於以後配置https

修改一下nginx預設的index.html,更有辨識度

vim /home/service/nginx/static/index.html
7.配置https訪問

並且在其中加入了許多優化的配置,nginx.conf

}

注意:這裡更新的是宿主機上的nginx.conf

然後進入容器重啟nginx即可

也可以不用進入容器重啟,直接重啟容器也可以

docker restart nginx

docker exec -it nginx /bin/bash

nginx -s reload

配置完

CentOS 7使用yum安裝Docker

安裝依賴 配置阿里雲源 備份cp etc yum.repos.d centos base.repo wget o etc yum.repos.d centos base.repo 生效測試 yum clean all yum makecache 配置epel源 yum install y epel ...

centos7使用docker安裝nginx

1 建立存放nginx檔案的目錄 sudo mkdir p opt docker nginx sudo mkdir p opt docker nginx html sudo mkdir p opt docker nginx conf.d sudo mkdir p opt docker nginx l...

centos7使用docker安裝nginx

1 建立存放nginx檔案的目錄 sudo mkdir p opt docker nginx sudo mkdir p opt docker nginx html sudo mkdir p opt docker nginx conf.d sudo mkdir p opt docker nginx l...