docker大名听说了很久,一直没有去研究过,但现在面试动不动要求docker,还是研究下吧。由于我的电脑是win10系统(穷,买不起mac),安装过程各种坑爹问题不断,一度都想放弃,所以说垃圾windows真的不适合开发,最终写下这篇劝人放弃windows安装docker的教程。

安装方法

官网推荐的docker for windows

我最开始也是直奔官网安装这个,结果看到系统要求:



家庭版的我表示承受不起,不信邪的我网上搜素了安装教程,发现可以通过修改注册表更改版本,避过安装的检查,https://www.cnblogs.com/samwu/p/10360943.html

安装成功,兴奋的打开docker for windows,擦又要检查,再次修改注册表结果没用了。。。。

再次谷歌百度,发现似乎是最新版还没有解决方案,只能放弃,卸载。

DockerToolbox

终于经过各种谷歌百度找到一种在家庭版下可以安装的方法:

https://docs.docker.com/toolbox/toolbox_install_windows/



翻译过来就是docker toolbox是给穷鬼(比如我,用不起mac也用不起高版本的win)用的,官网推荐你升级系统(没钱)。

下载安装,坑又来了:

  1. 由于我安装过docker for windows 开启了hyper-V,现在启动不了virtual box虚拟机,好吧老一套谷歌百度,https://blog.csdn.net/zitian246/article/details/86667293
  2. 由于安装过git,我取消了git的安装,启动Docker Quickstart Terminal失败,缺少快捷方式:



    右键属性,修改目标中git的路径

  3. 启动Docker Quickstart Terminal一直在下载boot2docker.iso失败,由于它是从github上下载的比较慢,有2种解决方案:1. 复制下载的github地址,自己下载,然后复制到C:\Users\[你自己的电脑账号]\.docker\machine\cache;2. 直接复制你docker toolbox下的文件到上面的地址,然后断网启动

简单使用

安装完成之后在桌面上有三个软件:

  1. Oracle VM VirtualBox:虚拟机,打开后里面应该有一个default虚拟机,这个就是boot2docker.iso生成的docker使用的linux默认虚拟机。
  2. Kitematic (Alpha):docker的界面化工具,服务器一般都linux系统,建议还是学学命令行使用。
  3. Docker Quickstart Terminal:docker的命令行工具。

下面以命令行部署hello-world为例,简单使用docker。

  1. docker pull hello-world,从远程仓库docker hub拉取hello-world镜像。
  2. docker images,展示本地的所有镜像。
  3. docker run hello-world,创建hello-world镜像的容器并运行。
  4. docker ps -a, 展示所有容器,去掉-a展示正在运行的容器。

注意:每次执行docker run hello-world都会创建一个容器,如果想运行上次创建的容器,可以执行docker start containId,containId为docker ps -a查出的id。

总结

docker在windows系统上的安装相当麻烦,能买mac还是买mac吧,毕竟windows系统分为个人版和server版,大多数人的电脑相信都是个人版,不是用来充当服务器的,但是server版的估计还是只能装阉割版的redis、nginx,各种泪啊。

