原文转载自「刘悦的技术博客」https://v3u.cn/a_id_149

2020年,这年头如果出去面试和面试官不聊几句Docker,都不好意思说自己是搞开发的。之前玩儿Docker都是在Mac系统里,没碰到过什么大问题,不过Docker这种容器技术本身就对Unix内核的系统天生友好,毕竟人家身体里流淌着linux的纯血基因,但是Docker对于Windows系统就显得不那么平易近人了,对待win10用户就有点矫情了,除了要求必须是64位系统以外,还必须要求系统版本是专业版,而家庭版用户想要一亲芳泽,还得借助Docker tool box这样的工具,所以这里作为win10家庭版用户的我们就依托docker tool box 来感受一下docker的魅力。

首先要明确一点docker toolbox需要当前系统开启了cpu虚化技术,Virtualization Technology(VT),中文译为虚拟化技术,英特尔(Intel)和AMD的大部分CPU均支持此技术,名称分别为VT-x、AMD-V。开机进bios设置,找到类似intel virtualization technology 这种字眼的虚拟化支持选项,设置为Enabled开启。

不过好消息是,目前市面上大部分电脑都默认开启cpu虚化,所以如果你的电脑不是10年以前的老古董,那就大可不必担心,直接下载docker tool box安装包即可

下载地址推荐阿里云镜像:http://mirrors.aliyun.com/docker-toolbox/windows/docker-toolbox/

在docker toolbox版本选择上,推荐DockerToolbox-17.12.0-ce.exe这一款,18虽然比较新,但是稳定性和兼容性不如老版本,所以这里保守的选择17。

下载后双击安装,第一步不需勾选

第二步如果之前装过Git,那就不要勾选,没有装过git就勾选git

第三步勾选前两个选项即可

随后一路next进行安装,需要注意一点,安装目录不要出现中文路径。

安装成功之后,桌面会生成一个docker的图标,这里有一个小坑,如果电脑里曾经安装过git,而安装路径又不在C:/Program Files/Git的话,就会报错,所以右键点击图标,修改路径为你电脑里真实git的安装路径

另外一个docker tool box 被人诟病的地方在于,每一次启动docker的时候,都会实时检测boot镜像的版本,然后从docker.io下载镜像,本来没有什么问题,但是这个国外源的速度慢的令人发指,所以最好在首次进入docker的时候,最好手动将安装目录的镜像拷贝到 用户目录下/.docker/machine/cache下面

最后,是修改一下docker的镜像源,拉取docker的镜像时,默认也是国外的源,更换为国内的源能够很大的提升docker的使用体验,这里推荐阿里云的容器镜像加速服务,放心是免费的

在阿里云上获取一下加速器的地址,进入docker,登录default镜像

docker-machine ssh default

输入命令,更换源

sudo sed -i "s|EXTRA_ARGS='|EXTRA_ARGS='--registry-mirror=你的阿里云镜像加速地址 |g" /var/lib/boot2docker/profile  

exit

重启镜像

docker-machine restart default

输入docker info,发现源已经更新

docker info

这里也有一个坑,就是如果重启电脑或者重启虚拟机,镜像源地址又会被复位,这是因为启动脚本有一个自动复位的功能,该脚本在docker的安装目录下start.sh

解决方案就是将复位的代码屏蔽掉

if [ "${VM_STATUS}" != "Running" ]; then
"${DOCKER_MACHINE}" start "${VM}"
# yes | "${DOCKER_MACHINE}" regenerate-certs "${VM}"
fi

大概在这个shell脚本的67行

至此,更换镜像源后,就可以一劳永逸了,整个过程坑虽然不少,但是也锻炼了我们的动手能力,同时大家也可以参考视频演示:

win10安装配置Docker并更换国内源

原文转载自「刘悦的技术博客」 https://v3u.cn/a_id_149

