Ubuntu16.04安装docker

  转自:http://www.cnblogs.com/lighten/p/6034984.html

  本篇主要翻译一下官方指导ubuntu下安装docker指南,方便查阅,官方指导网址:https://docs.docker.com/engine/installation/linux/ubuntulinux/ 。这篇文章主要指导你去安装使用Docker-managed发布包及其安装机制。使用这些包确保你获得最近的docker官方发布版本。如果你需要安装使用Ubuntu-managed包,查阅Ubuntu文档。

1.docker支持以下Ubuntu操作系统:

   Ubuntu Xenial 16.04[LTS]  Ubuntu Trusty 14.04[LTS]  Ubuntu Precise 12.04[LTS]

2.前置需求

    不管你是Ubuntu的哪个版本,Docker需要64的操作系统。此外你的kernel内核至少要在3.10版本之上。最近的3.10小版本或者最新的维护版本也是可以接受的。kernel3.10版本之前的系统缺少一些特性来运行docker容器。这些旧版本有些已知的bugs会导致数据丢失并且在一定条件下会频繁的故障。检查你当前的kernel版本,打开终端,输入

    uname -r

   

  注意:如果你之前使用APT安装过docker,为了新版本的docker仓库,确保你更新了APT源。

3.更新你的apt源

    Docker的APT仓库包含1.7.1以及更高的版本。通过设置APT使用来自docker仓库的包。

    1)登陆机器,用户必须使用sudo或者root权限。

    2)打开终端

    3)更新包信息,确保APT能使用https方式工作,并且CA证书已安装了

    sudo apt-get update

    sudo apt-get install apt-transport-https ca-certificates

    出现这个问题可能是有另一个程序正在运行,导致资源被锁不可用。而导致资源被锁的原因可能是上次运行安装或更新没有正常完成,解决办法就是删掉。

    sudo rm /var/cache/apt/archives/lock

    sudo rm /var/lib/dpkg/lock

    4)添加一个新的GPG密钥

     sudo apt-key adv --keyserver hkp://p80.pool.sks-keyservers.net:80 --recv-keys 58118E89F3A912897C070ADBF76221572C52609D

    5)找到合适你的Ubuntu操作系统的键,这个键决定APT将搜索哪个包。可能的键有:

    Ubuntu version    Repository

    Precise 12.04     deb https://apt.dockerproject.org/repoubuntu-precise main

    Trusty 14.04      deb https://apt.dockerproject.org/repoubuntu-trusty main

    Xenial 16.04      deb https://apt.dockerproject.org/repoubuntu-xenial main

    注意:docker没有为所有的架构提供包,Binary artifacts are built nightly,你可以从https://master.dockerproject.org. 处下载下来。在一个多架构的系统上安装docker,为键添加一个[arch=]条款。更多细节参考Debian Multiarch维基百科。

    6)运行下面的命令,用占位符<REPO> 为你的操作系统替换键。

    echo "<REPO>" | sudo tee /etc/apt/sources.list.d/docker.list

    比如你是16.04将上面命令的<REPO>

    替换成deb https://apt.dockerproject.org/repoubuntu-xenial main 执行那条命令,就在那个文件夹下创建了一个docker.list文件,里面的内容就是

    deb https://apt.dockerproject.org/repoubuntu-xenial main

    7)更新APT包索引

    sudo apt-get update

    8)校验APT是从一个正确的仓库拉取安装包。

    当运行下面命令的时候,这个键会返回你目前可以安装的docker版本,每个键都包括URL:https://apt.dockerproject.org/repo/。下面是截取的部分输出内容。

    命令:apt-cache policy docker-engine

    现在当你运行apt-get upgrade的时候,APT就会从新的仓库拉安装包。

4.某些Ubuntu版本需要的前置操作

    Ubuntu Xenial 16.04[LTS]  Ubuntu Trusty 14.04[LTS]

    这两个版本记得安装linux-iamge-extra-*的kernel包。这个包允许你使用aufs存储驱动。

    sudo apt-get install linux-image-extra-$(uname -r) linux-image-extra-virtual

    Ubuntu Precise 12.04[LTS]

    对于这个版本,你需要3.13以上的kernel版本,你必须升级。下面表格指导你需要哪些包:

    你可以执行以下命令:

    sudo apt-get install linux-image-generic-lts-trusty

    sudo reboot

5.安装

   1)登陆系统,用你的账号使用sudo全权限

   2)更新APT包索引:sudo apt-get update

   3)安装docker:sudo apt-get install docker-engine

   4)开启docker后天进程:sudo service docker start

   5)校验docker是否安装成功:sudo docker run hello-world

   这个命令会下载一个测试镜像,并且运行在一个容器中。当容器运行时,他会打印一些信息,并且退出。

