最近重新梳理了一下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知识点杂记的更多相关文章

  1. Docker 使用杂记 - 最佳实践尝试 - 实战

    目录 Docker 使用杂记 - 最佳实践尝试 - 实战 Docker简介 项目背景 内在原因 外在原因 基础镜像 需求 镜像维护者 工作文件夹 文件 ADD COPY 宗卷 命令 入口点 Docke ...

  2. docker知识点

    1  安装 http://www.runoob.com/docker/centos-docker-install.html 2  dockerhub官网找到 emqttd 执行 docker pull ...

  3. docker 知识点汇总

    目录 什么是 Docker Docker 简介 Docker 的特点 如何使用 Docker 镜像的常用操作 容器的常用操作 Docker 命令汇总 手工制作 java 镜像 使用 Dockerfil ...

  4. docker 知识点

    docker 教程:http://www.runoob.com/docker/docker-tutorial.html docker 仓库地址:https://store.docker.com/ do ...

  5. Docker知识点总结

    一. docker介绍: 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化.容器是完全使用沙箱机制,相互之间不 ...

  6. Docker知识点整理

    目录 1. Docker简介 1.1 Docker是什么 1.2 在隔离的容器中运行软件 1.3 分发容器 2. Docker镜像 2.1 Docker镜像简介 2.2 Docker镜像常见操作 2. ...

  7. docker知识点扫盲

    最近给部门同事培训docker相关的东西,把我的培训内容总结下,发到博客园上,和大家一起分享.我的培训思路是这样的 首先讲解docker的安装.然后讲下docker的基本的原理,最后讲下docker的 ...

  8. redis知识点杂记

    最近梳理了一下redis的基本知识.本文会从redis的简单使用.redis的数据类型.redis持久化三个方面做简单阐述和总结. 一.Redis基本操作 1.key的规则 不能使用\n空格.其他都可 ...

  9. python知识点杂记2

    1. 如果已经有一个list或者tuple,要调用一个可变参数怎么办?2. >>> nums = [1, 2, 3]3. >>> calc(*nums)4. 14* ...

随机推荐

  1. profile default

    SAPDBHOST = 10.199.0.26 j2ee/dbtype = hdb j2ee/dbname = ISD j2ee/dbhost = 10.199.0.26 dbs/hdb/dbname ...

  2. python grib气象数据可视化

    基于Python的Grib数据可视化           利用Python语言实现Grib数据可视化主要依靠三个库——pygrib.numpy和matplotlib.pygrib是欧洲中期天气预报中心 ...

  3. 分布式计算课程补充笔记 part 1.5

    ▶ 编写 SLURM 脚本 #!/bin/bash #SBATCH -J name # 任务名 #SBATCH -p gpu # 分区名,可为 cpu 或 gpu #SBATCH -N # 节点数 # ...

  4. git 第一次提交代码

    git init git add README.md git commit -m "first commit" git remote add origin https://git. ...

  5. Dubbo注册Zookepper服务的虚拟IP

    使用dubbo在zookepper上注册服务,使用dubbo的服务器IP为192.168.70.105 而在zookepper上显示服务提供者为 dubbo://202.102.110.203:808 ...

  6. C++11 constexpr常量表达式

    常量表达式函数 要求: 函数体内只有单一的return返回语句 例如: constexpr int data() { const int i=1; //含有除了return以外的语句 return i ...

  7. 【Django】关于上传图片遇到的问题

    今天测试上传图片的时候,发现一只报错说找不到文件:FileNotFoundError 通过检查路径的输出,发现首先在settings配置路径的时候有问题 MEDIA_ROOT=os.path.join ...

  8. 651. 4 Keys Keyboard复制粘贴获得的最大长度

    [抄题]: Imagine you have a special keyboard with the following keys: Key 1: (A): Print one 'A' on scre ...

  9. 529. Minesweeper扫雷游戏

    [抄题]: Let's play the minesweeper game (Wikipedia, online game)! You are given a 2D char matrix repre ...

  10. 150. Evaluate Reverse Polish Notation逆波兰表达式

    [抄题]: Evaluate the value of an arithmetic expression in Reverse Polish Notation. Valid operators are ...