Docker -- 安全/部分命令/Daemon
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的更多相关文章
- 【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 ...
- Docker的学习--命令使用详解
使用命令查看一下docker都有那些命令: docker -h 你将得到如下结果: A self-sufficient runtime for linux containers. Options: - ...
- Docker - 常用基础命令
Docker命令分布 帮助信息 查看docker基本信息:docker info 查看docker版本信息:docker version 查看docker的所有命令及选项:docker --help ...
- Docker网络及命令
Docker常用命令 docker version #查看版本 docker search centos #搜索可用docker镜像 docker images 查看当前docker所有镜像 dock ...
- docker中的命令参数(小白常用)
1 docker run run是最常用的命令,他是docker creat和docker start命令的组合,创建容器并启动它.run的参数比较难理解的是-i 和-t 以及-d,分别说说这三个. ...
- Docker容器技术-命令进阶
一.基本命令 1.Docker布尔型选项 使用某选项但没有提供参数,等同于把选项设置为true,要改变它的值,唯一的方法是将其设置成false. 找出一个选项的默认值是true还是false: [ro ...
- 云计算 docker 容器使用命令
docker 使用命令: docker version 查看docker版本号 vi /etc/docker/daemon.json { "registry-mirrors": [ ...
- 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 ...
- docker入门 基础命令 docker安装
docker入门 在学一门新知识的时候,超哥喜欢提问,why?what?how? wiki资料 什么是docker Docker 最初是 dotCloud 公司创始人 Solomon Hykes ...
随机推荐
- win下搭建python3+PyQt5+eric6环境
一.安装python3 1.下载python3的安装包,默认安装即可,注意勾选 Add Python 3.6 to Path .但是这样默认安装的路径太长,不太方便找到,可选择定制安装,自己定义安装路 ...
- KVM克隆 快照
原创博文安装配置KVM http://www.cnblogs.com/elvi/p/7718574.htmlweb管理kvm http://www.cnblogs.com/elvi/p/7718582 ...
- 深入讲解HashMap原理
1. HashMap概述: HashMap是基于哈希表的Map接口的非同步实现.此实现提供所有可选的映射操作,并允许使用null值和null键.此类不保证映射的顺序,特别是它不保证该顺序恒久不变 ...
- Nginx负载均衡的优缺点
Nginx的优点是: 1.工作在网络的7层之上,可以针对http应用做一些分流的策略,比如针对域名.目录结构,它的正则规则比HAProxy更为强大和灵活,这也是它目前广泛流行的主要原因之一,Nginx ...
- mysql读写分离的操作动作依据(读写分离基本依据)
读的操作: 1.select 2.show 3.explain explain显示了MySQL如何使用索引来处理select语句以及连接表.可以帮助选择更好的索引和写出更优化的查询语句. 4.desc ...
- oracle和mysql几点差异对比
Oracle与mysql差异性总结 之前有个项目是用oracle数据库进行开发,需要把数据库改成mysql,遇到了一些地方需要注意的,就简单记了下来. 备注: 再把oracle转成mysql的时候,表 ...
- JAVA中静态修饰符static的学习(初学)
静态修饰符static,用于修饰类中的成员变量和成员函数. 用static修饰的成员变量也可叫做类变量. 什么时候使用静态 什么时候定义静态成员变量? 当对象中出现共享数据时,将该数据定义为静 ...
- Java二分法
public class Dichotomy { //定义查找次数 static int count = 0; public static void main(Str ...
- Jarvis OJ - [XMAN]level1 - Writeup——简单shellcode利用
100分的pwn 简单查看一下,果然还是比较简单的 放到ida中查看一下,有明显的溢出函数,并且在函数中打印出了字符串的地址,并且字符串比较长,没有NX保护 所以我们很容易想到构造shellcode, ...
- hadoop单机版安装及基本功能演示
本文所使用的Linux发行版本为:CentOS Linux release 7.4.1708 (Core) hadoop单机版安装 准备工作 创建用户 useradd -m hadoop passwd ...