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. 内存分析利器之UMDH

    近两周投入分析产品的内存泄漏问题. 测试团队反馈产品在安卓平台运行时,随用户操作,应用占用的内存出现上涨的趋势,停止操作并等待一段时间之后,应用占用的内存没有下降,怀疑存在内存泄漏问题. 结合复现的情 ...

  2. 成长计划知识赋能 | 第九期:渐进式深入理解OpenHarmony系统

      成长计划知识赋能直播第九期如约而至,面向OpenHarmony初中级开发者,解析OpenHarmony系统架构和驱动框架,助力开发者快速上手OpenHarmony系统开发. 详情见海报内容,资深软 ...

  3. 自动编号工具类:NumAutoUtils详解

    在软件开发中,经常需要生成唯一的编号,例如订单号.发票号.实验编号等.为了简化这一过程,本文将介绍一个Java工具类NumAutoUtils,它可以帮助我们生成带有前缀和日期的自动编号. 概述 Num ...

  4. HMS Core 3D精准室内定位技术,打造“店铺级”出行体验

    2022年4月28日,在华为折叠旗舰及全场景新品发布上,华为Mate Xs 2折叠屏手机搭载由HMS Core定位服务(Location Kit)提供的3D精准室内定位技术,为用户提供了"店 ...

  5. ViT:拉开Trasnformer在图像领域正式挑战CNN的序幕 | ICLR 2021

    论文直接将纯Trasnformer应用于图像识别,是Trasnformer在图像领域正式挑战CNN的开山之作.这种简单的可扩展结构在与大型数据集的预训练相结合时,效果出奇的好.在许多图像分类数据集上都 ...

  6. UML 哲学之道——领域模型[四]

    前言 简单整理一下领域模型. 正文 领域模型是对领域内的概念类或现实中的对象的可视化表示 领域模型也称概念模型.领域对象模型和分析对象模型 领域模型是可以在业务建模科目中创建的制品之一 领域模型是up ...

  7. labelme转coco数据集

    原始labelme数据目录结构如下: |-- images | |--- 1.jpg | |--- 1.json | |--- 2.jpg | |--- 2.json | |--- ....... | ...

  8. 暑期集训 Day10 —— 模拟赛复盘

    ${\color{Green} \mathrm{Problem\ 0 :water }} $ 题如其名,可以用单调队列做,但是数据范围直接暴力枚举每一高度就行. 最不会打错的,还是暴力,所以用暴力. ...

  9. MaxCompute同步数据的网络配置

    MaxCompute可以通过数据集成加载不同数据源(例如:MySQL数据库等)数据,同样也可以通过数据集成把MaxCompute的数据导出到各种业务数据库.数据集成功能已经集成到DataWorks作为 ...

  10. Elastic与阿里云助力汽车及出行产业数字化转型

    ​简介:目前,阿里云和Elastic在全国已经有很多的项目正在开展合作,而在移动出行领域与享道出行的合作案例,则是代表性的. 在汽车产业变革逐步深入的当下,云计算.大数据等信息技术成为了汽车企业经历数 ...