容器

Docker基础命令

一个人想着一个人 提交于 2020-01-22 12:26:27
docker ps 列出所有在运行的容器信息 docker ps -a 列出所有的容器信息 docker ps -n 5 列出最近创建的5个容器信息 docker ps -a -q 列出所有创建的容器ID 创建以后台进程方式运行的容器: docker run -d ubuntu:15.10 /bin/sh -c "while true; do echo hello world; sleep 1; done“ 创建与容器交互的终端: docker run -i -t ubuntu:15.10 /bin/bash docker stop [ID或者名字] 停止容器 docker restart 重启 docker rm 删除 docker top 查看容器内运行的进程 docker inspect 返回一个 JSON 文件记录着 Docker 容器的配置和状态信息。 docker images 列出本地主机上的镜像 docker pull来取镜像到本地 docker search [镜像名:标签] 搜索仓库里的镜像 提交镜像: docker commit -m="has update" -a="runoob" e218edb10161 runoob/ubuntu:v2 docker pause CONTAINER # 暂停一个容器,方便 commit docker unpause

kubernetes之创建初始化容器

試著忘記壹切 提交于 2020-01-22 09:26:18
简介 此文讲述在应用容器运行之前如何使用初始化容器。 备注:此文档参考官方文档,并加以自己的理解。如有误导性的内容,请批评指正。 创建一个有初始化容器的Pod 创将一个Pod,该Pod中包含一个应用容器和初始化容器。在应用容器开始之前,初始化容器的初始化任务已经完成。文件名: init-containers.yaml apiVersion: v1 kind: Pod metadata: name: init-demo spec: containers: - name: nginx image: nginx ports: - containerPort: 80 volumeMounts: - name: workdir mountPath: /usr/share/nginx/html # These containers are run during pod initialization initContainers: - name: install image: busybox command: - wget - "-O" - "/work-dir/index.html" - http://kubernetes.io volumeMounts: - name: workdir mountPath: "/work-dir" dnsPolicy: Default volumes: -

Spring常见面试题总结(超详细回答)

走远了吗. 提交于 2020-01-22 09:10:26
1、Spring是什么? Spring是一个轻量级的IoC和AOP容器框架。是为Java应用程序提供基础性服务的一套框架,目的是用于简化企业应用程序的开发,它使得开发者只需要关心业务需求。常见的配置方式有三种:基于XML的配置、基于注解的配置、基于Java的配置。 主要由以下几个模块组成: Spring Core:核心类库,提供IOC服务; Spring Context:提供框架式的Bean访问方式,以及企业级功能(JNDI、定时任务等); Spring AOP:AOP服务; Spring DAO:对JDBC的抽象,简化了数据访问异常的处理; Spring ORM:对现有的ORM框架的支持; Spring Web:提供了基本的面向Web的综合特性,例如多方文件上传; Spring MVC:提供面向Web应用的Model-View-Controller实现。 2、Spring 的优点? (1)spring属于低侵入式设计,代码的污染极低; (2)spring的DI机制将对象之间的依赖关系交由框架处理,减低组件的耦合性; (3)Spring提供了AOP技术,支持将一些通用任务,如安全、事务、日志、权限等进行集中式管理,从而提供更好的复用。 (4)spring对于主流的应用框架提供了集成支持。 3、Spring的AOP理解: OOP面向对象,允许开发者定义纵向的关系

JAVA GUI布局管理器

纵然是瞬间 提交于 2020-01-22 08:01:22
边界布局管理器: a.布局方式:是把整个容器划分为五个部分。东西南北中,南北要贯通,中间最大 (不仅是中间的范围最大,权利也最大)当周边不存在的时候中间会占领周边,当中间不存在的时候周边不能占据中间 b.使用场景:不是用来直接放组件,而是用来放置子容器(中间容器)的 流布局管理器 : FlowFrame a.布局方式:是按从左往右,从上往下,由中间开始的方式依次排放组件,组件大小根据组件内容确定,组件的位置会随着容器大小的改变而改变 b.使用场景:用来放置组件,而不是用来放中间容器,流布局最好只做单行布局 网格布局管理器:GridLayout a.布局方式:按行列将整个容器划分为等大的,放u入的子容器如果与设置的数目不等,优先保证行改变列 b.使用场景:不是用来直接放组件,而是用来放置子容器(中间容器)的 JPanel 默认流布局管理器 JFrame默认边界布局管理器 通常我们采用嵌套布局,即首层容器采用一种布局中间容器根据需求使用另一种布局以此类推,这样发挥了各种布局管理器的优点! 来源: https://www.cnblogs.com/xjpu/p/6200527.html

DockerFile体系结构(保留字指令)

