最近docker很火,不管是朋友圈内还是公司内聊天都离不开docker,于是对docker产生了极大的好奇心,凭着一颗程序猿的好奇心开始了docker的安装血泪史。

首先我有一台从公司退役的本本x220,性能还不错。在此本本上我安装了双系统,win7 64bit和ubuntu 12.04 32bit 。很自然的,我考虑先用ubuntu系统来装docker。从网上查到的信息12.04的版本安装不了docker,于是就把操作系统升级,升级到了14.04版本,再继续按照网上的步骤装docker。安装不成功,根据报错的原因到去google,发现docker的发行版本不支持32bit系统,要支持32位系统的话,还要从github下载源码进行编译,太麻烦了,于是放弃用ubuntu 32bit 安装docker。

接下来就退而求其次用window来装,首先是在网上查资料,安装网上步骤是下载此docker-install.exe文件,安装完成后其是动docker,无论如何也启动不了docker,具体的错误没有记录下来,当时根据错误信息又google了下,大致的问题原因是归咎于SATA的硬盘不能直接支持Oracle VM VirtualBox 的虚拟化,修改了bios也不行。此路行不通了,没有办法了,又得另寻出路。

思路就是,在win 7下建立一个虚拟机,虚拟机这个东东是个程序猿的都会玩。那么就从网上down一个破解版的VM,down了一个最新版的ubuntu 15.04 64bit。安装顺利,ubuntu也能顺利启动了,但是虚拟机玩起来太卡了,我受不了,一时冲动删掉了虚拟机。本来想用硬盘直接安装ubuntu 15.04 64bit,查了资料ubuntu 15.04 64bit不支持硬盘安装。晕,唯有制作一个U盘启动盘了,手上没有空余的U盘了。 至此告一个段落,停止了对docker的折腾。

第二天,急忙跑到了电脑城新买了个16G的U盘,网上查了下价格被JS坑了10大洋。算了,我急着用,不跟他们计较。接下来就制作了一个U盘启动盘,很轻松的就制作好了。制作好后,第一次安装时说是覆盖原来的12.04版本,但是发现没有完全覆盖,我分配的80G主分区空间只用了15G的空间,看着那么多空间浪费掉,受不了。接着重新安装,这回安装时我不小心选择了清理磁盘的安装,ubuntu 15.04 64bit安装成功了,但是造成了一个后果,我没有双系统了,只有一个ubuntu了。悲催啊!

一个系统就一个系统吧,反正我是为了安装docker的。那么就按照http://dockerpool.com/的步骤安装docker,居然成功了,下载了一个ubuntu 12.04的镜像。

以下是成功的几行命令:

gradven@gradven-ThinkPad-X220:~$ sudo docker pull ubuntu:12.04
[sudo] password for gradven:
Pulling repository ubuntu
57bca5139a13: Download complete
ba2b457ecfb2: Download complete
26180b0fe8fb: Download complete
edd7c1974a70: Download complete
Status: Downloaded newer image for ubuntu:12.04
gradven@gradven-ThinkPad-X220:~$

终于成功了,得来真的费了番功夫啊,接下来还要继续折腾下,进一步的进行使用docker,熟悉这个伟大的产品~

