安装

Docker-CE

安装过程参考官网,Ubuntu中如下:

## 1. 从仓库安装
$ sudo apt-get update # 使apt使用https的仓库
$ sudo apt-get install \
apt-transport-https \
ca-certificates \
curl \
software-properties-common # 添加docker的官方GPG Key
$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add - # 验证
$ sudo apt-key fingerprint 0EBFCD88 pub 4096R/0EBFCD88 2017-02-22
Key fingerprint = 9DC8 5822 9FC7 DD38 854A E2D8 8D81 803C 0EBF CD88
uid Docker Release (CE deb) <docker@docker.com>
sub 4096R/F273FCD8 2017-02-22 # 添加稳定版仓库
$ sudo add-apt-repository \
"deb [arch=amd64] https://download.docker.com/linux/ubuntu \
$(lsb_release -cs) \
stable" # 再次update
$ sudo apt-get update # 安装docker-ce,这一步比较慢,清华的源也是在官网下载安装的
$ sudo apt-get install docker-ce # hello world
$ sudo docker run hello-world ## 1.1 安装其他可用版本
# 显示可用版本
$ apt-cache madison docker-ce
# 指定版本
$ sudo apt-get install docker-ce=<VERSION> ## 2. 从deb包安装
# 从https://download.docker.com/linux/ubuntu/dists/选择对应的发行版本,进入pool/stable/amd64,下载一个合适的版本
$ sudo dpkg -i /path/to/package.deb

nvidia-docker

nvidia-docker用于运行基于GPU的程序,参考github.

# 删除nvidia-docker1.0的容器,卸载nvidia-docker1.0
docker volume ls -q -f driver=nvidia-docker | xargs -r -I{} -n1 docker ps -q -a -f volume={} | xargs -r docker rm -f
sudo apt-get purge -y nvidia-docker # 添加仓库
curl -s -L https://nvidia.github.io/nvidia-docker/gpgkey | \
sudo apt-key add -
curl -s -L https://nvidia.github.io/nvidia-docker/ubuntu16.04/amd64/nvidia-docker.list | \
sudo tee /etc/apt/sources.list.d/nvidia-docker.list
sudo apt-get update # 安装nvidia-docker2,重新加载docker daemon的配置
sudo apt-get install -y nvidia-docker2
sudo pkill -SIGHUP dockerd # 测试nvidia-smi命令
docker run --runtime=nvidia --rm nvidia/cuda nvidia-smi
  • 安装nvidia-docker2之后的/etc/docker/daemon.json
{
"runtimes": {
"nvidia": {
"path": "/usr/bin/nvidia-container-runtime",
"runtimeArgs": []
}
}
}

免sudo运行docker命令

  • 创建docker组

    $ sudo groupadd docker
  • 添加当前用户到该docker组

    $ sudo usermod -aG docker $USER
  • 注销后重新登录
  • 运行hello-world程序进行测试。如果提示以下错误:
WARNING: Error loading config file: /home/user/.docker/config.json -
stat /home/user/.docker/config.json: permission denied

原因是在当前用户加入docker组之前以sudo权限配置了docker,配置目录~/.docker/的权限是sudo的。解决方法有两个:

  • 删除~/.docker/,重新配置
  • 用下面的命令更改权限
$ sudo chown "$USER":"$USER" /home/"$USER"/.docker -R
$ sudo chmod g+rwx "/home/$USER/.docker" -R

ustc mirrors

在/etc/docker/daemon.json中添加新的项,使用中科大的docker镜像:

{
"registry-mirrors": ["https://docker.mirrors.ustc.edu.cn/"]
}

然后重启docker服务

sudo service docker restart

service failed

Fixing the Job for docker.service failed because the control process exited with error code. See "systemctl status docker.service" and "journalctl -xe" for details. problem, for me this worked:

  1. sudo rm -rf /var/lib/docker
  2. create daemon.json in /etc/docker/
  3. put this in it:

    {

    "exec-root": "/path/to/docker/run",

    "storage-driver": "overlay",

    "graph": "/path/to/docker/lib"

    }
  4. systemctl start docker
  5. docker run --rm hello-world