痴心易碎 提交于 2020-01-22 06:44:36
DockerFile体系结构(保留字指令) FROM :基础镜像,当前新镜像是基于哪个镜像的 MAINTAINER :镜像维护者的姓名和邮箱地址 RUN :容器构建时需要运行的命令 EXPOSE :当前容器对外暴露出的端口 WORKDIR :指定在创建容器后,终端默认登陆的进来工作目录,一个落脚点 ENV :用来在构建镜像过程中设置环境变量 ENV MY_PATH /usr/mytest 这个环境变量可以在后续的任何RUN指令中使用,这就如同在命令前面指定了环境变量前缀一样; 也可以在其它指令中直接使用这些环境变量, 比如:WORKDIR $MY_PATH ADD :将宿主机目录下的文件拷贝进镜像且ADD命令会自动处理URL和解压tar压缩包 COPY :类似ADD,拷贝文件和目录到镜像中。 将从构建上下文目录中 <源路径> 的文件/目录复制到新的一层的镜像内的 <目标路径> 位置 COPY src dest COPY ["src", "dest"] VOLUME :容器数据卷,用于数据保存和持久化工作 CMD :指定一个容器启动时要运行的命令 CMD容器启动命令 CND指令的格式和RUN 相似,也是两种格式: ●shell 格式: CMD <命令> ●exec格式: CID ["可执行文件”, “参数1", “参数2”..] .参数列表格式: CNO [“参数",“参数2”..]

Docker创建容器、启动、删除、重命名等常用命令

本秂侑毒 提交于 2020-01-22 04:07:58
#启动dockerfile建立镜像命令 docker bulid -t imagename . (使用该命令,dockerfile的名字必须为Dockerfile) /docker bulid -tag imagename . /docker bulid -tag imagename -f dockerfilename . (dockerfile的名字key不是Dockerfile) #创建容器命令: docker run --name XXX -d 93d3d9bd44ca(镜像id) docker run -it -v /data/xxx:/xxx(本地路径映射到容器里) -p 50299:50299 --name xxx 93d3d9bd44ca(镜像id) /bin/bash #启动容器命令: docker start 7bb8576fb75a(容器id) docker attach 7bb8576fb75a (进入容器) 使用这种方法,退出容器后容器会停止运行 docker exec -it 7bb8576fb75a /bin/bash 这种方式进入容器,退出容器会正常运行 #查看容器和镜像命令: docker ps -a 查看所有容器 docker images 查看所有镜像 #删除容器命令: 先停止容器:docker stop 7bb8576fb75a(容器id)

java---容器

泄露秘密 提交于 2020-01-22 01:20:15
J2SDK提供的容器API位于java.util包内。 当我们需要保持一组一样(类型相同)的元素的时候,我们应该使用一个容器来保存,数组就是这样一个容器。 那么,数组的缺点是什么呢? 数组一旦定义,长度将不能再变化。 然而在我们的开发实践中,经常需要保存一些 变长的数据集合 ,于是,我们需要一些能够 动态增长长度的容器 来保存我们的数据。而我们需要对数据的保存的逻辑可能各种各样,于是就有了各种各样的数据结构。 我们将数据结构在Java 中实现,于是就有了我们的集合框架。 区分 长度 存放类型 集合类 可变 引用类型 数组 固定 基本类型 +引用类型 1136:1个图,1个类,3个知识点,6个接口 1个图 1个类- --- Collections类 区别 Collection 是一个集合接口,它提供了对集合对象进行基本操作的通用接口方法 Collections 是针对集合类的一个包装类,它提供一系列静态方法以实现对各种集合的搜索、排序、线程安全化等操作 3个知识点--- For 、 Generic 、 Auto-bocing/unboxing 自动增强的 For Generic 泛型 起因:JDK1.4以前类型不明确 装入集合的类型都被当做Object对待。从而失去自己的实际类型 从集合中取出时往往需要转型,效率低,容易产生错误。 解决办法:在定义集合的时候同时定义集合中对象的类型

Docker容器硬盘热扩容操作记录

懵懂的女人 提交于 2020-01-22 01:08:52
前面已介绍了docker很多知识点的操作记录,今天这里梳理下docker容器空间扩展的操作。 默认情况下,物理机下创建的docker容器的空间是10G (虚拟机下创建的docker容器空间就是虚拟机的空间) 。在实际生产环境下,对docker容器进行热扩容(动态扩容)是非常重要的一个需求。 Docker容器动态扩展的优点: 1)不需要修改docker配置,不需要重启docker服务; 2)可以直接对运行中的容器进行动态扩展(只能增,无法缩); Docker容器动态扩展的条件: 1)docker所在宿主机分区的格式必须是ext2、ext3、ext4; 2)docker存储引擎必须是devicemapper 下面的操作均是在centos6下操作的: 宿主机分区的格式是ext4 [root@localhost ~]# df -hT Filesystem Type Size Used Avail Use% Mounted on /dev/sda3 ext4 193G 103G 80G 57% / tmpfs tmpfs 32G 0 32G 0% /dev/shm /dev/sda1 ext4 194M 79M 106M 43% /boot /dev/sda2 ext4 721G 136G 549G 20% /home 1)下载私有仓库里的镜像

Docker两种方式进入后台运行的容器

假如想象 提交于 2020-01-22 01:06:09
1、在启动容器的时候,有时候我们加了参数-d,这时容器自动进入后台运行。如果我们要进入容器,该怎么办?通常使用docker attach命令和nsenter工具。 2、docker attach是Docker自带的命令。 $ docker run -idt centos $ docker ps $ docker attach 9b930d9d1e20 $ docker attach cocky_carson 该命令有时候并不方便,因为他是同步的,若有多个用户attach到一个容器,一个窗口命令阻塞,其他窗口都无法执行。 3、nsenter命令:在util-linux包2.23版本后都有自带包含。nsenter可以访问另一个进程的名字空间。 是否安装nsenter,通过nsenter --version查看。 a.安装nsenter $ wget https://www.kernel.org/pub/linux/utils/util-linux/v2.24/util-linux-2.24.tar.gz $ tar -zxvf util-linux-2.24.tar.gz $ cd util-linux-2.24 $ ./configure --without-ncurses && make nsenter $ cp nsenter /usr/local/bin b