一、安装

docker对内核版本是有要求的,反正建议用7以上的版本,少坑

如果需要卸载旧版本(凡是卸载删除操作都要谨慎!):

yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-selinux \
docker-engine-selinux \
docker-engine rm -rf /etc/systemd/system/docker.service.d # 删除原有镜像容器
# rm -rf /var/lib/docker # rm -rf /var/run/docker
安装方式1:
yum -y install docker-io
安装方式2(指定版本):

我用这种,因为很多地方配置和使用都对版本有要求

yum remove -y yum-utils
yum install -y yum-utils yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo # 这里会列出可安装的版本,按需选择安装
yum list docker-ce --showduplicates | sort -r yum install docker-ce-17.06.2.ce -y docker version
常规操作
# 启动
service docker start # 设置开机启动
chkconfig docker on
docker有个配置文件,路径是/etc/docker/daemon.json,每次修改后需要重启docker服务才能生效,下面记录一下我用到的配置项目:

镜像加速,配置了下载镜像速度很快

# xxx = 登录阿里云 容器镜像服务->镜像加速器-->加速器地址
{
"registry-mirrors": ["xxx"]
}

修改/dev/shm,容器的配置默认好像只有64M,当时跑了两个算法的程序就爆满了,所以就需要把它加大,要注意的就是这个配置对docker的版本也有要求

{
"default-shm-size": "30000M"
}

二、使用

在我看来其实就两个东西,镜像和容器,每次版本更新把服务做成镜像然后启动容器,想怎么组合就怎么组合,想开多少台服务就开多少台服务,升级回滚等各种骚操作,当然这些操作是需要编排管理工具来辅助完成的

找镜像
# 最简单也很常用的
docker search centos

附上装机必备

# 安装wget
yum -y install wget # service command not found
yum -y install initscripts # 安装阿里云yum源 mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo yum makecache

但一般情况下,能使用alpine的,我会优先选用alpine,10M都不到,构建速度贼快

除了docker search,更多的是直接在dockerhub上面寻找合适的镜像,附上地址http://www.dockerhub.com/,注意下大部分镜像有分官方和非官方,官方的肯定更安全可靠了,这个时候就要自己来判断是否适合在生产环境上运行了

镜像生成有两种:

  • Dockerfile(推荐,有记录有步骤,但可能会比较繁琐,看个人选择)
  • 直接Down下来的镜像或者commit做出来的镜像
常用命令:

docker build(Dockerfile构建),docker images,docker ps,docker ps -a,docker rm(删除容器),docker rmi(删除镜像),docker commit(打包容器成镜像),docker exec(进入容器)......

详细使用可以在菜鸟教程等比较好的编程网站查看

另外推荐使用阿里云的容器镜像服务辅助管理,我一直都在用

避坑指南
  • 容器不要用crontab
  • 其他坑后面文章继续记录

转载请注明博客出处:http://www.cnblogs.com/cjh-notes/

安装docker以及常规操作的更多相关文章

  1. Learn Docker(一)—软件安装与常规操作

    一.安装Docker Windows平台 在Windows10 X64专业版上可以直接下载Docker原生应用进行安装,在控制面板的程序与功能里启用Hyper-v,之后就可以运行docker程序啦. ...

  2. 关于docker--详解安装,常规操作,导入导出等(2017-3-29)

    测试环境 :CentOS 7.1 64位 目的:展示docker的常规使用(安装,常规操作,导入导出等) 其他:关于原理等请参考文章后面的延伸阅读,本文不做深入探讨,且方法不唯一 0x01 关于安装d ...

  3. 因为一个Docker问题,我顺手整理从安装到常用命令操作手册

    今天,自己写了一部分业务代码,是常规代码的另外一种方式,不能在公司的服务器上测试,就自己在PC端搭建了一套和公司集群一样的模板,因为公司的业务模块的测试有单独的服务器(这一块还是我很稀罕的),但是,第 ...

  4. Docker入门之安装与简单使用操作

    1.docker安装 #1.检查内核版本,必须是3.10及以上 uname -r #2.安装 yum -y install docker 2.docker简单使用 #1.启动docker system ...

  5. Ubuntu下安装Docker,及Docker的一些常用命令操作

    1.什么是 Docker         Docker 是一个开源项目,Docker 项目的目标是实现轻量级的操作系统虚拟化解决方案.         Docker 的基础是 Linux 容器(LXC ...

  6. 操作安装docker

    在本地建造起vue-cli服务 参考项目:https : //gitee.com/QiHanXiBei/myvue 在本地建造起一个django项目架构,通过/ hello能够打印出helloworl ...

  7. centos7下安装docker(14安装docker machine)

    之前我们做的实验都是在一个host上面的,其实在真正的环境中有多个host,容器在这些host上面启动,运行,停止和销毁,相关容器会通过网络相互通信,无论他们是否运行在相同的host上面. 对于这种歌 ...

  8. CentOSLinux安装Docker容器

    Docker 使用 环境说明 CentOS 7.3(不准确地说:要求必须是 CentOS 7 64位) 不建议在 Windows 上使用 Docker 基本概念 官网:https://www.dock ...

  9. 『现学现忘』Docker基础 — 13、通过脚本安装Docker

    Docker官方提供方便用户操作的安装脚本,用起来是非常方便.但是要注意的是,使用脚本安装Docker,是安装最新版本的Docker. 注意:不建议在生产环境中使用安装脚本.因为在生产环境中一定不要最 ...

随机推荐

  1. MyEclipse Derby 这么玩

    首先得把MYECLIPSE自带的JDK的DERBY数据库的JAR文件给导入工程,反正没事把几个都导进来,如下: derby.jar,derbyclient.jar,derbynet.jar,derby ...

  2. 对vuex分模块管理

    为什么要分模块: 由于使用单一状态树,应用的所有状态会集中到一个比较大的对象.当应用变得非常复杂时,store 对象就有可能变得相当臃肿.为了解决以上问题,Vuex 允许我们将 store 分割成模块 ...

  3. Django rest-framework框架-请求数据校验

    验证实例: class UserInfoSerializer(serializers.Serializer): title = serializer.CharField(error_messages= ...

  4. Advanced Installer 安装完成后,自动启动主程序。

    这个耗时2天,才研究测试通过.一定要记住了方法: =========================================================================== ...

  5. CI/CD持续集成小结

    一.概念 什么是devops,基于Gitlab从零开始搭建自己的持续集成流水线(Pipeline) https://blog.csdn.net/chengzi_comm/article/details ...

  6. 第五章、Django之模型层----多表查询

    目录 第五章.Django之模型层----多表查询 一.一对多字段增删改查 1.增 2.查 3.改 4. 删除 二.多对多的增删改查 1. 增 2. 改 3. 删 三.ORM跨表查询 四.正反向的概念 ...

  7. Ajax返回数据却一直进入error(已经解决)

    做asp.net项目  使用ajax $.ajax({ url: '../Music/Default2.aspx?Types=' + type + '&texts=' + text + '', ...

  8. 11_Redis_事务

    一:Redis 事务:目的为了进行Redis语句的批量化操作,不保证数据安全 Redis作为NoSQL数据库也同样提供了事务机制:在Redis中,MULTI/EXEC/DISCARD/这三个命令是我们 ...

  9. meta 中的属性viewport

    粘贴自:https://blog.csdn.net/u012402190/article/details/70172371 <meta name="viewport" con ...

  10. 【wlan】iw命令集合

    查看所连接的客户端的个数和信息 iw dev wlan0 station dump root@OpenWrt:~# iw dev wlan0 station dump Station e0:ac:cb ...