virtualBox中ubuntu安装docker

一、Docker是什么

        docker直译为码头工人。当它成为一种技术时,做的也是码头工人的事。官网是这样描述它的:“Docker是一个开发的平台,用来为开发者和系统管理员构建、发布和运行分布式应用。”也就是说,如果把你的应用比喻为货物,那么码头工人(Docker)就会迅速的用集装箱将它们装上船。快速、简单而有效率。

        它是用Go语言写的,是程序运行的“容器”(Linux containers),实现了应用级别的隔离(沙箱)。多个容器运行时互补影响,安全而稳定。

        我喜欢它的原因就是快速部署,安全运行,不污染我的系统。

二、试用 Try it!

        官方提供一个互动的小教程,让你很容易的了解Docker的基本用法,快去试试吧!

三、安装

        官方直接支持64位Linux系统安装Docker,但如果想在32位系统中运行,有人也进行了一些尝试,比如32Ubuntu下,参考点击打开链接

        其他系统的安装请参考官网,下面说说我在Ubuntu14.04下的安装。       

1.将镜像加入到程序源中:

  1. ~$ sudo sh -c "echo deb http://mirror.yandex.ru/mirrors/docker/ docker main > /etc/apt/sources.list.d/docker.list"  

2.接着update

  1. $ sudo apt-get update  

3.如果报错就fix掉它:
  1. W: GPG error: http://mirror.yandex.ru docker Release: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY D8576A8BA88D21E9  

解决此错误:
  1. $ sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys D8576A8BA88D21E9  
  2. Executing: gpg --ignore-time-conflict --no-options --no-default-keyring --secret-keyring /tmp/tmp.RmJ1SUpsXX --trustdb-name /etc/apt/trustdb.gpg --keyring /etc/apt/trusted.gpg --primary-keyring /etc/apt/trusted.gpg --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys D8576A8BA88D21E9  
  3. gpg: requesting key A88D21E9 from hkp server keyserver.ubuntu.com  
  4. gpg: key A88D21E9: public key "Docker Release Tool (releasedocker) <docker@dotcloud.com>" imported  
  5. gpg: Total number processed: 1  
  6. gpg:               imported: 1  (RSA: 1)  

4.下载docker:
  1. $ sudo apt-get install lxc-docker  

静静的等待它下载完成吧。

另外,这个命令也许会有帮助:

<span style="font-size:14px;"><code><span class="pln">$ curl </span><span class="pun">-</span><span class="pln">sSL https</span><span class="pun">:</span><span class="com">//get.docker.com/ubuntu/ | sudo sh</span></code></span>
四、初步使用
终端中输入docker,打印出docker的命令列表:
  1. Commands:  
  2.     attach    Attach to a running container  
  3.     build     Build an image from a Dockerfile  
  4.     commit    Create a new image from a container's changes  
  5.     cp        Copy files/folders from a container's filesystem to the host path  
  6.     create    Create a new container  
  7.     diff      Inspect changes on a container's filesystem  
  8.     events    Get real time events from the server  
  9.     exec      Run a command in a running container  
  10.     export    Stream the contents of a container as a tar archive  
  11.     history   Show the history of an image  
  12.     images    List images  
  13.     import    Create a new filesystem image from the contents of a tarball  
  14.     info      Display system-wide information  
  15.     inspect   Return low-level information on a container  
  16.     kill      Kill a running container  
  17.     load      Load an image from a tar archive  
  18.     login     Register or log in to a Docker registry server  
  19.     logout    Log out from a Docker registry server  
  20.     logs      Fetch the logs of a container  
  21.     port      Lookup the public-facing port that is NAT-ed to PRIVATE_PORT  
  22.     pause     Pause all processes within a container  
  23.     ps        List containers  
  24.     pull      Pull an image or a repository from a Docker registry server  
  25.     push      Push an image or a repository to a Docker registry server  
  26.     restart   Restart a running container  
  27.     rm        Remove one or more containers  
  28.     rmi       Remove one or more images  
  29.     run       Run a command in a new container  
  30.     save      Save an image to a tar archive  
  31.     search    Search for an image on the Docker Hub  
  32.     start     Start a stopped container  
  33.     stop      Stop a running container  
  34.     tag       Tag an image into a repository  
  35.     top       Lookup the running processes of a container  
  36.     unpause   Unpause a paused container  
  37.     version   Show the Docker version information  
  38.     wait      Block until a container stops, then print its exit code  
接下来就可以尝试使用这些命令了,不过在进行下一步之前,我们要先了解几个概念。
五、重要概念

1.image 镜像

镜像就是一个只读的模板。比如,一个镜像可以包含一个完整的Ubuntu系统,并且安装了apache。

镜像可以用来创建Docker容器。

其他人制作好镜像,我们可以拿过来轻松的使用。这就是吸引我的特性。

2.Docker container 容器

Docker用容器来运行应用。容器是从镜像创建出来的实例(好有面向对象的感觉,类和对象),它可以被启动、开始、停止和删除。

3.仓库

这个好理解了,就是放镜像的文件的场所。比如最大的公开仓库是Docker Hub。

六、几个简单的实践

1.search

搜索仓库中是否有wordpress这个博客镜像,如下:

  1. $ docker search wordpress  
  2. NAME                                   DESCRIPTION                                     STARS     OFFICIAL   AUTOMATED  
  3. wordpress                              The WordPress rich content management syst...   185       [OK]   

2.下载这个镜像
  1. $ docker pull wordpress  
  2. wordpress:latest: The image you are pulling has been verified  
3.查看自己的镜像
  1. $ docker images  
  2. REPOSITORY               TAG                 IMAGE ID            CREATED             VIRTUAL SIZE  
  3. linc-wiki                latest              b5a1e34b01c2        27 hours ago        689.7 MB  
  4. ubuntu                   latest              5ba9dab47459        5 days ago          188.3 MB  
  5. wordpress                latest              ecc04d6d638c        6 days ago          470 MB  

4.简单的运行
运行wordpress要进行mysql的配置,为了演示run,将ubuntu跑起来吧。

  1. $ docker run -it ubuntu /bin/bash  
  2. root@46ff2a695ce1:/# echo "I am linc"  
  3. I am linc  

至此,体验结束。后续会有更加精彩的实践等着我们,Docker,我们来了!


参考:

https://docs.docker.com/installation/ubuntulinux/

https://bitnami.com/stack/mediawiki

https://docs.docker.com/userguide/

https://dockerpool.com/static/books/docker_practice

http://zhumeng8337797.blog.163.com/blog/static/1007689142014524115743806/

http://www.cnblogs.com/imoing/p/dockervolumes.html

https://github.com/docker/fig/issues/88

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值