Docker_1 安装Docker-CE的更多相关文章

  1. 在Ubuntu14.04下安装Docker CE(1) - repository篇

    从2017年3月开始,Docker开始分为社区版本和企业版,也就是Docker CE和Docker EE, 原来Ubuntu14.04下,通过sudo apt-get install docker.i ...

  2. Ubuntu 安装 Docker CE(社区版)

    参考自 https://yeasy.gitbooks.io/docker_practice/install/ubuntu.html#ubuntu-1604- docker-io 是以前早期的版本,版本 ...

  3. 详细介绍Ubuntu 16.04系统环境安装Docker CE容器的过程

    由于项目的需要,我们在很多软件配置环境中需要用到Docker容器,这个时候我们可以用自己的VPS主机搭建.在这篇文章中,笔者将会利用Ubuntu 16.04系统环境安装Docker CE容器的过程.如 ...

  4. Centos7安装Docker CE

      每次安装Docker都要去找文档,或者每次安装的都不一样,还是要好好管理自己的这些东西,下次用的时候可以省很多的时间   Docker的早期版本称为docker或docker-engine:现在的 ...

  5. ubuntu16.04 在线安装docker ce

    官方文档:https://docs.docker.com/install/linux/docker-ce/ubuntu/   ubuntu创建普通用户: adduser dk001 给该用户添加sud ...

  6. Ubuntu18.04上安装Docker CE

    建立 REPOSITORY 1.更新索引包 更新 /etc/apt/sources.list 和 /etc/apt/sources.list.d 中列出的源的地址,这样才能获取到最新的软件包 sudo ...

  7. Ubuntu 安装 Docker CE

    注:本文转载自<Docker入门> 警告:切勿在没有配置 Docker APT 源的情况下直接使用 apt 命令安装 Docker. 准备工作 系统要求 Docker CE 支持以下版本的 ...

  8. centos7 下安装Docker CE

    前提条件 操作系统要求 要保证centos-extrasrepository开启(enabled).默认处于开启状态. 推荐使用overlay2存储驱动 卸载老版本 $ sudo yum remove ...

  9. CentOS_mini下安装docker 之 安装docker CE

    警告:切勿在没有配置 Docker YUM 源的情况下直接使用 yum 命令安装 Docker. 原文地址:https://yeasy.gitbooks.io/docker_practice/inst ...

  10. CentOS安装Docker CE

    安装Docker CE(免费版) docker EE企业版您可以根据需要以不同方式安装Docker CE: 大多数用户 设置Docker的存储库并从中进行安装,以便于安装和升级任务.这是推荐的方法. ...

随机推荐

  1. Kafka 0.9 新特性

    Kafka发布0.9了,这一重磅消息,让小伙伴们激动不已,来看看这个版本有哪些值得关注的地方吧! 一.安全特性 在0.9之前,Kafka安全方面的考虑几乎为0,在进行外网传输时,只好通过Linux的防 ...

  2. plsql数据库异常---plsql 登录后,提示数据库字符集(AL32UTF8)和客户端字符集(ZHS16GBK)不一致

    今天遇到这个问题网上搜了一下答案找到了 转贴 http://blog.csdn.net/lidew521/article/details/8546155 plsql 登录后提示: Database c ...

  3. python中lambda,map,reduce,filter,zip函数

    函数式编程 函数式编程(Functional Programming)或者函数程序设计,又称泛函编程,是一种编程范型,它将计算机运算视为数学上的函数计算,并且避免使用程序状态以及易变对象.简单来讲,函 ...

  4. Boost application performance using asynchronous I/O-ref

    http://www.ibm.com/developerworks/linux/library/l-async/?S_TACT=105AGX52&S_CMP=cn-a-l Introducti ...

  5. Razor 将C#对象转换成Javascript对象, json还原被转码的字符 &quot·· HTML转义符

    Razor 将C#对象转换成Javascript对象 在Razor中使用Json字符串,特殊字符被自动转义(如:\"->") @{ var jsonStr = Html.Ra ...

  6. Java 基础(5)——数据转换 & 特殊的引用类型

    数据转换 变量在第(3)篇中有讲到过八种数据类型,分别是能够用来表示整型的 byte.short.int.long 和表示浮点型的 float.double 以及字符型 char.布尔型 boolea ...

  7. cygwin 的安装和配置

         Cygwin是一个在windows平台上运行的类UNIX模拟环境,是cygnus solutions公司开发的自由软件(该公司开发的著名工具还有eCos,不过现已被Redhat收购).它对于 ...

  8. poj 1141 Brackets Sequence ( 区间dp+输出方案 )

    http://blog.csdn.net/cc_again/article/details/10169643 http://blog.csdn.net/lijiecsu/article/details ...

  9. SZU 7

    A - Megacity sqrtf是个坑 #include <iostream> #include <string> #include <cstring> #in ...

  10. 数据库字段值为null利用setInc方法无法直接写入

    1.数据库字段值为null利用setInc方法无法直接写入,先判断是否为空,再写入. if($points->add($dataList)){ $user=M('cuser'); $null=$ ...