win10系统下把玩折腾DockerToolBox以及更换国内镜像源(各种神坑)的更多相关文章

  1. Win10系统下基于Docker构建Appium容器连接Android模拟器Genymotion完成移动端Python自动化测试

    原文转载自「刘悦的技术博客」https://v3u.cn/a_id_196 Python自动化,大概也许或者是今年最具热度的话题之一了.七月流火,招聘市场上对于Python自动化的追捧热度仍未消减,那 ...

  2. 上穷碧落下凡尘:Win10系统下基于Docker配置Elasticsearch7配合Python3进行全文检索交互

    原文转载自「刘悦的技术博客」https://v3u.cn/a_id_166 基于文档式的全文检索引擎大家都不陌生,之前一篇文章:使用Redisearch实现的全文检索功能服务,曾经使用Rediseac ...

  3. Docker在手,天下我有,在Win10系统下利用Docker部署Gunicorn+Flask打造独立镜像

    原文转载自「刘悦的技术博客」https://v3u.cn/a_id_164 书接上回,之前一篇:Win10环境下使用Flask配合Celery异步推送实时/定时消息(Socket.io)/2020年最 ...

  4. composer 更换国内镜像源

    使用 Composer 镜像加速有两种选项: 选项一:全局配置,这样所有项目都能惠及(推荐):选项二:单独项目配置: 选项一.全局配置(推荐) $ composer config -g repo.pa ...

  5. pip安装超时,更换国内镜像源安装

    pip安装超时问题 pip install --index 源地址 安装包 常用镜像源地址: http://pypi.douban.com/ 豆瓣 http://pypi.mirrors.ustc.e ...

  6. 更换国内镜像源进行pip安装

    Linux中当我们需要安装某个模块时(比如tensorflow2.0.0),常见有三种方法: pip install tensorflow==2.0.0 pip install https://pyp ...

  7. Win10系统下搭建Go lang开发环境更换国内源并且体验宇宙最快框架Iris

    原文转载自「刘悦的技术博客」https://v3u.cn/a_id_156 最近有同学开始尝试接触Go lang,拥抱新技术永远都会是一个好习惯,之前的一篇文章介绍了如何在Mac os系统下配置Go ...

  8. Win10系统下安装Ubuntu16.04.3教程与设置

    在Win10上刚刚装好Ubuntu16.04.3,装了不下于10次,期间出现很多问题,趁着还有记忆,写下这篇教程,里面还有Ubuntu系统的优化与Win10的一些设置. Part 1 制作Ubuntu ...

  9. Win10系统下软件UI显示不完整解决方案

    在最初升级win10的时候就想到了这些问题,例如和各种软件的不兼容性.当然,事实上win10并没有想象的那么糟,作为一个windows user 来说,win10的确是很高大上的,无论是颜值或者是体验 ...

随机推荐

  1. python之数据类型的内置方法(str, list)

    目录 字符串的内置方法 移除首尾指定字符 字母大小写相关操作 判断字符串的开头或结尾是否是指定字符 字符串特殊的输出方法 拼接字符串 替换指定字符 判断是否是纯数字 查找指定字符对应的索引值 文本位置 ...

  2. cut-列过滤

    列过滤命令. 语法 cut [选项] 要过滤的字符串 选项 -f 以字段为单位进行分割 -c 以字符为单位进行分割 -b 以字节为单位进行分割 -d 以分割符为单位进行分割,分隔符可以是"冒 ...

  3. 用HMS Core地图服务自定义地图样式,给你的应用制作专属个性化地图

    不同行业的开发者对地图样式的展示需求差异很大.例如,物流类应用希望地图样式简洁一些,重点突出城市分布和快递路径:AR游戏类应用中的地图色彩需要和游戏UI适配,做的更酷炫一些:景区导览应用中的地图样式要 ...

  4. java基础题(5)

    6.常用API 6.1string类 1.动态字符串 描述 将一个由英文字母组成的字符串转换成从末尾开始每三个字母用逗号分隔的形式. 输入描述: 一个字符串 输出描述: 修改后的字符串 示例1 输入: ...

  5. midway的使用教程

    一.写在前面 先说下本文的背景,这是一道笔者遇到的Node后端面试题,遂记录下,通过本文的阅读,你将对楼下知识点有所了解: midway项目的创建与使用 typescript在Node项目中的应用 如 ...

  6. 跟着 Guava、Spring 学习如何设计观察者模式

    文章首发在公众号(龙台的技术笔记),之后同步到掘金和个人网站:xiaomage.info 今天讲解一篇行为型设计模式,什么是行为型?行为型主要负责设计 类或对象之间的交互.工作中常用的观察者模式就是一 ...

  7. 2.shell脚本99乘法表

    shell脚本99乘法表 [root@localhost data]# vim cf.sh

  8. 当JAVA注解、AOP、SpEL相遇,更多可能变为了现实

    常规情况下,我们可以通过业务定制化的注解,借助AOP机制来实现某些通用的处理策略.比如定义个@Permission注解,可以用于标识在具体的方法上,然后用来指定某个方法必须要指定角色的人才能够访问调用 ...

  9. 面试突击60:什么情况会导致 MySQL 索引失效?

    为了验证 MySQL 中哪些情况下会导致索引失效,我们可以借助 explain 执行计划来分析索引失效的具体场景. explain 使用如下,只需要在查询的 SQL 前面添加上 explain 关键字 ...

  10. java: 程序包org.springframework.boot不存在

    如果你的settings中的maven配置没问题的话,尝试下面这个 在控制台输入  mvn idea:idea  重构一下