1. 程式人生 > >win10下使用docker部署nginx,mysql

win10下使用docker部署nginx,mysql

首先說明一下踩過的坑:

win10分為專業版,企業版,家庭版,還有一個教育版 -_-!是不是很坑爹,各種版本尼瑪煩不煩。網上查了一下,這幾個版本的級別是企業版>教育版>專業版>家庭版。重點來了,家庭版的不能開啟Hyper-V,也就是隻能按照低版本的windows(win7,win8)來安裝docker toolbox。當然如果你的家庭版能夠升級為專業版也是可行的,不過我一直沒能升級成功。

一、下面是安裝docker的步驟:

2.開啟控制面板 - 程式和功能 - 啟用或關閉Windows功能,勾選Hyper-V,然後點選確定即可,如圖:

1513668234-6433-20171206211858191-1177002365.png

3.重新啟動電腦

4.啟動Docker

 在桌面找到Docker for Windows快捷方式,雙擊啟動即可!啟動成功後托盤處會有一個小鯨魚的圖示。開啟命令列輸入命令:docker version可以檢視當前docker版本號,如圖:

QQ圖片20180228222655.png

 更換映象源地址

點選托盤處docker圖示右鍵選擇-Settings,然後修改如下:

TIM圖片20180301202438.png

點選Apply後會重啟Docker。

載入測試映象測試

輸入命名“docker run hello-world”可以載入測試映象來測試。如圖:

QQ圖片20180228223335.png

這樣即表示安裝成功了!

二、docker常用指令:

docker ps //檢視當前執行中的容器

docker ps -a //檢視所有執行過的容器

docker inspect containerId(容器ID或容器名)//檢視對應容器的具體配置資訊

docker port containerId //檢視對應容器埠對映

docker run --name containerName -it -p 80:80 -d // --name是為容器取一個別名,-p 80:80是埠對映,將宿主機的80埠對映到容器的80埠上,-d是指後臺執行容器,即容器啟動後不會停止,-it是-i 和-t的合併,以互動模式執行容器。

docker images //檢視所有映象

docker exec -it containerName /bin/bash //進入已啟動的容器內,新啟一個程序,執行命令。

docker stop containerName // 停止一個容器

docker start -i containerName //重啟啟動一個執行過的容器

docker rm containerName //移除一個容器

瞭解了上面指令之後,我們接下來進行nginx,mysql的環境配置

1.啟動mysql例項:

docker run --name some-mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 -d
mysql:latest

2.檢視是否正常啟動

   docker ps 

   能看到some-mysql的例項說明啟動成功

3.nginx配置

    docker pull nginx

    docker run --name web -it -p 80:80 -d nginx

    進入到容器裡

    docker exec -it web /bin/bash 

    安裝nginx

    apt-get install -y nginx  

     執行到這裡安裝完成,下面安裝vim

    apt-get install -y vim (apt-get安裝過程中可能會提示apt-get版本過低,此時只需apt-get update)

    建立一個靜態頁面

    mkdir -p /var/www/html

    cd /var/www/html

    vim index.html


    :wq 儲存退出編輯

    whereis nginx  檢視nginx

    ls /etc/nginx 目錄下可以看到有個conf.d的資料夾,conf.d目錄下有個default的檔案

    vim /etc/nginx/conf.d/default

    

    將server root的路徑換成我們剛才配置的路徑

    :wq

    cd /

    nginx      (啟動nginx)

    這時我們檢視一下 

    docker ps,會發現多了一個容器,就是我們剛才啟動的nginx


    最後直接使用localhost(預設80埠)訪問即可,

    

    也可以使用 docker inspect web 找到ipaddress,使用容器的ip地址訪問


瀏覽器訪問172.17.0.3即可

如果你的docker配置了預設的地址


    你應該使用預設的docker地址訪問,輸入ipconfig


    可以發現你的docker ip4地址實際為10.0.75.1

     我們用這個地址訪問瀏覽器


    可以看到效果是一樣的!

    到此nginx,mysql就算部署完成啦!