1、启用win10虚拟化hyper-v

2、安装docker win10

https://hub.docker.com/editions/community/docker-ce-desktop-windows/

下载一路下一步,没有看到改安装路径的地方。500多MB

3、报错  WSL 2 installation is incomplete

点击链接,安装它,重新启动

在 Windows 10 上安装 WSL | Microsoft Docs

https://docs.microsoft.com/zh-cn/windows/wsl/install-win10#step-4---download-the-linux-kernel-update-package

4、报错 Failed to set version to docker-desktop 的解决

更新重启之后又出错了了

Failed to set version to docker-desktop

解决方法参考:https://www.cnblogs.com/MysticBoy/p/13066611.html

管理员方式执行了  命令

netsh winsock reset

然后重新启动,好了

点击start

复制之后,右边自动执行

一直下一步,挺多报错,然后》:

启动之后又退出了

点击设置:

5、 添加菜鸟教程里的镜像加速源

重启成功

看版本

6、安装mysql

版本自选 docker search mysql
在 PowerShell或者CMD 输入命令: docker pull mysql:5.6
docker run -d -p 3306:3306 -e MYSQL_ROOT_PASSWORD=你要设置的mysql密码 --name mysql56 mysql:5.6

刚刚密码弄错了,删除重新运行一个mysql容器

docker run -d -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 --name mysql56 mysql:5.6

7、安装php和Nginx

docker pull php:5.6-fpm

docker run -d -p 9000:9000 --link mysql56:mysql --name php56 php:5.6-fpm

docker pull nginx:1.10.3

docker run -d -p 80:80 -v E:/app:/var/www/html --link php56:phpfpm --name nginx110 nginx:1.10.3

貌似没有权限使用挂载的逻辑卷

安装vim

apt-get install vim

当你敲命令时,提示:
Reading package lists... Done
Building dependency tree
Reading state information... Done
E: Unable to locate package vim

 apt-get update

这个命令的作用是:同步 /etc/apt/sources.list 和 /etc/apt/sources.list.d 中列出的源的索引,这样才能获取到最新的软件包。
等更新完毕以后再敲命令:

  apt-get install vim

打开Nginx配置

vim /etc/nginx/conf.d/default.conf

修改到正确的站点目录,挂载目录。重新加载配置

成功:

下载并且安装镜像#
创建项目文件夹,放在刚才资源共享设置下(Docker设置 -> 文件共享设置)
推荐三个镜像下载 网易 DaoCloud(个人推荐) Docker官方 Mysql下载#
版本自选 docker search mysql
在 PowerShell或者CMD 输入命令: Copy
docker pull mysql:5.6
等待下载完成 设置MySQL密码 并且启动容器 Copy
docker run -d -p 3306:3306 -e MYSQL_ROOT_PASSWORD=你要设置的mysql密码 --name mysql56 mysql:5.6
-d 让容器在后台运行
-p 添加宿主机到容器的端口映射(宿主机端口:容器端口)
-e 设置环境变量,这里是设置mysql的root用户的密码
–name 容器的名字
其他命令参考Docker命令大全|菜鸟教程 可以连Navicat或者进入MySQL容器测试 Docker上也会显示MySQL PHP下载#
版本自选 docker search php Copy
docker pull php:5.6-fpm
启动容器并且与MySQL建立联系 Copy
docker run -d -p 9000:9000 --link mysql56:mysql --name php56 php:5.6-fpm
-d 让容器在后台运行
-p 添加宿主机到容器的端口映射(宿主机端口:容器端口)
--link 与另外一个容器建立起联系
–name 容器的名字
扩展直接进入容器设置 nginx下载#
版本自选 docker search nginx Copy
docker pull nginx:1.10.3
启动容器与php建立联系并且目录映射 Copy
docker run -d -p 80:80 -v F:/app:/var/www/html --link php56:phpfpm --name nginx110 nginx:1.10.3
-d 让容器在后台运行
-v 添加目录映射(这里的宿主路径一定要与php的一致)
-p 添加宿主机到容器的端口映射(宿主机端口:容器端口)
--link 与另外一个容器建立起联系
–name 容器的名字 进入 Nginx容器 修改 配置文件 (先安装vim编辑器) 进入容器 Copy
docker exec -it nginx110 /bin/bash
安装vim Copy
apt-get install vim
当你敲命令时,提示:
Reading package lists... Done
Building dependency tree
Reading state information... Done
E: Unable to locate package vim Copy
apt-get update
这个命令的作用是:同步 /etc/apt/sources.list 和 /etc/apt/sources.list.d 中列出的源的索引,这样才能获取到最新的软件包。
等更新完毕以后再敲命令: Copy
apt-get install vim
打开Nginx配置 Copy
vim /etc/nginx/conf.d/default.conf 修改配置文件后,重载nginx Copy
/etc/init.d/nginx reload
在浏览输入localhost PHP信息就出来了 还有直接另外使用子系统 WSL2 创建 最近没时间 有时间在写~

参考博客

参考链接:https://www.cnblogs.com/liyunhang/p/14141938.html

