docker知识点杂记
最近重新梳理了一下docker的一些基本知识,简单做了下总结。以后会逐步补充。
1、查看系统内核版本,需要3.10以上
$ uname -r
2、下载docker
说明:centos安装docker比较简单,使用yum安装即可。ubuntu下如果实用apt-get的方式安装不会是最新版,可以之前帖子,里面做了详尽的讲解。
ubuntu:http://www.cnblogs.com/tianhei/p/7802064.html
centos:yum install docker
3、查看docker版本
$ docker -v
4、启动docker
$ service docker start
5、设置开机启动(可以不设置)
$ systemctl start docker $ systemctl enable docker
6、下载镜像
官方镜像:hub.docker.com
阿里云的docker仓库:dev.aliyun.com
例如:docker pull busybox
7、查看镜像
$ docker images
8、删除镜像
不能删除镜像的情况:
1)有容器使用镜像已经被创建
2)此镜像是其他镜像的父镜像
查看当前跑起来的镜像:
$ docker ps -a
查看镜像的信息:
$ docker inspect app:1.0 //app是镜像名,1.0是镜像版本
删除镜像:
$ docker rmi IMAGE_ID // IMAGE_ID 是image的唯一id
9、上传镜像
官方网站(缺点网速慢):docker hub
私有仓库(需要维护网速快):
上传到官方docker hub实例:
1)进入docker hub官网网站创建账号
2)docker login // 输入用户名密码
3)docker push carson/alpine // carson/alpine是镜像名
10、启动容器
$ docker -run -d -p : --restart=always --name registry -v /data/registry:/var/lib/registry registry:
说明:
dockcer run 创建容器
-d:创建后,进程启动到后台
-p:端口映射。前面宿主机,后面容器
--restart=always:有异常自动启动
--name:容器名字
-v:容器的目录映射
registry:2 : 要启动的镜像名字
11、docker的操作命令
run/create:创建
start:启动
stop/kill:停止
restart:重启
pause:暂停
unpause:恢复
logs:查看容器
stats:使用的容量等
top:看到容器跑了多少进程
port:端口映射信息
exec/attach:docker exec -it app bash //登录容器中 exit退出
diff:
inspect:查看容器详细信息
update:更新容器信息
例如:docker update -h //查看帮助
docker update -m 256m app //app这个容器使用内容更新到256m
cp:拷贝文件。宿主机和容器间
例如:docker cp app:/usr/share/nginx/html/index.html .
export:把容器保存到tar文件
import:把tar文件导出到镜像列表
rm:删除。-f强制
12、镜像与容器的关系
镜像是只读的,容器是执行起来的镜像。
容器之间有一样的文件是可共用的,省资源。
commit:把容器commit成镜像
docker commit -h
save:把镜像保存成tar文件
load:把镜像tar文件导入到镜像列表
history:查看镜像的操作历史
pull:下载镜像
search:查找镜像源
13、保留容器数据volume
默认的情况下,容器中的数据只有本次启动可见,如果容器重启数据不会保留。若想让数据持久化,需要使用volume参数来挂载一个本地路径以保留数据。
docker run -v把数据挂在到宿主机
容器间数据共享,相当于挂载:
例子:
第一个容器:docker run -d -v /web-data:/tmp:ro --name data-container demos
第二个容器:docker run -d --volumes-from data-container --name web-container domos
第三个容器:docker run -d --volumes-from data-container --name web-container-2 domos
14、dockerfile
dockerfile用于制作一个用户自定义的镜像。需要使用FROM、RUN、WORKDIR、CMD等语法格式进行编写。
dockerfile文件内容:
FROM centos: RUN yum -y install epel-release && \ yum -y install nginx && \ yum clean all EXPOSE CMD ["nginx","-g","deamon off;"]
制作docker镜像
$ docker build -t app .
15:、docker网络模式
nat(默认):每个容器有个网卡,每次启动都会给容器分配一个私有ip。每次启动ip会变
host:固定ip,跟主机ip相同,比较危险宿主机容易被攻击。docker run -d --name app --net=host nginx:1.11.1
container:两个容器使用一样的ip。docker run -it --name app --net:container:app1 app sh
none:不创建网络。
docker知识点杂记的更多相关文章
- Docker 使用杂记 - 最佳实践尝试 - 实战
目录 Docker 使用杂记 - 最佳实践尝试 - 实战 Docker简介 项目背景 内在原因 外在原因 基础镜像 需求 镜像维护者 工作文件夹 文件 ADD COPY 宗卷 命令 入口点 Docke ...
- docker知识点
1 安装 http://www.runoob.com/docker/centos-docker-install.html 2 dockerhub官网找到 emqttd 执行 docker pull ...
- docker 知识点汇总
目录 什么是 Docker Docker 简介 Docker 的特点 如何使用 Docker 镜像的常用操作 容器的常用操作 Docker 命令汇总 手工制作 java 镜像 使用 Dockerfil ...
- docker 知识点
docker 教程:http://www.runoob.com/docker/docker-tutorial.html docker 仓库地址:https://store.docker.com/ do ...
- Docker知识点总结
一. docker介绍: 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化.容器是完全使用沙箱机制,相互之间不 ...
- Docker知识点整理
目录 1. Docker简介 1.1 Docker是什么 1.2 在隔离的容器中运行软件 1.3 分发容器 2. Docker镜像 2.1 Docker镜像简介 2.2 Docker镜像常见操作 2. ...
- docker知识点扫盲
最近给部门同事培训docker相关的东西,把我的培训内容总结下,发到博客园上,和大家一起分享.我的培训思路是这样的 首先讲解docker的安装.然后讲下docker的基本的原理,最后讲下docker的 ...
- redis知识点杂记
最近梳理了一下redis的基本知识.本文会从redis的简单使用.redis的数据类型.redis持久化三个方面做简单阐述和总结. 一.Redis基本操作 1.key的规则 不能使用\n空格.其他都可 ...
- python知识点杂记2
1. 如果已经有一个list或者tuple,要调用一个可变参数怎么办?2. >>> nums = [1, 2, 3]3. >>> calc(*nums)4. 14* ...
随机推荐
- Linux 关机、重启 命令
重启命令:1.reboot2.shutdown -r now 立刻重启(root用户使用)3.shutdown -r 10 过10分钟自动重启(root用户使用) 4.shutdown -r 20:3 ...
- 序列化与反序列化之Kryo
序列化:把对象转换为字节序列的过程称为对象的序列化. 反序列化:把字节序列恢复为对象的过程称为对象的反序列化. 需要序列化的情况: 当你想把的内存中的对象状态保存到一个文件中或者数据库中时候: 当你想 ...
- python大法好——装饰器、生成器、迭代器
1.装饰器 1. 不能修改被装饰的函数的源代码 2. 不能修改被装饰的函数的调用方式 实现装饰器知识储备: 1 函数即“变量” 2 高阶函数 a:把一个函数名当做实参传给另外一个函数(不修改 ...
- python 实现统计ftp服务器指定目录下文件夹数目、文件数目及所有文件大小
本次主要为满足应用方核对上传到ftp服务器的文件是否缺漏. 主要要求:指定目录下,文件夹数目/文件数目/所有文件大小,类似Windows如下功能: 模块介绍: from ftplib import F ...
- 什么是python的全局解释锁(GIL)
GIL解决了Python中的什么问题? 为什么选取GIL作为解决方案? 对多线程Python程序的影响 为什么GIL还没有被删除? 为什么在Python 3 中GIL没有被移除? 如何处理Python ...
- 模拟器 Unable to execute simctl install Error 117
ios 模拟器 Unable to execute '"/usr/bin/xcrun" simctl install "/Users/tt/PAServer/scrat ...
- 深度学习原理与框架-Tfrecord数据集的读取与训练(代码) 1.tf.train.batch(获取batch图片) 2.tf.image.resize_image_with_crop_or_pad(图片压缩) 3.tf.train.per_image_stand..(图片标准化) 4.tf.train.string_input_producer(字符串入队列) 5.tf.TFRecord(读
1.tf.train.batch(image, batch_size=batch_size, num_threads=1) # 获取一个batch的数据 参数说明:image表示输入图片,batch_ ...
- phpstorm 不能自动打开上次的历史文件
问题产生的原因:可能是电脑非正常关机,导致phpstrom 无法正常关闭. 一开始我以为是配置上那里出现了问题,所以直接就把配置删除了,然后生成了默认配置.发现还是无法解决问题.然后一个个配置查阅过去 ...
- inline、block与inline-block
参考了一些资料集其他人的博客,梳理一下inline.block与inline-block三个概念. 高度 宽度 举例 block 在新行上开始 高度,行高以及顶和底边距都可控制 宽度缺省是它的 ...
- 微信公众号Java接入demo
微信公众号Java接入demo 前不久买了一台服务,本来是用来当梯子用的,后来买了一个域名搭了一个博客网站,后来不怎么在上面写博客一直闲着,最近申请了一个微信公众号就想着弄点什么玩玩.周末没事就鼓捣了 ...