我是在win10機器上搭建了一個docker,在docker啓動了centos容器,在centos中安裝nginx。nginx
直接在官網下載docker for windows:https://store.docker.com/editions/community/docker-ce-desktop-windows,下載完成,點擊按照默認一步步安裝就好了。若是但願加快pull鏡像的速度,能夠選擇配置一個阿里雲鏡像加速器。c++
用管理員身份運行docker,根據實踐來看,若是不這樣作的話,docker容器沒法ping 通外外網。docker
從阿里雲鏡像服務中拉取一個centos鏡像:docker pull registry.cn-hangzhou.aliyuncs.com/max/centos6.7-dockerwindows
啓動容器:docker run --name my-cnt-centos-6.7 -itd -p 80:80 <鏡像> /bin/bashcentos
查看運行的容器:docker ps,找到剛剛啓動的容器id瀏覽器
進入這個容器:docker exec -it <容器id> /bin/bashbash
這樣便成功啓動了centos。阿里雲
必要的環境安裝:yum -y install gcc gcc-c++ automake pcre pcre-devel zlib zlib-devel open openssl-develblog
下載nginx: cd /usr/local ,wget http://nginx.org/download/nginx-1.7.4.tar.gzssl
解壓nginx:tar -zxvf nginx-1.7.4.tar.gz
安裝nginx:進入解壓目錄,執行./configure prefix=/usr/local/nginx,配置安裝目錄;執行make和make install命令,就安裝完成了。
這裏或許就是我寫這篇隨筆的目的,由於的確在這裏耽擱了很長的時間。
遇到的第一個問題,centos中始終沒法ping通外網,後來改成用管理員啓動docker後,再次啓動centos就解決了這個問題。
遇到的第二個問題,如何訪問Nginx,由於直接在瀏覽器中輸入centos的IP,沒法訪問到Nginx的welcome頁面。後來才知道宿主機要訪問docker容器中的服務,必需要進行端口映射,在啓動容器時,若是不配置宿主機器與docker容器的端口映射,外部是沒法訪問docker容器。這就是爲何我在前面啓動centos時,加了-p 80:80端口映射的緣由。而後須要經過:localhost:80進行訪問。