docker初安装的血泪史的更多相关文章

  1. Docker初体验

    ## Docker初体验 安装 因为我用的是mac,所以安装很简单,下载dmg下来之后拖拽安装即可完成. 需要注意的就是由于之前的docker是基于linux开发,不支持mac,所以就出现了docke ...

  2. Docker从安装部署到Hello World

    Docker 是 PaaS 提供商 dotCloud 开源的一个基于 LXC 的高级容器引擎,源代码托管在 Github 上, 基于go语言并遵从Apache2.0协议开源.Docker 是一个开源的 ...

  3. 2.Docker初体验【Docker每天5分钟】

    原文:2.Docker初体验[Docker每天5分钟] Docker给PaaS世界带来的“降维打击”,其实是提供了一种非常便利的打包机制.该机制打包了应用运行所需要的整个操作系统,从而保证了本地环境和 ...

  4. docker——容器安装tomcat

    写在前面: 继续docker的学习,学习了docker的基本常用命令之后,我在docker上安装jdk,tomcat两个基本的java web工具,这里对操作流程记录一下. 软件准备: 1.jdk-7 ...

  5. docker 启动安装等命令

    确认是否安装url whereis curl 启动docker服务: sudo service docker start sudo service docker stop 安装curl sudo ap ...

  6. DOCKER windows安装

    DOCKER windows安装 1.下载程序包 2. 设置环境变量 3. 启动DOCKERT 4. 分析start.sh 5. 利用SSH工具管理 6. 下载镜像 6.1 下载地址 6.2 用FTP ...

  7. 在docker里面安装部署应用

    最近一直在做docker的安装打包工作,学到不少东西,在博客里记一下. 环境centos6 ,docker 基础镜象centos6 1.创建本地基础镜象,安装基础命令包 (1)Dockerfile,D ...

  8. Docker Centos安装Redis以及问题处理

    之前一篇文章 Redis安装及主从配置 介绍了redis的安装配置,另一篇文件介绍了 Docker Centos安装Openssh .今天将两篇文件结合一下——在Docker Centos环境下搭建r ...

  9. Docker Centos安装Mysql5.6

    之前一篇随笔<Docker Centos安装Openssh> 写的是如何在基础的centos镜像中搭建ssh服务,在此基础上再搭建其他服务.本文继续介绍在centos_ssh基础上搭建my ...

随机推荐

  1. IOS Html富文本渲染方式:DTCoreText、WKWebView、UIWebView的内存占用对比

    在app的内容页(详情页)中,富文本的显示一直是经常需要处理的问题,而通常在后端的富文本编辑中,Html应用比较普遍,所以其实需要处理的Html富文本显示的问题,以下这三种方式肯定不是最优的显示Htm ...

  2. parent() parents() parentsUntil()三者之间的对比

    $(document).ready(function(){ $("span").parent(); });只拿到span的父级标签 $(document).ready(functi ...

  3. 团体程序设计天梯赛-练习集-L1-026. I Love GPLT

    L1-026. I Love GPLT 这道超级简单的题目没有任何输入. 你只需要把这句很重要的话 —— “I Love GPLT”——竖着输出就可以了. 所谓“竖着输出”,是指每个字符占一行(包括空 ...

  4. java 常用API 时间 练习

    package com.orcal.demc01; import java.util.Date; public class Xuexi { public static void main(String ...

  5. JS 封装一个求圆面积的函数 传值:半径

    y(6) var s = ""; function y (r){ s = Math.PI*r*r; alert(s); }

  6. zabbix监控超详细搭建过程(转)

    监控及zabbix 目录: 1       监控分类... 1 1.1        硬件监控... 1 1.2        系统监控... 2 1.3        网络监控... 3 1.4   ...

  7. 死磕itchat源码--__init__.py

    itchat包中的__init__.py是该库的入口:在该文件中的源码如下: # -*- coding: utf-8 -*- from . import content from .core impo ...

  8. Asp 6种页面转向方法

    asp.net 页面转向方法其实就是两种 服务器端转向和客户端转向 客户端转向实质上是指由浏览器直接向服务器端重新发送一个请求. 而服务器端转向是指服务器内部进行页面的跳转. 服务器端转向和客户端转向 ...

  9. Bash 如何取得当前正在执行的脚本的绝对路径?

    转自:http://blogread.cn/it/article/6549?f=wb Bash 如何取得当前正在执行的脚本的绝对路径? 如题,一般我们写Shell脚本的时候,都倾向使用绝对路径,这样无 ...

  10. Java多线程中Sleep与Wait的区别

    Java中的多线程是一种抢占式的机制 而不是分时机制.抢占式机制指的是有多个线程处于可运行状态,但是只有一个线程在运行. 共同点: 1. 他们都是在多线程的环境下,都可以在程序的调用处阻塞指定的毫秒数 ...