6.可选配置

6.1 创建一个docker组

  docker后台进程是绑定的Unix的socket而不是TCP端口。默认情况下,Unix的socket属于用户root,其它用户要使用要通过sudo命令。由于这个原因,docker daemon通常使用root用户运行。

  为了避免使用sudo当你使用docker命令的时候,创建一个Unix组名为docker并且添加用户。当docker daemon启动,它会分配Unix socket读写权限给所属的docker组。

  注意:docker组不等价于用户root,如果想要知道的更多关于安全影响,查看docker daemon attack surface

  sudo groupadd docker

  sudo usermod -aG docker $USER

  退出再重进,确保该用户有正确的权限。

  校验生效,通过运行docker命令不带sudo:docker run hello-world,如果失败会有以下类似的信息:Cannot connect to the Docker daemon. Is ‘docker daemon‘ running on this host?确保DOCKER_HOST环境变量没有设置。如果有取消它。

6.2 调整内存和交换区计算

  当用户运行docker时,他们可能在使用一个镜像时看见下面的信息:

  WARNING: Your kernel does not support cgroup swap limit. WARNING: Your kernel does not support swap limit capabilities. Limitation discarded.

  为了阻止这些信息,在你的系统中启用内存和交换区计算。这个操作会导致即便docker没有使用也有内存开销以及性能下降。内存开销大概是总内存的1%。性能降低了大约10%。

  修改/etc/default/grub文件。vi或者vim命令都行,设置GRUB_CMDLINE_LINUX的值,如下:GRUB_CMDLINE_LINUX="cgroup_enable=memory swapaccount=1"。保存文件并关闭。sudo update-grub更新启动项。reboot重启你的系统。

6.3启动UFW转发

  当你运行docker时,在同一台主机上使用UFW(Uncomplicated Firewall) ,你需要额外的配置。docker使用桥接方式来管理容器的网络。默认情况下,UFW废弃所有的转发流量。因此,docker运行时UFW可以使用,你必须设置合适UFW的转发规则。

  UFW默认配置规则拒绝了所有传入流量。如果你想要从另一个主机到达你的容器需要允许连接docker的端口。docker的默认端口是2376如果TLS启用,如果没有启动则是2375,会话是不加密的。默认情况,docker运行在没有TLS启动的情况下。

  为了配置UFW并且允许进入的连接docker端口:

  检查UFW是否安装并启用:sudo ufw status

  打开/etc/default/ufw文件并编辑:sudo nano /etc/default/ufw

  设置DEFAULT_FORWARD_POLICY:DEFAULT_FORWARD_POLICY="ACCEPT"

  保存退出并重启使用新的设置:sudo ufw reload

  允许所有的连接到docker端口:sudo ufw allow 2375/tcp

6.4 为使用docker配置DNS服务器

  系统运行桌面的Ubuntu或者Ubuntu衍生产品通常使用127.0.0.1作为默认的nameserver文件/etc/resolv.conf文件中。NetworkManager也通常设置dnsmasq nameserver 127.0.0.1在/etc/resolv.conf。

  当在桌面机器运行容器,使用这些配置时,docker的使用者会看见这些警告:

  WARNING: Local (127.0.0.1) DNS resolver found in resolv.conf and containers can‘t use it. Using default external servers : [8.8.8.8 8.8.4.4]

  这个警告发生是因为docker容器不能使用本地DNS命名服务器。此外docker默认使用一个额外的nameserver。

  为了避免这个警告,你可以在使用docker容器的时候指定一个DNS服务器。或者你可以禁用dnsmasq在NetworkManager中。但是,禁用会导致DNS协议在某些网络中变慢。

  下面的说明描述了如何在Ubuntu14.0或以下版本配置docker守护进程。Ubuntu15.04及之上的使用systemd用于启动项和服务管理。指导通过使用systemd来配置和控制一个守护进程。

  设置指定的DNS服务:

  打开/etc/default/docker文件并编辑:sudo nano /etc/default/docker,添加配置项:DOCKER_OPTS="--dns 8.8.8.8"。将8.8.8.8用一个本地的DNS服务例如192.168.1.1替换。你也可以配置多个DNS服务器。用空格隔开它们,如:--dns 8.8.8.8 --dns 192.168.1.1。警告:当你在笔记本连接了不同网络的情况时做这些操作,确保选择一个公用的DNS服务器。保存文件并退出,重启docker守护进程:sudo service docker restart。

  或者另一个选择,禁用dnsmasq在网络管理器中,这可能导致你的网速变慢:

  打开/etc/NetworkManager/NetworkManager.conf文件,编辑它:sudo nano /etc/NetworkManager/NetworkManager.conf。找到行dns=dnsmasq,注释掉。保存关闭文件,重启网络管理器和docker.sudo restart network-manager  sudo restart docker。

