【Docker 1,Java岗面试12家大厂成功跳槽

简介: 【Docker 1,Java岗面试12家大厂成功跳槽

6、使用docker version查看版本

7、启动hello world镜像

docker run hello-world

8、卸载

yum remove docker-ce docker-ce-cli containerd.io
rm -rf /var/lib/docker
rm -rf /var/lib/containerd

三、run的流程和docker原理


1、run的流程

2、docker原理

3、docker为何比VM快?

  1. Docker有着比虚拟机更少的抽象层
  2. docker利用的是宿主机的内核,VM需要的是Guest OS。

四、Docker镜像常用命令


1、基本命令

docker version

docker info

docker 命令 --help #万能命令

docker images

解释:

  1. REPOSITORY:镜像的仓库源
  2. TAG:镜像的标签
  3. IMAGE ID:镜像的ID
  4. CREATE:镜像的创建时间
  5. SIZE:镜像的大小

可选项

-a:列出全部的镜像

-q:只显示镜像的ID

2、搜索镜像

docker search

可选项

–filter-STATUS-3000 #搜索大于3000的

3、下载镜像

指定版本下载

docker pull 镜像名[:tag]

4、删除镜像

docker rmi -f 镜像id

五、docker容器常用命令


1、下载容器

docker pull centos

2、docker run [可选参数] image

参数说明:

  1. –name    容器名称
  2. -d             后台方式运行
  3. -it             使用交互方式运行,进入容器查看内容(例如:docker run -it centos /bin/bash)
  4. -p             指定容器的端口号 -p 8080:8080(主机端口:容器端口)

3、列出所有的运行的容器

docker ps [参数]

  1. -a               列出当前正在运行的容器
  2. -n               显示最近创建的容器
  3. -q               只显示容器的编号

例如:docker ps -aq      显示当前正在运行的容器的编号

4、退出容器

exit

5、删除容器

  1. docker rm 容器id                              不能删除正在运行的容器
  2. docker rm -f $(docker ps -a)             删除所有的容器
  3. docker ps -a -q|xargs docker rm       删除所有的容器

6、启动和停止容器

  1. docker start 容器id
  2. docker restart 容器id
  3. docker stop 容器id
  4. docker kill 容器id         强制停止

7、进入当前正在运行的容器

方式一:docker exec -it 容器id /bin/bash     进入容器后开启一个新的终端(常用)

方式二:docker attach 容器id                       进入容器当前正在执行的终端

8、从容器内拷贝文件到主机

docker cp 容器id:容器内路径 主机路径

例如:docker cp 容器id:/home/test.java /home

9、其它常用命令

(1)后台启动容器 -d

(2)查看日志命令

docker logs --help

显示指定行数的日志:

docker logs -tf --tail 10 容器id

-f:内容,,,-t:时间

例如:循环执行

docker run -d centos /bin/sh -c “while;do echo hello world;sleep 1;done”

相关文章
|
2天前
|
监控 Java 应用服务中间件
高级java面试---spring.factories文件的解析源码API机制
【11月更文挑战第20天】Spring Boot是一个用于快速构建基于Spring框架的应用程序的开源框架。它通过自动配置、起步依赖和内嵌服务器等特性,极大地简化了Spring应用的开发和部署过程。本文将深入探讨Spring Boot的背景历史、业务场景、功能点以及底层原理,并通过Java代码手写模拟Spring Boot的启动过程,特别是spring.factories文件的解析源码API机制。
14 2
|
7天前
|
存储 算法 Java
大厂面试高频:什么是自旋锁?Java 实现自旋锁的原理?
本文详解自旋锁的概念、优缺点、使用场景及Java实现。关注【mikechen的互联网架构】,10年+BAT架构经验倾囊相授。
大厂面试高频:什么是自旋锁?Java 实现自旋锁的原理?
|
13天前
|
存储 缓存 Oracle
Java I/O流面试之道
NIO的出现在于提高IO的速度,它相比传统的输入/输出流速度更快。NIO通过管道Channel和缓冲器Buffer来处理数据,可以把管道当成一个矿藏,缓冲器就是矿藏里的卡车。程序通过管道里的缓冲器进行数据交互,而不直接处理数据。程序要么从缓冲器获取数据,要么输入数据到缓冲器。
Java I/O流面试之道
|
9天前
|
存储 缓存 Java
大厂面试必看!Java基本数据类型和包装类的那些坑
本文介绍了Java中的基本数据类型和包装类,包括整数类型、浮点数类型、字符类型和布尔类型。详细讲解了每种类型的特性和应用场景,并探讨了包装类的引入原因、装箱与拆箱机制以及缓存机制。最后总结了面试中常见的相关考点,帮助读者更好地理解和应对面试中的问题。
32 4
|
10天前
|
存储 Java 程序员
Java基础的灵魂——Object类方法详解(社招面试不踩坑)
本文介绍了Java中`Object`类的几个重要方法,包括`toString`、`equals`、`hashCode`、`finalize`、`clone`、`getClass`、`notify`和`wait`。这些方法是面试中的常考点,掌握它们有助于理解Java对象的行为和实现多线程编程。作者通过具体示例和应用场景,详细解析了每个方法的作用和重写技巧,帮助读者更好地应对面试和技术开发。
45 4
|
15天前
|
存储 Java 开发者
成功优化!Java 基础 Docker 镜像从 674MB 缩减到 58MB 的经验分享
本文分享了如何通过 jlink 和 jdeps 工具将 Java 基础 Docker 镜像从 674MB 优化至 58MB 的经验。首先介绍了选择合适的基础镜像的重要性,然后详细讲解了使用 jlink 构建自定义 JRE 镜像的方法,并通过 jdeps 自动化模块依赖分析,最终实现了镜像的大幅缩减。此外,文章还提供了实用的 .dockerignore 文件技巧和选择安全、兼容的基础镜像的建议,帮助开发者提升镜像优化的效果。
|
20天前
|
算法 Java
JAVA 二叉树面试题
JAVA 二叉树面试题
14 0
|
Java Linux Docker
Java Spring Boot 2.0实战Docker容器与架构原理,视频与课件,基于Linux环境
Docker是最流行的开源容器引擎,Go语言开发,在互联网大规模集群、云计算、微服务等架构中广泛使用。本次课程一起学习Docker容器架构原理、如何基于Linux系统实战实战Docker容器,打包、发布、运行 Java Spring Boot 2.0应用。
10735 0
|
8天前
|
安全 Java 测试技术
Java并行流陷阱:为什么指定线程池可能是个坏主意
本文探讨了Java并行流的使用陷阱,尤其是指定线程池的问题。文章分析了并行流的设计思想,指出了指定线程池的弊端,并提供了使用CompletableFuture等替代方案。同时,介绍了Parallel Collector库在处理阻塞任务时的优势和特点。
|
4天前
|
安全 Java 开发者
深入解读JAVA多线程:wait()、notify()、notifyAll()的奥秘
在Java多线程编程中,`wait()`、`notify()`和`notifyAll()`方法是实现线程间通信和同步的关键机制。这些方法定义在`java.lang.Object`类中,每个Java对象都可以作为线程间通信的媒介。本文将详细解析这三个方法的使用方法和最佳实践,帮助开发者更高效地进行多线程编程。 示例代码展示了如何在同步方法中使用这些方法,确保线程安全和高效的通信。
21 9