Windows10 在Hyper-V安装lnmp环境docker方式
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