本身記錄一下,以防忘記,有須要的朋友能夠參考,以及提出意見。php
1.下載鏡像html
下載mysql: docker pull mysql (默認最高版本)mysql
下載php+nginx: docker pull daocloud.io/a735416909/nginx-php7:latest nginx
2.開啓容器laravel
docker run -d --name nginx_php -P -v D:\var\www\html:/var/www/html/ daocloud.io/a735416909/nginx-php7:latest sql
-d 分離模式: 在後臺運行docker
-P 映射隨機端口數據庫
-v 將主機中目錄掛載到容器中的某個目錄php7
docker run -d --name mysql -p 3307:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql 框架
-d 分離模式: 在後臺運行
-p 將容器的3306端口映射到主機的3307端口
-e MYSQL_ROOT_PASSWORD=123456(初始化root用戶的密碼)
(圖僅供參考,有些不一樣之處)
3.檢測php+nginx有沒有安裝成功
在咱們主機掛載的目錄中(D:\var\www\html)建立一個phpinfo
這樣就算安裝成功了
4.檢測mysql是否安裝成功(是否能夠遠程鏈接)
我用Navicat測試
5.laravel框架鏈接數據庫
在咱們主機掛載位置(D:\var\www\html)下,安裝laravel框架(安裝過程不作過多敘述),安裝完成後,咱們用php artisan來建表(同時檢測laravel可否鏈接mysql數據庫)
在laravel框架.env修改鏈接數據庫的配置
DB_HOST:地址爲容器地址
DB_PORT:端口號
DB_DATABASE:數據庫名稱
DB_USERNAME:用戶名
DB_PASSWORD:密碼
docker inspect --format '{{ .NetworkSettings.IPAddress }}' <container-ID> 或 docker inspect <container id> 或 docker inspect -f '{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' container_name_or_id
ip地址位置
配置完成後寫一個測試方法獲取數據。