Ubuntu安装指南

以下均翻译自Docker官方文档 ,转载请注明:Vikings翻译

  Docker 支持多种平台下的安装运行,现在我们选取结合度最高的ubuntu来说明安装过程。

  首先需要明确Docker支持的ubuntu版本:

  目前Docker仅支持以上三种ubuntu版本。请大家在安装时,确认ubuntu版本。

  Note:

    如果你准备启用UFW的话,请参考以下额外步骤:

    Docker使用桥接技术来管理各容器的网络访问。但是Ubuntu默认是关闭对外网络访问的,所以在安装之前你需要启用防火墙的网络访问功能。

$ sudo nano /etc/default/ufw

# Change:
# DEFAULT_FORWARD_POLICY="DROP"
# to
DEFAULT_FORWARD_POLICY="ACCEPT"

    修改完成后,我们需要重新加载UFW。

$ sudo ufw reload

    UFW默认存在一套网络访问规则,如果你需要其他服务器可以访问到你的虚拟容器,那么就需要修改一下UFW的访问规则(Docker默认端口是2375,所以需要UFW允许2375的数据访问)。

$ sudo ufw allow /tcp

  (因为Ubuntu的安装过程类似,我们只以一个版本的安装为例)

  Ubuntu Trusty 14.04 (LTS) (64-bit)

    Ubuntu Trusty使用的是3.13.0的Linux内核,在安装Docker时需要安装docker.io,安装过程中所需要的各种依赖包都可以在Ubunut官方资料库中找到。

    

Note:
  Ubuntu (或者Debian)因为历史原因,内置了一个叫做docker的KDE3/GNOME2安装包,所以我们需要安装和执行的docker应用名称都改为docker.io

   

  Installation

    执行以下命令,就可以安装docker的最新版本(至少在译者翻译时为最新版本╮(╯▽╰)╭)

$ sudo apt-get update
$ sudo apt-get install docker.io
$ sudo ln -sf /usr/bin/docker.io /usr/local/bin/docker
$ sudo sed -i '$acomplete -F _docker docker' /etc/bash_completion.d/docker.io

    OK了,执行完以上命令后,Docker在Ubuntu上面就安装好了。当然过一段时间后,你安装的版本就不会是最新版本了。这种情况下你可以安装以下的方式进行Docker升级。

      1、确认/usr/lib/apt/methods/https是否存在,如果不存在,那么先安装apt-transport-https(apt-get install apt-transport-https)。

      2、将Docker官方资料库的访问Key添加到你本地系统。

 sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 36A1D7869245C8950F966E92D8576A8BA88D21E9

      3、上面一步执行成功后,就开始安装Lxc-docker包。

$ sudo sh -c "echo deb https://get.docker.io/ubuntu docker main\
> /etc/apt/sources.list.d/docker.list"
$ sudo apt-get update
$ sudo apt-get install lxc-docker

      4、如果你感觉以上三步很麻烦,那么就执行下面的这一句吧(前提是CURL已经安装好了)。

$ curl -sSL https://get.docker.io/ubuntu/ | sudo sh

    讲过以上几步,你就安装最新版本的docker了。最后就是开始执行docker吧

$ sudo docker run -i -t ubuntu /bin/bash

    NOTE:

    重新看文章时,发现漏一个环节。上述步骤都是在root用户下安装的,需要给非root用户访问权限。以下是操作步骤:

# Add the docker group if it doesn't already exist.
$ sudo groupadd docker # Add the connected user "${USER}" to the docker group.
# Change the user name to match your preferred user.
# You may have to logout and log back in again for
# this to take effect.
$ sudo gpasswd -a ${USER} docker # Restart the Docker daemon.
# If you are in Ubuntu 14.04, use docker.io instead of docker
$ sudo service docker restart

    

最新文章

  1. 【白话设计模式四】单例模式(Singleton)
  2. Object.defineproperty实现数据和视图的联动
  3. Windows消息机制知识点总结
  4. js this的使用举例
  5. JDK环境变量的配置方法
  6. SQLSERVER 启用跨库查询脚本
  7. block的动态传值例子
  8. (译文)12个简单(但强大)的JavaScript技巧(一)
  9. SQL删除重复行和查询所有大于某成绩的语句分析
  10. Django的model中日期字段设置默认值的问题
  11. [置顶] 如何在Python IDLE中调试Python代码?
  12. 一步一步写算法(之prim算法 中)
  13. xaml中的依赖属性
  14. 关于 CentOS 7 里面 普通用户 Ulimit max user processes 值的问题
  15. API WAVE 专栏
  16. jq获取图片的原始尺寸,自适应布局
  17. MongoDB用户权限管理
  18. vue使用v-for时vscode报错 Elements in iteration expect to have 'v-bind:key' directives
  19. 项目ITP(二) 二维码 拿起你的手机装一装,扫一扫 【每日一搏】
  20. 软工个人博客作业Week 1

热门文章

  1. innerHTML和innerText的区别
  2. 关于SQL注入和如何防止
  3. 小猪cms命名规则整理
  4. python 数据分析--词云图,图形可视化美国竞选辩论
  5. Linux下动态库(.so)和静态库(.a) 的区别
  6. BZOJ2675 : Bomb
  7. 解决ListView滑动时卡的问题,实现异步加载图片解决
  8. EasyUI datagrid简单运用
  9. Spring.NET 中的 ADO.NET 数据访问的示例
  10. Service IP 原理 - 每天5分钟玩转 Docker 容器技术(137)
  11. Spider与OpenPyXL的结合
  12. 使用Django的时候,页面请求正常,也没有报任何错误,甚至连警告都没有的情况下,页面却还是原地不动或者闪一下或者无限显示加载动画的情况下的解决办法
  13. Linux 总是提示You have new mail in /var/spool/mail/root
  14. call,apply和bind的区别
  15. Solr 7.7.0 部署到Tomcat
  16. Go使用protobuf
  17. 【WPF】样式与模板:鼠标移入/悬浮时按钮的背景色不改变
  18. extern--C#调用C++等其他非托管代码
  19. Scrum立会报告+燃尽图(十月十日总第一次):选题
  20. 运维开发:python websocket网页实时显示远程服务器日志信息