docker的安装和简单配置
docker的安装和简单配置
docker是balabalabala...懒得介绍。
国内安装docker很蛋疼,按照官方配置好了软件源之后,几十MB的安装文件下载要半天,没办法,docker默认的软件源是在国外的,速度很慢。幸好国内有docker软件源镜像,注意这里说的是软件源镜像,也就是deb系统下的apt源镜像,只用来安装docker。
阿里提供了软件源镜像及安装的步骤,写的还算比较详细。这里摘录关键步骤如下:
sudo apt-get update
sudo apt-get -y install apt-transport-https ca-certificates curl software-properties-common
# step 2: 安装GPG证书
curl -fsSL http://mirrors.aliyun.com/docker-ce/linux/debian/gpg | sudo apt-key add -
# Step 3: 写入软件源信息
sudo add-apt-repository "deb [arch=amd64] http://mirrors.aliyun.com/docker-ce/linux/debian buster stable"
# Step 4: 更新并安装 Docker-CE
sudo apt-get -y update
sudo apt-get -y install docker-ce
本人用Debian sid系统,手里部分服务器使用Ubuntu系统,Ubuntu的安装很简单,阿里官方文档就有介绍,这里以有点麻烦的Debian sid进行讲解,纯属炫(low)技。
上述命令,原文中都是ubuntu,这里简单将ubuntu替换为debian。
另外原文命令中的$(lsb_release -cs) 用于查询codename,这里直接替换为buster,注意,因为我用的是Debian sid,其对应的codename有可能在debian下面不存在,这里替换之前我是到这里确认过buster这个codename确实存在才这么写的。如果有新版的Debian sid(估计很快就有了),使用上一个版本的codename一般也没啥问题。
镜像源的配置
安装完了docker,还不能开心的使用,因为docker只是一个运行时,我们真正要用的是在docker里面运行的各种images,但是这个images的镜像还是在国外的,慢的要死。幸好国内也有镜像,我们可以使用国内的镜像来代替国外镜像。执行以下命令:
sudo mkdir /etc/docker/ # 如果这个文件夹不存在的话
sudo nano /etc/docker/daemon.josn # Fedora、Centos等系统这个文件的位置不同。
可以在指定位置创建一个docker的配置文件,并打开,将以下内容写入文件并保存:
{
"registry-mirrors": ["https://registry.docker-cn.com"]
}
这是一个json格式的文件。
注意,有一些docker插件如nvidia-docker等安装的时候也会要求修改这个文件,所以记得随时查看这个文件的内容并做相应的调整。
其实这里应该重启一下docker服务才能让服务生效的,但是我们的设置还没做完,所以dwSun犯懒,就跟下次一起弄了。
免sudo使用
到这里,还是不能愉快的使用,因为docker的cli跟dameon通信用的socket文件他的所有权属于docker组,而当前用户不在docker组里面,所以只能sudo才能使用docker。啥,不明白dwSun这里写了个啥,没关系,跟着操作就行了。
将用户加入 docker group 内。然后退出并重新登录。
sudo gpasswd -a ${USER} docker
如果你跟dwSun一样比较懒,那么执行到这里然后直接
sudo reboot
就好了,可以安全的忽略后面的东西。
重启 docker 服务
sudo service docker restart
切换当前会话到新 group 或者重启 X 会话
newgrp - docker
OR
pkill X
OR
ctrl alt backspace
注意,最后一步是必须的,否则因为 groups 命令获取到的是缓存的组信息,刚添加的组信息未能生效,所以 docker images 执行时同样有错。
测试
都弄好了,做个测试吧:
docker run hello-world
如果你的终端里面有hello world输出和一些奇奇怪怪但明显不是错误的提示,那么恭喜你,docker安装完成。
如果是服务器操作,有可能出现重启之后ssh登录不上的情况,必须要到机器上登录一下才能用远程ssh登录,反正我碰到了。查了很久也没看明白是为啥,也许是docker的安装修改了iptables的设置,可以试试下面的操作让iptable允许ssh的连接:
iptables -A INPUT -p tcp --dport ssh -j ACCEPT
参考
阿里docker参考文档: https://yq.aliyun.com/articles/110806
docker的安装和简单配置的更多相关文章
- CentOS双机中Docker下安装Mysql并配置互为主从模式
CentOS双机中Docker下安装Mysql并配置互为主从模式 目录 1.搜索镜像... 1 2.拉取镜像... 1 3.绑定端口: 1 4.配置文件(修改/etc/mysql/my.cnf文件): ...
- <转载> FreeNAS的安装和简单配置 http://freenas.cn/?p=342
前些日子在公司搭了一个模拟生产环境的平台.由于是测试环境,资源有限只能使用虚拟机实现,所以存储这块就想到了使用FreeNAS.很早以前玩儿过几次,当时是生产环境需要上存储设备,经过对比还是选择的更可靠 ...
- Keepalived 安装与简单配置
Keepalived 安装与简单配置 http://sivxy.lofter.com/post/1d21ebb9_7e15000
- Linux下的GitHub安装与简单配置教程 ~ 转载
Linux下的GitHub安装与简单配置教程 1.GitHub简介 Git是一个分布式版本控制系统,与其相对的是CVS.SVN等集中式的版本控制系统. 2.Git的安装 1)安装Git a.查看与 ...
- Manjaro安装后简单配置
一个相见恨晚的 Linux 操作系统 Manjaro 到底有多受欢迎? DistroWatch是一个包含了各种Linux发行版及其他自由/开放源代码的类Unix操作系统. (如OpenSolaris. ...
- Docker的安装及加速器配置
简介 Docker是一个开源项目 ,其主要目标是实现轻量级的操作系统虚拟化解决方案.Docker的基础是Linux容器(LXC)等技术.在LXC的基础上Docker进行了进一步的封装,让用户不需关心容 ...
- lnmp源码安装以及简单配置
nginx 软件: a: openssl-1.0.1r.tar.gz tar zxf openssl-1.0.1r.tar.gz b: pcre-8.32.tar.gz tar zxf openssl ...
- python的IDE(pycharm)安装以及简单配置
使用IDE的好处 界面更友好,看起来更舒服 智能提示功能很赞,大大提高开发效率 pycharm的安装过程 去pycharm官网下载安装包,请下载专业版,建议不要去网上下载汉化版 点击安装包一直下一步即 ...
- 1、Jenkins的安装与简单配置
Jenkins安装 1.安装Jenkins之前先部署安装java环境(java环境安装另外参考安装文档) 注意:Jenkins 需要运行 Java 5以及以上的版本. 安装环境:CentOS7.3+J ...
随机推荐
- 创建一个dynamics 365 CRM online plugin (七) - plugin当中的Impersonation角色
我们之前创建的plugin都是使用default的 run in User's Context. 理解就是使用正在登陆的security context用户信息 那有个问题,如果当前用户的securi ...
- gcc 常用指令
gcc hello.c 直接编译默认输出 a.out可执行文件 gcc hello.c -o hello 生成名字为hello的可执行文件 gcc hello.c -o hello -Wa ...
- Where 与 Having
WHERE在数据分组前进行过滤,HAVING在数据分组后过滤. HAVING可以对检索(或计算)出的结果过滤,WHERE则不行. WHERE.聚合函数.HAVING在from后面的执行顺序:WHERE ...
- 位(bit)、字节(byte)、字符、编码之间的关系
1.位: 数据存储的最小单位.每个二进制数字0或者1就是1个位: 2.字节: 8个位构成一个字节:即:1 byte (字节)= 8 bit(位): 1 KB = 1024 B(字节): 1 MB = ...
- MySQL面试题中:主从同步的原理
主从同步的原理:1.主库上面有一个IO线程,从库上有一个IO线程和一个SQL线程,从库中的IO线程负责从主库读取binlog,并写入从库的中继日志:SQL线程负责读取并执行中继日志中的binlog,转 ...
- 关于使用format()方法格式化字符串,读这一篇就够了!
从Python 2.6开始,又出现了另外一种格式化字符串的方法——format()方法.format()方法是字符串众多方法中的一个,调用这个方法时要使用点操作符(.),该方法返回一个格式化好的字符串 ...
- jmeter问题
1.使用jmeter传入json参数报错 具体场景:使用python+request执行接口测试,正常:把python的参数直接复制,使用jmeter执行接口测试,提示json格式错误. {...,& ...
- FuzzScanner 信息收集小工具
前言: 该工具集成了各种大牛的工具,比如子域名发现,目录扫描,nmap端口扫描,c段地址查询,端口指纹,以及waf查询 00X1: 安装不推荐git安装,首先直接githup脱下来:git clone ...
- HTML+CSS 对于英文单词强制换行但不截断单词的解决办法
如何处理长的单词和链接(强制换行,连接符,省略号等) 我们在前端开发中经常会遇到一些很长的文本串从它的容器中溢出,例如: 通过这样一段css可以有效解决这种问题: .dont-break-out { ...
- Flask即插视图与tornado比较
由于公司使用了Tornado框架和Flask框架,之前一直使用的都是Flask框架,已经对url下面紧跟着视图的写法很固执.刚开始接触Tornado框架,对于其url和视图分开的写法思想上无法转变.今 ...