Docker 入门教程(1)——安装的更多相关文章

  1. Docker入门教程(二)命令

    Docker入门教程(二)命令 [编者的话]DockerOne组织翻译了Flux7的Docker入门教程,本文是系列入门教程的第二篇,介绍了Docker的基本命令以及命令的用法和功能. 在Docker ...

  2. Docker入门教程(一)介绍

    http://dockone.io/article/101 Docker入门教程(一)介绍 [编者的话]DockerOne组织翻译了Flux7的Docker入门教程,本文是系列入门教程的第一篇,介绍了 ...

  3. Docker(一):Docker入门教程

    如今Docker的使用已经非常普遍,特别在一线互联网公司.使用Docker技术可以帮助企业快速水平扩展服务,从而到达弹性部署业务的能力.在云服务概念兴起之后,Docker的使用场景和范围进一步发展,如 ...

  4. Docker(一):Docker入门教程

    如今Docker的使用已经非常普遍,特别在一线互联网公司.使用Docker技术可以帮助企业快速水平扩展服务,从而到达弹性部署业务的能力.在云服务概念兴起之后,Docker的使用场景和范围进一步发展,如 ...

  5. Docker 入门教程与实践

    title: Docker 入门教程与实践 tags: Docker ---- 在Windows上安装Docker客户端 1.下载Docker TollBox: https://docs.docker ...

  6. [转帖]Docker 入门教程

    Docker 入门教程 http://www.ruanyifeng.com/blog/2018/02/docker-tutorial.html 自己学的还是太肤浅啊.. 作者: 阮一峰 日期: 201 ...

  7. docker 入门教程(5)——总结与学习资料

    总结 registry:docker镜像仓库,集中存储和管理镜像,类似maven仓库. image:docker镜像,定义容器运行的文件和参数,可以看作是面向对象编程的类. container:doc ...

  8. Docker入门教程(九)10个镜像相关的API

    Docker入门教程(九)10个镜像相关的API [编者的话]DockerOne组织翻译了Flux7的Docker入门教程,本文是系列入门教程的第九篇,重点介绍了镜像相关的Docker Remote ...

  9. Docker入门教程(八)Docker Remote API

    Docker入门教程(八)Docker Remote API [编者的话]DockerOne组织翻译了Flux7的Docker入门教程,本文是系列入门教程的第八篇,重点介绍了Docker Remote ...

随机推荐

  1. DNS区域传输和DNS字典爆破

    nslookup命令是已知域名的的解析记录下进行的查询.打个比方,已知sina.com这个域名有www.sina.com这条主机解析记录,就可以查询www.sina.com对应的ip以及其他相关信息. ...

  2. java-IO流(commons-io-2.6)使用教程

    工具库下载: https://pan.baidu.com/s/1tXXF4zjIfJ9ouObsU5RTpA  提取码:214v 1.打开IDEA 2.在模块下新建个lib文件夹将框架复制进去 3.点 ...

  3. 最短路之Floyd

    #include<bits/stdc++.h>using namespace std;const int maxn = 300+10;int n,m,f[maxn][maxn],t; in ...

  4. 你想了解的 HTTPS 都在这里

    HTTP 协议仅仅制定了互联网传输的标准,简化了直接使用 TCP 协议进行通信的难度.有关 HTTP 协议相关的讲解请看前面两节: HTTP 协议详解 HTTP协议详解(二) less is more ...

  5. SpringBoot-读取classpath下文件

    文章目录 开发过程中,必不可少的需要读取文件,对于打包方式的不同,还会存在一些坑,比如以jar包方式部署时,文件都存在于jar包中,某些读取方式在开发工程中都可行,但是打包后,由于文件被保存在jar中 ...

  6. Nuxt使用axios跨域问题解决方法

    Nuxt 是 Vue 项目服务器端渲染(SSR)解决方案.而在使用时,就会遇到前后端分离情况下的域名或端口不一致导致的跨域问题.本文将介绍如何通过设置代理解决 Nuxt 与 axios 集成的跨域问题 ...

  7. html实现时间轴_纯css实现响应式竖着/垂直时间抽布局效果

    1.概述 html实现用时间点来展示事件发生点来代替用table展示一条条数据,能够给人清晰.一目了然能够看清事情发生的过程,UI页面也显示的那么清晰.如何用css+html做出时间轴展示事件点的?先 ...

  8. 从零创建发布属于自己的composer包

    原文地址:https://www.wjcms.net/archives/从零创建发布属于自己的composer包 今天给大家讲解一下如何从零创建发布属于自己的composer包. composer包用 ...

  9. Cow Relays,过N条边的最短路

    题目链接 题意: 找从a到b的经过N条边的最短路 分析: 有点板子...方法:矩阵存,然后有个类似快速幂的思想,然后再加上离散化就好了. 没啥写的,只能说说矩阵了,我用的方法是先枚举i,j再枚举k,当 ...

  10. postman-3-请求

    请求头 单击Headers选项卡将显示请求头键-值编辑器.我们可以将任何字符串设置为请求头名称.在输入字段时,自动完成下拉菜单将补充常见HTTP请求头. Content-Type标题的值也可从自动完成 ...