Windows10 在Hyper-V安装lnmp环境docker方式的更多相关文章

  1. CentOS编译安装LNMP环境

    这里是教大家如何在centos下利用源码编译安装LNMP环境. 工具/原料 centos服务器一台 自用电脑一台 准备篇 配置好IP.DNS .网关,确保使用远程连接工具能够连接服务器 配置防火墙,开 ...

  2. Centos 6.8编译安装LNMP环境

    Centos 6.8编译安装LNMP环境 参考资料: http://www.jb51.net/article/107429.htm https://phperzh.com/articles/1360 ...

  3. 阿里云Ubuntu安装LNMP环境之PHP7

    在QQ群很多朋友问阿里云服务器怎么安装LNMP环境,怎么把项目放到服务器上面去,在这里,我就从头开始教大家怎么在阿里云服务器安装LNMP环境. 在这之前,我们先要知道什么是LNMP. L: 表示的是L ...

  4. 阿里云Ubuntu安装LNMP环境之Nginx

    在QQ群很多朋友问阿里云服务器怎么安装LNMP环境,怎么把项目放到服务器上面去,在这里,我就从头开始教大家怎么在阿里云服务器安装LNMP环境. 在这之前,我们先要知道什么是LNMP. L: 表示的是L ...

  5. CentOS安装LNMP环境的基础组件

    注:以下所有操作均在CentOS 6.5 x86_64位系统下完成. 在安装LNMP环境之前,请确保已经使用yum安装了以下各类基础组件(如果系统已自带,还可以考虑yum update下基础组件): ...

  6. 在Raspberry配置优化安装LNMP环境总结

    在Raspberry配置优化安装LNMP环境总结 apt-get update apt-get install nginx apt-get install php5-fpm php5-cli php5 ...

  7. 【转】lnmp_auto:自动化安装lnmp环境脚本

    原文链接: lnmp_auto:自动化安装lnmp环境脚本  这哥们整理的这篇博文很好  转载分享 博文转载如下: 源代码在github上:https://github.com/jianfengye/ ...

  8. 亚马逊AWS EC2云实例AMI安装LNMP环境(3)——Mysql5.5

    概括:这里选择亚马逊EC2的Linux AMI实例,该Linux服务器是亚马逊预配置的Linux环境,内置多个YUM源,属于亚马逊首推的稳定Linux服务器.默认登录用户名为ec2-user,执行ro ...

  9. 亚马逊AWS EC2云实例AMI安装LNMP环境(2)——PHP5.6

    概括:这里选择亚马逊EC2的Linux AMI实例,该Linux服务器是亚马逊预配置的Linux环境,内置多个YUM源,属于亚马逊首推的稳定Linux服务器.默认登录用户名为ec2-user,执行ro ...

  10. 亚马逊AWS EC2云实例AMI安装LNMP环境(1)——Nginx安装

    概括:这里选择亚马逊EC2的Linux AMI实例,该Linux服务器是亚马逊预配置的Linux环境,内置多个YUM源,属于亚马逊首推的稳定Linux服务器.默认登录用户名为ec2-user,执行ro ...

随机推荐

  1. 开源数据库OpenGauss的SQL解析源码分析

    开源数据库 OpenGauss 的 SQL 解析源码分析 OpenGauss 数据库体系概述 openGauss 是关系型数据库,采用客户端/服务器,单进程多线程架构:支持单机和一主多备部署方式,同时 ...

  2. 手把手教你使用ArkTS中的canvas实现签名板功能

      一.屏幕旋转 ● 实现签名板的第一个功能就是旋转屏幕.旋转屏幕在各种框架中都有不一样的方式,比如:在H5端,我们一般是使用CSS中的transform属性中的rotate()方法来强制将网页横屏, ...

  3. 全局模型可解释之部分依赖图:Partial Dependence Plot

    本部分是来自大纲 模型可解释的一个子分支. 部分依赖图可以表示1个或者2个特征对模型的预测结果所能产生的边际效应.同时也能展示1个特征和label直接是否具有:线性相关性.单调性等. 当我们把pdp应 ...

  4. python将日志生成到文件和控制台

    # 日志收集设置import logging, osfrom logging.handlers import TimedRotatingFileHandlerimport datetimecurren ...

  5. 深度解读《深度探索C++对象模型》之默认构造函数

    接下来我将持续更新"深度解读<深度探索C++对象模型>"系列,敬请期待,欢迎关注!也可以关注公众号:iShare爱分享,主动获得推文. 提到默认构造函数,很多文章和书籍 ...

  6. java 读取文本文件超简单的方法

    答案是:Scanner读取,初学者大部分都用过这货,然而这货还有这样两个构造方法: public Scanner(File source); public Scanner(InputStream st ...

  7. vue3中动态添加路由刷新无法正确匹配路由组件

    1.问题 动态添加路由之后,页面重新匹配路由,匹配到了设置的404 notfound页面 该页面是在路径无法匹配到的时候才会跳转的页面 2. 问题查找 在前置路由守卫打印to 发现当前地址匹配到的组件 ...

  8. Java Agent 踩坑之 appendToSystemClassLoaderSearch 问题

    简介: 从 Java Agent 报错开始,到 JVM 原理,到 glibc 线程安全,再到 pthread tls,逐步探究 Java Agent 诡异报错. 作者:鲁严波   从 Java Age ...

  9. 使用AnalyticDB轻松实现以图搜图和人脸检索

    1. 背景 以图搜图在生活中有着广泛的应用, 当我们在电视上看到有人穿着一件美丽的裙子或者帅气的球鞋也想拥有时, 我们可以拍张照片然后打开淘宝然后上传照片就可以快速的找到这个商品. 我们看到一张电影截 ...

  10. 前沿分享|阿里云资深技术专家 魏闯先:AnalyticDB PostgreSQL年度新版本发布

    ​简介: 本篇内容为2021云栖大会-云原生数据仓库AnalyticDB技术与实践峰会分论坛中,阿里云资深技术专家 魏闯先关于"AnalyticDB PostgreSQL年度新版本发布&qu ...