使用Docker安裝Nginx服務
- 查看Docker鏡像倉庫中Nginx的可用版本虱黄。
docker search nginx
命令輸出如下所示:
image
- 拉取最新版的Nginx鏡像悦即。
docker pull nginx:latest
image
- 查看本地鏡像。
docker images
image
- 運行容器。
docker run --name nginx-test -p 8080:80 -d nginx
- 準備工作
mkdir -p /home/nginx
mkdir -p /home/nginx/log
docker cp nginx-test:/etc/nginx/nginx.conf /home/nginx/nginx.conf
docker cp nginx-test:/usr/share/nginx/html /home/nginx/
docker cp nginx-test:/var/log/nginx /home/nginx/log
docker stop nginx-test
docker rm nginx-test
- 啟動一個最終的nginx(文件映射成功的)
docker run --name nginx -p 8080:80 \
-v /home/nginx/nginx.conf:/etc/nginx/nginx.conf:ro \
-v /home/nginx/html:/usr/share/nginx/html:ro \
-v /home/nginx/log:/var/log/nginx \
-d nginx
命令參數(shù)說明:
- -it -i :即使沒有附加也保持STDIN 打開 -t :分配一個偽終端
- --name nginx-test:容器名稱辜梳。
- -p 8080:80: 端口進行映射粱甫,將本地8080端口映射到容器內(nèi)部的80端口。
- -d nginx: 設置容器在后臺一直運行作瞄。
- -v:文件掛載 指定宿機目錄映射到容器內(nèi)部的目錄(上述就是把宿機
/home/nginx/conf/nginx.conf
的地址映射到容器內(nèi)部的/etc/nginx/nginx.conf
目錄里面去茶宵,容器加載/etc/nginx
目錄的時候,實際就是用的/home/nginx
目錄) - :ro 只讀
命令輸出如下所示:
image
- 在瀏覽器地址欄輸入http://<ECS公網(wǎng)IP地址>:8080訪問Nginx服務宗挥。
image
- 自定義腳本文件
nginx.sh
#! /bin/bash
docker stop nginx
docker rm nginx
docker run --name nginx -p 8080:80 \
-v /home/nginx/nginx.conf:/etc/nginx/nginx.conf \
-v /home/nginx/html:/usr/share/nginx/html \
-v /home/nginx/log:/var/log/nginx \
-d nginx
- 執(zhí)行腳本文件
sh nginx.sh