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* ...
随机推荐
- !学习笔记:前端测试 、前端调试、console 等
http://www.cnblogs.com/rubekid/p/4851988.html 你真的了解 console 吗 2014 http://www.codeceo.com/article/ja ...
- python——位运算之进制转化
>>> a=0b001100 >>> a 12 >>> b=0o001100 >>> b 576 >>> c= ...
- leetcode234
/** * Definition for singly-linked list. * public class ListNode { * public int val; * public ListNo ...
- mysql连接测试java脚本
JDBC.java import java.io.IOException; import java.io.InputStream; import java.sql.*; import java.uti ...
- linux学习资料收藏
http://blog.chinaunix.net/uid/10167808/abstract/1.html?year=2008 http://linux.linuxidc.com/ind ...
- ArcGIS自定义工具箱-清空工作空间
ArcGIS自定义工具箱-清空工作空间 联系方式:谢老师,135-4855-4328,xiexiaokui#qq.com 目的:删除工作空间里的要素类,栅格和独立表 使用方法: 例如"C:\ ...
- iOS app审核被拒申诉
提交申诉理由之后不需要点击“提交审核”按钮,否则按照重新提交算,需要重新排队,且申诉会不起作用.
- javascript实现文字逐渐显现
下面是文字逐渐显现的JS代码<pre id="wenzi"></pre><div style="display:none" id= ...
- FortiGate端口聚合配置
1.端口聚合(LACP)应用场景 该功能高端设备上支持,FortiGate60D.FortiGate90D和FortiGate240D等低端型号不支持. 1.在带宽比较紧张的情况下,通过逻辑聚合可以扩 ...
- JavaSE基础知识(5)—面向对象(5.3访问修饰符)
一.说明 访问修饰符可以用于修饰类或类的成员(属性.方法.构造器.内部类) 二.特点 名称 本类 本包 其他包的子类 其他包的非子类 private 私有的 √ × × × 缺省 默认 √ √ × ...