Docker -- 终极指南
 1.安装过程 -- Docker -- docker pull 镜像 -- docker images 列出镜像
   -- docker run --rm -ti ubuntu /bin/bash 创建容器  (rm:进程退出即删除容器,用来测试)
   -- docker ps 查看容器 -- docker exec -ti name /bin/bash 进入容器  -- exit 退出
  
 2.Linux命名空间 UTS (UNIX Time-sharing System)
  *Docker核心解决的问题是利用LXC来实现类似VM的功能,
   从而利用更加节省的硬件资源提供给用户更多的计算资源。
   而LXC(Linux Container)所实现的隔离性主要是来自内核的命名空间,
   其中pid、net、ipc、mnt、uts 等命名空间将容器的进程、网络、消息、文件系统和hostname 隔离开
 
Docker -- 安全
  1.Docker run 命令执行后,Docker的具体实现
   * Docker run 命令初始化
   * Docker 运行 lxc -start 来执行run 命令
   * lxc -start 在容器中创建了一组namespace 和 control groups 。
    ①namespace: 隔离容器,每个容器都有独立的网络栈,因此容器间访问sockets需要指定容器的公网IP端口。
     ②cgroups:负责资源核算和限制, 提供CPU,内存,I/O和网络相关的指标,避免某种DOS攻击,支持多租户平台。
    
  2.Docker Daemon 以root权限执行时注意点
   * Docker允许与访问容器目录共享而不限制其访问权限的时候,Docker Daemon的控制权应该只给授权用户,
   * REST API支持unix sockets, 从而防止了cross-site-scripting 攻击
   * REST API的HTTP接口应该在可信网络或者VPN下使用。
   * 在服务器上单独运行Docker时,需要与其他服务隔离。
    ①容器以非特权用户运行。
    ②Apparmor, SELinux ,GRSEC 解决方案,可用于额外的安全层。
    ③可以使用其他容器系统的安全功能。
    
Docker 命令
 daemon:管理容器的后台进程,-d 参数运行后台进程。
 build :使用Dockerfile创建镜像  docker build -t  [options] path | url   [options:  --rm=true :构建后删除中间容器, --no-cache=false :不使用缓存]
 attach:与运行容器交互, 退出:ctrl+c/ ctrl-\(退出并显示堆栈信息) docker attach container
 diff  :列出文件中变化的文件和目录:docker diff container .
 events:打印指定时间内的容器的实时系统事件。
 import:导入远程文件或本地文件和目录。(远程): docker import http://example.com/example.tar     (本地使用-参数)sudo tar -c image.tar | docker import -imageapp
 export:将容器的系统文件打包成tar:  docker export containid > image.tar
 cp    :从容器中复制文件到指定目录。 docker cp containerID:path hostpath.
 login :登录registry服务器。  docker login [options] [server]
 inspect:收集容器和镜像的底层信息。 docker inspect container/image *容器实例的IP地址,*端口绑定列表, *特定端口映射的搜索, *收集配置的详细信息。
 kill  :停止容器的主进程 docker kill [options] container .
 rmi   :移除一个或多个image镜像 docker rmi image
 wait  :阻塞对容器的其他方法调用,直到容器停止后退出阻塞。docker wait containerID
 load  :从tar文件中载入镜像或仓库到STDIN. docker load -i load.tar
 save  :保存镜像为tar文件并发送STDOUT。 docker save imageid > appbox.tar。

