docker的厲害不用多說,
直接開始吧。
步驟一:拉取nginx鏡像
docker pull nginx
直接拉取Docker Hub的官方Nginx鏡像(類似git bash的git pull,拉取遠程倉庫的最新內容更新)
docker images
查看本地所有的docker鏡像
步驟二:基於nginx鏡像創建容器
docker run --name mynginx -p 80:80 nginx
啟動一個名為mynginx的容器,同時將容器的80端口映射到宿主機(服務器)的80端口上
docker ps
查看所有運行中的容器
步驟三:訪問
在瀏覽器中輸入IP地址即可訪問到nginx的默認的歡迎頁面
因為當訪問宿主機(服務器)的80端口時,docker會自動將訪問引入mynginx容器中,
利用容器中的nginx配置的相關的服務。
步驟四:開始自定義Nginx配置
Nginx的配置項很多,需要滿足我們的各種需求:
- 定義nginx.conf配置文件,放置於宿主機(服務器)的/home/nginx目錄下
- 用於include的vhost目錄,從而方便管理,放置於宿主機(服務器)的/home/nginx目錄下
- 定義WEB的根目錄www,放置於宿主機(服務器)的/home/nginx目錄下
- 創建兩個日志追蹤文件nginx_error.log和access.log,放置於宿主機(服務器)的/home/nginx/logs目錄下
現在,我們通過docker run來實現以上需求
docker run --name nginx-atlascca3 --privileged=true -p 80:80 -v /home/nginx/nginx.conf:/etc/nginx/nginx.conf -v /home/nginx/vhost:/home/nginx/vhost -v /home/nginx/logs/nginx_error.log:/home/nginx/logs/nginx_error -v /home/nginx/www:/home/nginx/www -d nginx
docker run [OPTIONS] IMAGE [COMMAND] [ARG...]
-d: 后台運行容器,並返回容器UUID(常用)
-i: 以交互模式運行容器,通常與 -t 同時使用
-t: 為容器重新分配一個偽輸入終端,通常與 -i 同時使用
-v, –volume=[] 給容器掛載存儲卷,掛載到容器的某個目錄(常用)
–privileged=false 指定容器是否為特權容器,特權容器擁有所有的capabilities
–name=”” 指定容器名字(如mynginx),后續可以通過這個容器名字進行容器管理(常用)
備注:
在調試過程中,可以使用docker ps查看所有正在運行的容器(查看容器是否創建)
若沒有創建成功,說明命令執行不成功,可以把命令中的-d選項去掉,即會顯示出相關錯誤信息~
另外,利用docker rm 容器ID可以刪除一個容器