docker【3】docker镜像容器安装

来源:互联网 发布:住宅施工工艺优化 编辑:程序博客网 时间:2024/05/03 14:58

前面文章中已经介绍过docker环境安装。这里具体讲解一下docker 的镜像构建,以及容器的运行;

之前讲到过,docker 有一个repository,所有的人都可以往上面发布镜像以及下载别人发布的镜像;

1、搜索镜像

    打开 docker hub ,在右上角有搜索框可以搜自己想要的镜像;比如 ubuntu ,whalesay 等,根据自己的需要进行搜索;官网上以whalesay为例子;

2、选择安装镜像

  • 根据官网demo 选择 docker/whaleasy 浏览器会打开这个镜像的仓库,下面还会有ubuntu15.10镜像的介绍。

    镜像仓库包含了该镜像的相关信息如它包含了什么软件、如何运行它。或许你已经注意到了,Whalesay是基于Ubuntu的linux分发版本,接下来的步骤将会引导你在你的机器上运行Whalesay;

使用下面命令,出现下列信息证明成功;

  1. $ sudo docker run docker/whalesay cowsay boo

    Unable to find image 'docker/whalesay:latest' locallylatest: Pulling from docker/whalesay2880a3395ede: Pull complete 515565c29c94: Pull complete 98b15185dba7: Pull complete 2ce633e3e9c9: Pull complete 35217eff2e30: Pull complete 326bddfde6c0: Pull complete 3a2e7fe79da7: Pull complete 517de05c9075: Pull complete 8f17e9411cf6: Pull complete ded5e192a685: Pull complete Digest: sha256:178598e51a26abbc958b8a2e48825c90bc22e641de3d31e18aaf55f3258ba93bStatus: Downloaded newer image for docker/whalesay:latest _____ < boo > -----    \     \      \                        ##        .                          ## ## ##       ==                       ## ## ## ##      ===                   /""""""""""""""""___/ ===          ~~~ {~~ ~~~~ ~~~ ~~~~ ~~ ~ /  ===- ~~~         \______ o          __/                    \    \        __/                      \____\______/  

当运行这个命令的时候,docker会先在本地查找他,若不存在,则会从docker hub上下载;

到此 官网的Whalesay 安装完成。

  • Ubuntu15.10的镜像

这里自己需要一个ubuntu15.10的镜像,从docker hub 获取:

  1. $ sudo docker pull ubuntu:15.10

    15.10: Pulling from library/ubuntud0fa00decafb: Pull complete 392844978dc9: Pull complete a3a0dd44a4bb: Pull complete 2804d41e7f10: Pull complete Digest: sha256:ae24faeb7d968197008eb7fa6970d1aa90636963947fe3486af27b079cccfb17Status: Downloaded newer image for ubuntu:15.10

显示上述信息说明ubuntu15.10镜像安装完成;


附:查看本地镜像命令:

  1. $ sudo docker images

    REPOSITORY       TAG      IMAGE ID      CREATED       VIRTUAL SIZEubuntu           12.04    673a64f026f0  5 days ago   137 MBhello-world      latest   0a6ba66e537a  8 weeks ago  960 Bdocker/whalesay  latest   ded5e192a685  6months ago  247 MBmyjob1           latest   764c656f5fc5  5 hours ago  133.5 MBubuntu           15.10    2804d41e7f10  6 days ago   133.5 MB

3、启动容器

我们可以起一个linux的容器,来进行我们的安装部署,我需要在ubuntu15.10的镜像上启动我需要的容器 myubuntu:

使用如下命令,然后进入容器,进行自己的操作:

  1. $ sudo docker run -ti --name myubuntu ubuntu:15.10

容器启动,具体信息如下,通过ls 可以查看目录,进行下一步需要的操作,比如应用程序的部署等:

  1. lin@lin166:~$ sudo docker run -ti --name myubuntu ubuntu:15.10
  2. root@f5480a8ba103:/# ls
  3. bin  boot  dev  etc  home  lib  lib64  media  mnt  opt  proc  root  run  sbin  srv  sys  tmp  usr  var
  4. root@f5480a8ba103:/#

注意:

每次 使用docker命令都需要使用sudo

这里把当前用户加入到docker组就可以直接使用命令,而不用每次都加sudo

  1. $ sudo groupadd docker

#改完后需要重新登陆用户

  1. $ sudo gpasswd -a ${USER} docker

4、修改已有镜像,发布成为自己需要的镜像

 注意:需要使用上面创建的容器的ID;

  • 先使用下载的镜像启动容器:

  1. lin@ubuntu:~$ docker run -t -i myjob1 /bin/bash
  2. root@b5b89b89919a:/#
  • 在容器中添加jdk;

  1. root@b5b89b89919a:/# apt-get install openjdk-7-jdk
  • 提交容器

  1. lin@ubuntu:~$ docker commit -m "Added jdk" -a "Docker Newbee" b5b89b89919a ubuntu15.10:v2

    c72878b77cf5d19d64c9e3b53ca9ab69ebdaaac51c6f75bae4e596b7e89cb3da

    其中 -m 类似一个版本记录,告诉自己添加了什么东西,-a 指定更新的用户信息 之后是用来创建镜像的容器的 ID;最后指定目标镜像的仓库名和 tag 信息。创建成功后会返回这个镜像的 ID 信息。

然后查看docker images 就会发现多了 ubuntu15.10   v2  的镜像

然后我们就可以直接使用这个含有jdk 的镜像,当然大家可以根据自己的需要安装自己需要的公用的东西;





0 0