Docker -- 安全/部分命令/Daemon的更多相关文章

  1. 【docker】docker启动、重启、关闭命令,附带:docker启动容器报错:docker: Error response from daemon: driver failed programming external connectivity on endpoint es2-node

    在关闭并放置centos 的防火墙重启之后[操作:https://www.cnblogs.com/sxdcgaq8080/p/10032829.html] 启动docker容器就发现开始报错: [ro ...

  2. Docker的学习--命令使用详解

    使用命令查看一下docker都有那些命令: docker -h 你将得到如下结果: A self-sufficient runtime for linux containers. Options: - ...

  3. Docker - 常用基础命令

    Docker命令分布 帮助信息 查看docker基本信息:docker info 查看docker版本信息:docker version 查看docker的所有命令及选项:docker --help ...

  4. Docker网络及命令

    Docker常用命令 docker version #查看版本 docker search centos #搜索可用docker镜像 docker images 查看当前docker所有镜像 dock ...

  5. docker中的命令参数(小白常用)

    1 docker run run是最常用的命令,他是docker creat和docker start命令的组合,创建容器并启动它.run的参数比较难理解的是-i 和-t 以及-d,分别说说这三个. ...

  6. Docker容器技术-命令进阶

    一.基本命令 1.Docker布尔型选项 使用某选项但没有提供参数,等同于把选项设置为true,要改变它的值,唯一的方法是将其设置成false. 找出一个选项的默认值是true还是false: [ro ...

  7. 云计算 docker 容器使用命令

    docker 使用命令: docker version 查看docker版本号 vi /etc/docker/daemon.json { "registry-mirrors": [ ...

  8. docker启动报错 docker: Error response from daemon: OCI runtime create failed: container_linux.go:348

    问题描述 doker启动时,报错:docker: Error response from daemon: OCI runtime create failed: container_linux.go:3 ...

  9. docker入门 基础命令 docker安装

    docker入门   在学一门新知识的时候,超哥喜欢提问,why?what?how? wiki资料 什么是docker Docker 最初是 dotCloud 公司创始人 Solomon Hykes ...

随机推荐

  1. 详解卷积神经网络(CNN)在语音识别中的应用

    欢迎大家前往腾讯云社区,获取更多腾讯海量技术实践干货哦~ 作者:侯艺馨 前言 总结目前语音识别的发展现状,dnn.rnn/lstm和cnn算是语音识别中几个比较主流的方向.2012年,微软邓力和俞栋老 ...

  2. Web应用与应用层协议

    Web应用与应用层协议 本篇博文中的主要参考文献是<计算机网络高级教程>,分别是吴功宜老先生和吴英教授合著.这部教程是我研究生老师所推荐的网络必读科目,由于该教程讲解的基础知识详细,但内容 ...

  3. 在.NET Core类库中使用EF Core迁移数据库到SQL Server

    前言 如果大家刚使用EntityFramework Core作为ORM框架的话,想必都会遇到数据库迁移的一些问题. 起初我是在ASP.NET Core的Web项目中进行的,但后来发现放在此处并不是很合 ...

  4. mysql复习秘籍

    mysql复习 一:复习前的准备 1:确认你已安装wamp 2:确认你已安装ecshop,并且ecshop的数据库名为shop 二 基础知识: 1.数据库的连接 mysql -u -p -h -u 用 ...

  5. Python学习之--socket

    1.Socket概述   网络上的两个程序通过一个双向的通信连接实现数据的交换,这个连接的一端称为一个socket.socket通常也称作"套接字",用于描述IP地址和端口,是一个 ...

  6. NOIP2017普及组初赛解析

    首发于订阅号 嗨编程,这是一个以嗨为目标的编程订阅号(仅仅是目标而已),扫码可关注,不定期更.

  7. 浅copy 与 深copy

    import copy names = ["zhangyang", 'guyun', 'xiangpeng', ['jack','tom'], 'xuliangchen'] nam ...

  8. eclipse中Cannot change version of project facet Dynamic Web Module to 2.5.

    Cannot change version of project facet Dynamic Web Module to 2.5.这个错误可能很多人都碰到过,这里网上查了一些资料,解决的问题.所以这里 ...

  9. Solr7使用Oracle数据源导入+中文分词

    安装目录假设为#solr_home,本文的#solr_home为apps/svr/solr 1. 在#solr_home/server/solr下新建文件夹,假设为mjd 2. 将#solr_home ...

  10. 从durable谈起,我是如何用搜索引擎抓住技术的关键字学习新姿势打开敏捷开发的大门

    ---又名我讨厌伸手党 我又把个人博客的子标题改为了 你可以在书和搜索引擎找到90%的问题的答案,为什么要问别人?剩下的10%或许没有答案,为什么要问别人? 这是由于最近在网上看到各种伸手,对于我这种 ...