window10上搭建docker开发环境,一路踩了很多坑,网络上看了各种文章,不是千篇一律照抄就是写的不详实,总是在关键点上不说明白,照着记录操作下来完全用不了,特些就自己记录一下,以后尽量少踩坑,有需要的同学拿走不谢
本人机器是win10,查看本机是否开启了虚拟化
像我这样是没有开启虚拟化的,开启虚拟化的过程每种机器可能有一些差别,但是主要流程如下
开机后在控制面板\所有控制面板项\程序和功能
点击启动或关闭windows功能
把Hyper-V的功能都勾选上,这样本地环境已基本ok了
安装Docker Desktop for Windows
Docker Desktop 是 Docker 在 Windows 10 和 macOS 操作系统上的官方安装方式,这个方法依然属于先在虚拟机中安装 Linux 然后再安装 Docker 的方法。
Docker Desktop 官方下载地址: https://hub.docker.com/editions/community/docker-ce-desktop-windows
注意:此方法仅适用于 Windows 10 操作系统专业版、企业版、教育版和部分家庭版!
如果是win10家庭版本的同学可以升级为专业版(ps可以去问万能的淘宝)
下载完后是个exe安装包直接安装就可以了,安装完成之后如下图
如果是第一次安装,安装完成后会提示
这是因为docker容器是只能运行在linux内核中的,win10虽然自带了WSL linux1的内核,但是当前docker需要WSL linux2的内核,没有关系,按提示的链接去下载安装就可以了,在 Windows 10 上安装适用于 Linux 的 Windows 子系统 (WSL) | Microsoft Docs文档里在很详细的安装说明,还是中文的,英文不好的同学来说还是很友好的
安装 完成后运行下面的命令查看docker相关版本
docker --verison
docker-compose --verison
docker-machine --veriosn
复制
提示docker-machine没有那手动安装一下就可以了,安装方法
Install Docker Machine | Docker Documentation
base=https://github.com/docker/machine/releases/download/v0.16.0 \
&& mkdir -p "$HOME/bin" \
&& curl -L $base/docker-machine-Windows-x86_64.exe > "$HOME/bin/docker-machine.exe" \
&& chmod +x "$HOME/bin/docker-machine.exe"
复制
完成后就可以了 如下图
安装完成后要重启docker 不然会报错,报错如下
docker本地运行git shell问题
解决方法 用cmd管理员方式运行
安装完所后有两种方法使用docker
1:用cmd命令行的方式来运行
在这里插入代码片
复制
2 : 使用docker程序来运行,桌面上会有docke应用程序图标
,屏蔽右下角也会有doceker图标,都可以进入docker管理介面**
可以在这里管理自己的镜像和容器
docker镜像仓库有很多php和nginx的镜像,有独立镜像也有分开的镜像,如果只是自己测试的话拉共公的镜像就可以了,但是我这边是公司统一的镜像包,为了统一开发环境,所以nginx和php是两个镜像文件,nginx容器对外提供接口,php只处理逻辑,下面记录下具体的安装流程
1.导入本地镜像
docker import php.tar php #导入本地镜像文件并命名为php
docker import nginx.tar nginx #导入本地镜像文件并命名nginx
复制
创建完镜像后用镜像创建容器,有三种方法创建容器:网桥,端口映射,host,
host方式如果是动态IP的话支持不好,所以本次是采用网桥和端口映射的方式来实现的
默认情况下docker是自带了一个bridge网格,如果不配置的话就是默认在这个网桥下面
mynet和devnet是我自己创建的网桥
 Docker image documentation elasticsearch centos 安装记录 及 启动手记 正式服务器 39 elasticsearch 问题合集 不断更新 6.1.1 | 6.5.1 两个版本 博客程序 - 测试 - bug记录 等等问题 laravel的启动过程解析 - lpfuture - 博客园 OAuth2 Server PHP 用 Laravel 搭建带 OAuth2 验证的 RESTful 服务 | Laravel China 社区 - 高品质的 Laravel 和 PHP 开发者社区 利用Laravel 搭建oauth2 API接口 附 Unauthenticated 解决办法 - 煮茶的博客 - SegmentFault 思否 使用 OAuth2-Server-php 搭建 OAuth2 Server - 午时的海 - 博客园 基于PHP构建OAuth 2.0 服务端 认证平台 - Endv - 博客园 Laravel 的 Artisan 命令行工具 Laravel 的文件系统和云存储功能集成 浅谈Chromium中的设计模式--终--Observer模式 浅谈Chromium中的设计模式--二--pre/post和Delegate模式 浅谈Chromium中的设计模式--一--Chromium中模块分层和进程模型 DeepMind 4 Hacking Yourself README.md update 20211011
Laravel China 简书 知乎 博客园 CSDN博客 开源中国 Go Further Ryan是菜鸟 | LNMP技术栈笔记 云栖社区-阿里云 Netflix技术博客 Techie Delight Linkedin技术博客 Dropbox技术博客 Facebook技术博客 淘宝中间件团队 美团技术博客 360技术博客 古巷博客 - 一个专注于分享的不正常博客 软件测试知识传播 - 测试窝 有赞技术团队 阮一峰 语雀 静觅丨崔庆才的个人博客 软件测试从业者综合能力提升 - isTester IBM Java 开发 使用开放 Java 生态系统开发现代应用程序 pengdai 一个强大的博主 HTML5资源教程 | 分享HTML5开发资源和开发教程 蘑菇博客 - 专注于技术分享的博客平台 个人博客-leapMie 流星007 CSDN博客 - 舍其小伙伴 稀土掘金 Go 技术论坛 | Golang / Go 语言中国知识社区
最新评论