博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
windows10 专业版 64位系统安装docker并使用 laradock 搭建 laravel 环境
阅读量:5811 次
发布时间:2019-06-18

本文共 3102 字,大约阅读时间需要 10 分钟。

hot3.png

windows10 专业版 64位系统安装docker

安装说明

  • windows 10 系统需要开启 Hyper-V

官方文档中有写到,必须开启 Hyper-V

开启方式如下图:

  1. 打开控制面板-程序-程序和功能-启用或关闭 windows 功能 启用或关闭 windows 功能

  2. 找到有关 Hyper-V 的项,全部选中 有关 Hyper-V 的选项,全部勾选

  3. 如果发现关于 Hyper-V 的选项无法开启,那么就需要进入 bios 开启虚拟化。开启方法见如下链接:

查看 Hyper-V 固件中启用的虚拟化是否开启的步骤:Win + R 输入 “msinfo32 ” 即可看到“系统信息”窗口。

进入 bios 开启固件虚拟化的方法步骤:进入 bios 设置界面,切换到 Advanced 标签,选中 CPU Configuration 设置 Intel Virtualization Technology 为 Enabled。(不同的主板可能会有不同的设置方法,主要是将 Intel Virtualization Technology 设置为 Enabled 即可)

  1. 再次打开【启用或关闭 windows 功能界面】开启 Hyper-V 所有选项。 不管怎样,主要的步骤是开启 Hyper-V 所有选项
  • 下载 Docker Desktop for Windows desktop app

官方文档详细步骤

  1. 下载 Docker Desktop for Windows app

  1. 下载完成之后,直接双击安装 安装过程图01

安装过程图02

  1. 开启 docker 直接可以通过小娜助手搜 docker 关键词,然后启动 Docker Desktop,不管怎样,主要是找到 Docker Desktop 应用,打开就好。 本图通过小娜助手搜 docker 关键词打开

  2. 查看 docker 开启状态。 桌面右下角会出现 docker 的图标,鼠标移到图标上面会出现 Docker Desktop is running 字样,即为打开

初次安装时,可能会提示你登录 docker 的账号,如果没有 docker 账号的话,可以去 docker 官网注册一下。

  1. 测试安装。 任意位置打开 Windows PowerShell
// 查看 docker 版本docker --version docker-compose --versiondocker run hello-world

使用 PowerShell 和 cmd是一样的

  • 使用 laradock 搭建项目

  1. 将 laradock 项目代码克隆到本地:
git clone https://github.com/Laradock/laradock.git

下载 laradock 项目到本地

  1. 进入 laradock 目录将 env-example 复制一份并命名为 .env
cp env-example .env

复制配置文件

  1. 运行容器 (此时在 laradock 目录下)
docker-compose up -d nginx mysql redis workspace

如果指定端口已经被占用,运行上述命令会报错,关闭相应的服务再重新运行上述命令即可。

注:安装过程中,由于某些资源需要翻墙才能下载,建议安装并启用 VPN 后再执行上述命令。如果出现需要认证的下载资源无权下载,可以通过 Docker ID/密码 登录到 Docker 应用(点击状态栏 Docker 应用小图标就能看到登录菜单),注意这里必须用 Docker ID,不能用注册邮箱。在 Windows 下如果出现目录挂载失败,可以尝试在 Docker 设置中重新设置 Shared Drives。

  1. 打开项目的 .env 文件并添加如下配置:
DB_HOST=mysqlREDIS_HOST=redisQUEUE_HOST=beanstalkd
  1. 在和 laradock 同级目录下新建 wwwroot 目录,用于存放代码 新建 wwwroot 目录

新建 demo 文件夹,并写入 phpinfo(); 到 index.php 作为测试。 新建测试文件

  1. 此时需要再次在 .env 文件中修改 APPLICATION 配置项(新版本的 laradock 对应的配置项是 APP_CODE_PATH_HOST
APPLICATION=../wwwroot/

配置项目路径

这样就相当于为 wwwroot 与 Docker 的 /var/www 目录建立了软连接,然后我们修改 nginx 的配置文件,建立映射关系。

// 复制一份配置文件 demo.confcp ./laradock/nginx/sites/default.conf ./laradock/nginx/sites/demo.conf

修改成以下内容

server {    listen 80;    listen [::]:80;    server_name demo.test;    root /var/www/demo;    index index.php index.html index.htm;    location / {         try_files $uri $uri/ /index.php$is_args$args;    }    location ~ \.php$ {        try_files $uri /index.php =404;        fastcgi_pass php-upstream;        fastcgi_index index.php;        fastcgi_buffers 16 16k;        fastcgi_buffer_size 32k;        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;        #fixes timeouts        fastcgi_read_timeout 600;        include fastcgi_params;    }    location ~ /\.ht {        deny all;    }    location /.well-known/acme-challenge/ {        root /var/www/letsencrypt/;        log_not_found off;    }}

重启 Docker 的 Nginx

docker-compose up -d nginx
  1. 在 hosts 文件中添加 (Windows 下对应文件路径是 C:\Windows\System32\drivers\etc\hosts
127.0.0.1 demo.test
  1. 在浏览器中访问 demo.test 如图所示,则表示 php 环境搭建成功!

  2. 安装多项目。比如搭建 laravel 项目 在 wwwroot 目录下执行 composer 命令 (需要提前在 Windows 环境中安装 composer) 可以查看我写的这篇文章

composer create-project laravel/laravel blog --prefer-dist

搭建 laravel 项目 blog

目录结构如下: 项目都在 wwwroot 目录下

  1. 添加 nginx 配置文件追加 hosts 配置 重新复制一份 default.conf 配置文件,并作相应的配置修改

  2. 重启 docker 中的 nginx

docker-compose up -d nginx
  1. 彩蛋
  • 进入Workspace 容器, 执行比如(Artisan, Composer, PHPUnit, Gulp, ...)等命令
docker-compose exec workspace bash
  • 列出正在运行中的容器
docker ps
  • 关闭所有正在运行的容器
docker-compose stop
  • 进入 mysql 容器
docker-compose exec mysql bash
  • 退出容器
exit
  • 参考文献:

转载于:https://my.oschina.net/u/3826187/blog/3050297

你可能感兴趣的文章
$_SERVER['SCRIPT_FLENAME']与__FILE__
查看>>
skynet实践(8)-接入websocket
查看>>
系统版本判断
查看>>
My97DatePicker 日历插件
查看>>
0603 学术诚信与职业道德
查看>>
小点心家族第3位成员——楼层定位效果
查看>>
Knockout.Js官网学习(enable绑定、disable绑定)
查看>>
hive基本操作与应用
查看>>
excel快捷键设置
查看>>
poj3692
查看>>
python之信号量【Semaphore】
查看>>
html5纲要,细谈HTML 5新增的元素
查看>>
Android应用集成支付宝接口的简化
查看>>
[分享]Ubuntu12.04安装基础教程(图文)
查看>>
[Vim] 搜索模式(正则表达式)
查看>>
#HTTP协议学习# (二)基本认证
查看>>
Android开发之线性布局详解(布局权重)
查看>>
WCF
查看>>
django 目录结构修改
查看>>
win8 关闭防火墙
查看>>