6.5 配置docker引导启动

  Ubuntu15.04之后使用systemd作为引导启动和服务管理,14.10及以下版本是upstart。15.04以上,需要配置docker守护进程boot启动,运行命令:sudo systemctl enable docker

  14.10及以下版本安装方法会自动配置upstart来启动docke daemon在boot。

7 升级卸载docker

  升级:sudo apt-get upgrade docker-engine

  卸载:sudo apt-get purge docker-engine

  卸载及依赖:sudo apt-get autoremove --purge docker-engine

  上述命令不会卸载images,containers,volumes或者用户自己创建的配置文件。你如果想删除这些东西,执行下面的命令:

  rm -rf /var/lib/docker

  安装最简单的方法是:sudo apt-get update   sudo apt-get install docker

  

时间: 2024-12-27 21:58:25

Ubuntu16.04安装docker的相关文章

Ubuntu16.04安装Docker 入门

Ubuntu16.04安装Docker,基本使用入门 Ubuntu16.04安装Docker [email protected]: ~# apt install docker.io -y 查看当前版本 [email protected]:~# docker -v Docker version 1.9.1, build a34a1d5 [email protected]:~# dpkg -l | grep docker rc  docker.io                         

ubuntu16.04 安装docker

1.Docker requires a 64-bit installation regardless of your Ubuntu version. Additionally, your kernel must be 3.10 at minimum. 2.To check your current kernel version,  uname -r 3.Note: If you previously installed Docker using APT, make sure you update

ubuntu16.04安装docker图形管理界面portainer

下载镜像 docker pull portainer/portainer 单机版运行 docker run -d --name portainer -p 9000:9000 --restart=always -v /var/run/docker.sock:/var/run/docker.sock portainer/portainer 访问方式:http://IP:9000 原文地址:https://www.cnblogs.com/aric2016/p/12045255.html

Ubuntu16.04安装kubernetes1.13集群

Ubuntu16.04安装kubernetes1.13集群 最新的安装可以使用以下方式:https://www.cnrancher.com/docs/rancher/v2.x/cn/overview/quick-start-guide 方便,快捷! 以下为正文. 前言 Docker容器化,虚拟化技术上的又一个猛将,可以极高提高软件部署的速度.运行一个Docker容器,这个容器作为一个进程分配了计算资源,不同容器之间资源隔离,仿佛每个容器都是一台机器, 并且通过宿主机网桥,可以模拟一个局域网.可以

Ubuntu16.04安装tensorflow+安装opencv+安装openslide+安装搜狗输入法

Ubuntu16.04在cuda以及cudnn安装好之后,安装tensorflow,tensorflow以及opencv可以到网上下载对应的安装包并且直接在安装包所在的路径下直接通过pip与conda进行安装,如下图所示: 前提是要下载好安装包.安装好tensorflow之后还需要进行在~/.bashrc文件中添加系统路径,如下图所示 Openslide是医学图像一个重要的库,这里给出三条命令进行安装 sudo apt-get install openslide-tools sudo apt-g

Ubuntu16.04安装opencv for python/c++

Ubuntu16.04安装opencv for python/c++ 网上关于opencv的安装已经有了不少资料,但是没有一篇资料能让我一次性安装成功,因此花费了大量时间去解决各种意外,希望这篇能给一些人带去便利,节省时间. 1.安装OpenCV所需的库 1 sudo apt-get install build-essential 2 sudo apt-get install cmake git libgtk2.0-dev pkg-config libavcodec-dev libavforma

Ubuntu16.04 安装JDK Tomcat

Ubuntu16.04安装jdk,下载linux中的64版本 需要下载jdk,tomcat安装包 tar.gz版本的 http://pan.baidu.com/s/1mi4WVhA 安装JDK: [email protected]:~$ sudo mkdir /java [sudo] hongdada 的密码: hongdada[email protected]:~$ cd /Downloads bash: cd: /Downloads: 没有那个文件或目录 [email protected]:

Linux入门(9)——Ubuntu16.04安装flash player

打开网页经常提示安装flash player,不安装flash player很多网页的视频都看不了. Ubuntu16.04安装flash player 打开终端,输入: sudo apt-get install flashplugin-installer

ubuntu16.04安装部署监控系统zabbix2.4

Ubuntu16.04安装部署监控系统Zabbix2.4 第一部分,php+mysql+nginx组件安装 1.系统更新 sudo apt-get update && sudo apt-get upgrade 2.安装php-fpm 检索系统当前自带的PHP版本:apt-cache search php-fpm 安装依赖包:sudo apt-get install make  bison g++ build-essential libncurses5-dev cmake 安装php-fpm