ubuntu安装doker很简单,分4个步骤:

Step1:更新资源库并安装apt-transprot-https软件包。

在安装Docker前,

  首拉取最新的软件资源库

wangju@wangju-HP--G4:~/PycharmProjects/qqmessage$ sudo apt-get update

  然后安装对https协议的请求支持包

sudo apt-get install     apt-transport-https     ca-certificates curl  software-properties-common

遇到Do you want to continue?  输入 y

 Step2: 添加源的gpg秘钥。执行如下2个指令:

wangju@wangju-HP--G4:~/PycharmProjects/qqmessage$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
OK
wangju@wangju-HP--G4:~/PycharmProjects/qqmessage$ sudo apt-key fingerprint 0EBFCD88
pub rsa4096 -- [SCEA]
9DC8 9FC7 DD38 854A E2D8 8D81 803C 0EBF CD88
uid [ unknown] Docker Release (CE deb) <docker@docker.com>
sub rsa4096 -- [S]

 step3:获取当前操作系统代号。执行以下指令,如果是Ubuntu16.04LTS系统代号应该为:xenial,如果是Ubuntu18.04LTS版本则系统代号是:bionic

如果不确定可以执行如下指令:

lsb_release -cs

step4:添加官方软件源并安装Docker。,添加完成后更新本地软件源,执行Docker安装命令。

  在执行Docker前我们还需要指定对应的软件源,这里我们直接使用官方的软件源,这里指定的版本要用我们刚才获取的系统代号

sudo add-apt-repository  "deb [arch=amd64] https://download.docker.com/linux/ubuntu bionic stable"

  添加完成后更新本地软件源

sudo apt-get update

  执行Docker安装命令

sudo apt-get install -y docker-ce

step5:通过sudo docker version检查版本验证安装是否成功 

wangju@wangju-HP--G4:~/PycharmProjects/qqmessage$ sudo docker version
[sudo] password for wangju:
Client: Docker Engine - Community
Version: 19.03.
API version: 1.40
Go version: go1.12.12
Git commit: 633a0ea838
Built: Wed Nov ::
OS/Arch: linux/amd64
Experimental: false Server: Docker Engine - Community
Engine:
Version: 19.03.
API version: 1.40 (minimum version 1.12)
Go version: go1.12.12
Git commit: 633a0ea838
Built: Wed Nov ::
OS/Arch: linux/amd64
Experimental: false
containerd:
Version: 1.2.
GitCommit: b34a5c8af56e510852c35414db4c1f4fa6172339
runc:
Version: 1.0.-rc8+dev
GitCommit: 3e425f80a8c931f88e6d94a8c831b9d5aa481657
docker-init:
Version: 0.18.
GitCommit: fec3683

如果遇到下述问题,说明使用了doker version查看版本,而不是sudo doker version

Got permission denied while trying to connect to the Docker daemon socket at unix..

错误原因:

docker进程使用Unix Socket而不是TCP端口。而默认情况下,Unix socket属于root用户,需要root权限才能访问。

解决方法1

  使用sudo获取管理员权限,运行docker命令

解决方法2

  docker守护进程启动的时候,会默认赋予名字为docker的用户组读写Unix socket的权限,因此只要创建docker用户组,并将当前用户加入到docker用户组中,那么当前用户就有权限访问Unix socket了,进而也就可以执行docker相关命令

参照:Docker启动Get Permission Denied

 

参考文档:

https://jingyan.baidu.com/article/a681b0deb960fd3b184346df.html

最新文章

  1. LINQ系列:LINQ to SQL Take/Skip
  2. sys模块和os模块,利用sys模块生成进度条
  3. 创建自己的Activity
  4. Zepto.js touch模块深入分析
  5. php 二维数组(没啥技术含量)
  6. [iOS] 使用xib做为应用程序入口 with Code
  7. 编译php时出现xsl错误的解决方法
  8. caffe matlab 借口怎么提取灰度图的 feature ? What happened if I mixed the color images with gray images together for training ?
  9. POJ C程序设计进阶 编程题#3: 发票统计
  10. vba用http发送xml所需技术
  11. C#中如何查找Dictionary中的重复值
  12. Struts2通配符映射
  13. Mac OS系统 - 将视频转换成gif
  14. qt 多线程之间通讯
  15. java多线程向数据库写入数据
  16. 【蓝牙数据采集模块】-01-Sensor Controller 功能介绍
  17. 解决vue2.0路由 TypeError: Cannot read property &#39;matched&#39; of undefined 的错误问题
  18. redis权限认证及登录
  19. 【读书笔记】iOS-Settings Bundle
  20. ural 1091. Tmutarakan Exams(容斥)

热门文章

  1. hashmap的hash方法源doc解读
  2. Centos7.0 三种网络适配器
  3. deep_learning_Function_tf.add()、tf.subtract()、tf.multiply()、tf.div()
  4. 跟着动画来学习TCP三次握手和四次挥手
  5. 【hdu 6155】Subsequence Count
  6. uestc summer training #4 牛客第一场
  7. 本地安装sass出错问题解析
  8. shell变量、函数和数组以及字符串的截取
  9. 记一次生产环境nginx图片上传不了的问题
  10. 关于python-selenium-chromedriver提示