Docker安装及基本使用方法
Docker安装
CentOS6上安装Docker
# yum -y install epel-release
# yum -y install docker-io
CentOS7上安装Docker
# yum -y install docker
启动Docker
# /etc/init.d/docker start
如果启动后无进程,日志中出现:
/usr/bin/docker: relocation error: /usr/bin/docker: symbol dm_task_get_info_with_deferred_remove, version Base not defined in file libdevmapper.so.1.02 with link time reference
解决办法:
# yum upgrade device-mapper-libs
Docker镜像管理
# docker pull centos //从docker.com获取centos镜像
# docker images //查看本地都有哪些镜像
# docker tag centos fansik //为centos镜像设置标签为fansik,再使用docker images查看会多出来一行,该行的image id和centos的一样
# docker search [image-name] //从docker仓库搜索docker镜像,后面是关键词
# docker run -t -i centos /bin/bash //用下载到的镜像开启容器,-i表示让容器的标准输入打开,-t表示分配一个伪终端,要把-i和-t放在镜像名字前面
当镜像发生修改后,我们可以把镜像提交重新生成一个新版本进行再本地
docker ps //查看运行的容器,加上-a选项可以查看没有运行的容器
docker rmi centos //用来删除指定得镜像,其中后面的参数可以是tag,如果是tag时,实际上删除的是该tag,只要改镜像还有其他tag,就不会删除该镜像,当后面的参数为镜像ID时,则会彻底删除整个镜像,连同所有标签一同删除
# docker tag centos centos:fansik创建一个REPOSITORY为centos,TAG为fansik的镜像
# docker rmi centos:fansik删除REPOSITORY为centos,TAG为fansik的镜像
Docker镜像使用容器生成新的镜像
- 进入之前创建的容器
- # docker ps -a;查看有哪些容器
- # docker start dad4e9070e2b启动id为dad4e9070e2b的容器(id可以简写为前几位)
- # docker exec -it dad4e9070e2b /bin/bash进入到容器中
- 里面可以直接使用yum安装需要的软件
- 运行docker run后,进入到该容器中,我们做一些变更,比如安装一些东西,然后针对这个容器进行创建的新的镜像
- docker commit -m "change somth" -a "somebody info" container_id(通过docker ps -a获取id) 新镜像名字
- 例如:docker commit -m "install httpd" -a "Aming" dad4e9070e2b aming/centos
- 这个命令有点像svn的提交,-m加一些改动信息,-a指定作者相关信息 dad4e9070e2b为容器id,再后面为新镜像的名字
Docker基于本地模板导入创建镜像
- 模块提取,可以直接在网上下载一个模块(可以复制链接然后直接wget)http://openvz.org/Download/templates/precreated
- 导入镜像的命令是:# cat ubuntu-15.10-x86_64-minimal.tar.gz | docker import - ubuntu
- 把现有镜像,导出为一个文件:# docker save -o fansik-httpd.tar httpd(仓库名或者镜像ID)
- 用备份文件恢复本地镜像:# docker load --input fansik-httpd.tar或者:# docker load < fansik-httpd.tar
- 把自己的镜像上传到dockerhub官方网站,但需要先注册用户docker push image_name
Docker安装及基本使用方法的更多相关文章
- Docker安装方法整理
目录 安装准备 在线安装 离线安装 Raspbian便捷脚本安装 卸载 安装准备: 卸载旧版本 较旧版本的Docker被称为docker或docker-engine.如果已安装,请卸载它们: sudo ...
- Docker安装Redis及Warning解决方法
虚拟机环境:VirtualBox 操作系统:CentOS 7 宿主机: Microsoft Windows 10 家庭中文版 Docker简介 Docker是一个轻量级容器技术.Docker直接运行在 ...
- 史上最全(全平台)docker安装方法!
代码狂魔 32019.01.05 22:46:46字数 4,426阅读 9,949 image.png 2017年2月8日,docker更新到1.13.1(更新日志),此后又分为了docker CE( ...
- docker 安装
Docker使用了一种叫AUFS的文件系统,这种文件系统可以让你一层一层地叠加修改你的文件,最底下的文件系统是只读的,如果需要修改文件,AUFS会增加一个可写的层(Layer),这样有很多好处,例如不 ...
- 【Howie玩docker】-docker安装
windows忽略,小苹果木有,所以咱只看ubuntu和centOS的吧! 参考书<Docker技术入门与实战> Ubuntu 14.04安装Docker Ubuntu 14.04版本官方 ...
- web项目docker化的两种方法
标题所讲的两种方法其实就是创建docker镜像的两种方法 第一种:启动镜像后进入容器中操作,将需要的软件或者项目移动到容器中,安装或者部署,然后退出即可 第二种:编写dockerfile,将需要的镜像 ...
- Docker安装和卸载
一:卸载旧版本 老版本的Docker被称为docker或docker-engine.如果安装了这些,请卸载它们以及相关的依赖项. $ sudo yum remove docker \ docker-c ...
- Docker学习实践 - Docker安装MySql数据库
Docker安装MySQL数据库 1.Ubuntu安装MySQL安装 (1)安装编译源码需要的包 sudo apt-get install make cmake gcc g++ bison libnc ...
- Docker安装rabbitmq
前面的文章中我们的docker已经安装好了,我的最终目的是用docker来安装rabbitmq,所以本文我记录一下我用docker安装rabbitmq的过程: 1.下载镜像(下载management的 ...
随机推荐
- 网易云课堂 OCP
数据库DBA任务: 管理数据库可用性 设计并创建数据库 管理物理结构 管理基于设计的存储 管理安全性 网络管理 备份与恢复 数据库调整与优化 关系型数据库(RDBMS) 多个表数据之间存在着关系 关系 ...
- 分享第一次使用ProcessOn心得
最近朋友推荐了我一款在线作图工具ProcessOn,感受使用了几天感觉确实很不错,在这里给大家分享一下! ProcessOn应该算的上是第一款完全免费在线作图工具,之前用过国外有类似的,不过都是付费的 ...
- OpenCV之响应鼠标(二):函数cvSetMouseCallback()和其副程式onMouse()的使用(OpenCV2.4.5)
每當滑鼠在視訊視窗介面點擊一下的時候,都會有固定三個動作 1.點擊(Click) 2.放開(Down)3.滑動(move) 因此,程式執行滑鼠在點擊的時候onMouse()都會連續跑三次,代表滑鼠在點 ...
- ognl表达式root中取值顺序
不加#,先从栈顶取,如果没有(是没有这个属性而不是这个属性没有值),再往下取. 如果栈顶和非栈顶的对象拥有同一个属性名称,想直接取非栈顶的属性可以在ognl中用#root[i].属性名,可以取到属性的 ...
- javascript预解析和作用域
JavaScript解析过程分为两个阶段: 一是:编译阶段.就是JavaScrip预解析阶段,在这个阶段JavaScript解析器将完成把JavaScript脚本代码转换到字节码; 二是:执行阶段.在 ...
- 创建MySQL数据库和表(一)
一.启动MySQL服务 1.在Windows操作系统的“服务”中启动,找到你安装MySQL的起的服务名称,我本机服务名的是MySQL. 2.在命令行中用命令启动: A.启动MySQL服务:net st ...
- 找不到库文件地址,修改修改方法framework
直接双击地址行修改
- AFNetworking vs ASIHTTPRequest vs MKNetworkKit
AFNetworking vs ASIHTTPRequest vs MKNetworkKit
- R.java不能自动更新
1. The type R is already defined. (很多时候我们在导入其他人的程序的时候,会遇到这个错误) 通常在project里有两个R.java,一个在src,一个在gen,通常 ...
- SVG 2D入门6 - 坐标与变换
坐标系统 SVG存在两套坐标系统:视窗坐标系与用户坐标系.默认情况下,用户坐标系与视窗坐标系的点是一一对应的,都为原点在视窗的左上角,x轴水平向右,y轴竖直向下:如下图所示: SVG的视窗位置一般是由 ...