Docker常用操作

news2024/12/4 0:50:37

1、单机(非docker)启动java程序:nohup java -jar springbootstudy.jar

2、启动docker:service docker start

      (构建好以后,就不需要了:docker build -f Dockerfile  -t springboot-jar .)
      (构建好以后,就不需要了:docker build -f Dockerfilelog  -t springboot-log-jar .)

3、启动docker里面的容器: 

-P: 随机端口映射,容器内部端口随机映射到主机的端口

-p: 指定端口映射,格式为:主机(宿主)端口:容器端口


docker run -p 8082:8082 -d springboot-jar (指定端口)

    测试: http://172.19.211.109:8082/springbootstudy/hello
    
如果是,docker run -p 8001:8082 -d springboot-jar (指定端口)
    
           http://172.19.211.109:8001/springbootstudy/hello

docker run -p 9096:9096 -d springboot-log-jar

    测试: http://172.19.211.109:9096/hellolog

sh get-docker.sh
sudo service docker start

  docker:
  sudo systemctl status docker
  换成下面这样
  sudo /etc/init.d/ docker status
  或者
  sudo service docker status
  
4、docker ps 列出所有在运行的容器信息

5、ubtune 本机操作,查找日志: find . -name 'spring.log' -ls

6、查看docker中容器日志:docker logs -f -t --tail 100  31d1ed582afb (容器id)
    
    2023-04-22T15:41:30.076856077Z 2023-04-22 [http-nio-9096-exec-1] DEBUG com.atguigu.springboot.HelloController - hello,debug
    2023-04-22T15:41:30.077217839Z 2023-04-22 [http-nio-9096-exec-1] INFO  com.atguigu.springboot.HelloController - hello info
    2023-04-22T15:41:30.077752886Z 2023-04-22 [http-nio-9096-exec-1] WARN  com.atguigu.springboot.HelloController - hello warn
    2023-04-22T15:41:30.078258278Z 2023-04-22 [http-nio-9096-exec-1] ERROR com.atguigu.springboot.HelloController - hello error
    2023-04-22T15:41:30.087428991Z 2023-04-22 [http-nio-9096-exec-1] ERROR com.atguigu.springboot.HelloController - exeption str

7、 停止docker容器: docker stop 31d1ed582afb

8、删除image id :  docker rmi 7b96f5b4eb19 (如果构建过容器,提示删不掉)
                        Error response from daemon: conflict: unable to delete 7b96f5b4eb19 
                        (must be forced) - image is being used by stopped container a983740aebc5

                     docker rmi -f 7b96f5b4eb19 强制

9、数据卷挂载

VOLUME /tmp
VOLUME /spring/log

定义了一个log的持久化存储,这样SpringBoot应用在容器里运行时,我们可以用命令行进入容器内部,查看log文件夹下的日志文件。

在SpringBoot应用的application.properties配置文件里,设置日志文件的输出目录为/spring/log

使用下面的命令行进入镜像:

docker exec -it 56b861aff898  /bin/sh

   (56b861aff898 为 64位的SHA256字符串前面12位)

这样就在Docker镜像里查看SpringBoot应用运行时生成的日志文件:

(ctrl + D  退出)

参考链接:运行在Docker里的SpringBoot应用,如何查看记录在文件系统的日志 - 腾讯云开发者社区-腾讯云 (tencent.com)

10、在 Docker 1.10 之前,图像id是随机的,但从那时起,它们是使用哈希(当前为 SHA256 
    确定性地生成的。每个图像层都有一个摘要,它是其内容的哈希。
     图像 ID 是一个不同的摘要,从配置中散列 - 其中包括其层的摘要。
     要识别文件的唯一性,就是摘要算法。

11、 md5sum spring-boot-log.jar, sha256sum spring-boot-log.jar。 校验文件完整性;

12、从容器内拷贝文件到主机上
• 容器→主机
• docker cp 容器ID:容器内路径 目的主机路径

docker cp 7c4a8204eeb7:/spring/log/spring.log /usr/local

13、从宿主机拷贝到容器:

docker cp /usr/local/test.log 7c4a8204eeb7:/root

 进入容器查看:docker exec -it 7c4a8204eeb7 /bin/sh

 14、容器导出导入:

导出:docker export 7c4a8204eeb7 > abc.tar.gz

解压:tar -xvf abc.tar.gz

 

导入:

 参考:docker镜像的导入导出_docker__c G-DevPress官方社区 (csdn.net)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/457597.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

确定因果随机森林的树木数量 the number of trees

前言 推断因果性和分析异质性是统计学家在处理混杂任务中的圣杯。传统且主流的方法有:倾向性评分、分层分享、比例风险模型等。新的方法也有很多,代表就是:因果随机森林。这种算法,浅看难度一般,深入探索发现坑还是很多的。这篇博客不对算法做深入探讨,仅仅是我在阅读文…

Hudi数据湖技术之快速体验

目录 1 编译 Hudi1.1 第一步、Maven 安装1.2 第二步、下载源码包1.3 第三步、添加Maven镜像1.4 第四步、执行编译命令1.5 第五步、Hudi CLI测试 2 环境准备2.1 安装HDFS2.2 安装Spark 3.x 3 spark-shell 使用3.1 启动spark-shell3.2 模拟数据3.3 插入数据3.4 查询数据3.5 表数据…

TVM: An Automated End-to-End Optimizing Compiler for Deep Learning

https://www.usenix.org/conference/osdi18/presentation/chen 文章目录 TVM: An Automated End-to-End Optimizing Compiler for Deep Learning引言1. 简介2. 总览3. 优化计算图4. 生成张量运算4.1 张量表达式和调度空间4.3 嵌套并行与协作4.3 张量化4.4 显式内存延迟隐藏 5 .…

2023年-测试工程师面试题(前期面试的题目)

背景:小型电商公司,薪资:8-11k,职位:测试工程师,学历:本科 打开微信小程序“casa品集”,找出该小程序存在哪些bug? 并列出「商品详情页」的测试用例A,B两张表&#xff0c…

[Golang] Go语言基础一知半解??这些你容易忽视的知识点(第一期)

😚一个不甘平凡的普通人,致力于为Golang社区和算法学习做出贡献,期待您的关注和认可,陪您一起学习打卡!!!😘😘😘 🤗专栏:算法学习 &am…

液压控制系列之活塞位置测量(带原点标定功能)

液压轴位置控制详细内容请参看下面博客文章: 液压轴位置闭环控制(比例伺服阀应用)_RXXW_Dor的博客-CSDN博客液压阀的基础知识请参看下面的博客文章:PLC液压控制系列之比例流量阀结构分析_RXXW_Dor的博客-CSDN博客比例流量阀液压同步控制的PID闭环调节可以参看下面这篇博文三…

生命周期引入

实例:mouted:当vue完成模板解析并把真实的DOM元素放入页面后调用mounted 生命周期: 又名:生命周期回调函数、生命周期函数、生命周期钩子是什么:vue在关键时刻帮我们调用的一些特殊名称的函数生命周期函数的名字不可更…

CEF与Qt 结合注意事项

默认情况下,CEF 是/MT,而Qt是/MD 那么,如果你没有去在意MT、MD选项,那么极大可能性,会遇到程序崩溃的问题,并且表象会误导你查明原因的方向。并且,更换多个IDE也无法查明原因。 例子 当加载网…

【Linux】Linux开发工具

Linux开发工具 前言Linux编辑器 --- vimvim长啥样vim的基本概念vim的配置 Linux编译器 --- gcc/g编译和链接预处理编译汇编链接 细🔒链接静态库和动态库 Linux调试器 --- gdbLinux项目自动化构建工具 --- make/Makefile依赖关系和依赖方法 上方工具的简单示例 前言 …

MyBatis(二)—— 进阶

一、详解配置文件 1.1 核心配置文件 官方建议命名为mybatis-config.xml&#xff0c;核心配置文件里可以进行如下的配置&#xff1a; <environments> 和 <environment> mybatis可以配置多套环境&#xff08;开发一套、测试一套、、、&#xff09;&#xff0c; 在…

c实例练习笔记(拓展)

本博文参考题目的地址看右边----》C技能树 我跟你说&#xff01;&#xff01;&#xff01;&#xff01;&#xff01;c语言有bool类型&#xff01;&#xff01;&#xff01;&#xff01;&#xff01;你是不是百度跟你说没有只有c才有&#xff1f; 是有的&#xff01;&#xf…

第六章 完善内核

函数调用约定简介 参数的传递方式&#xff1a;使用后栈来保存。 每个进程都有自己的栈&#xff0c;这就是每个内存自己的专用内存空间&#xff1b;保存参数的内存地址不用再花精力维护&#xff0c;已经有栈机制来维护地址变化了&#xff0c;参数在栈中的位置可以通过栈顶的偏移…

QMS-云质说质量 - 1 张小泉的质量危机

云质QMS原创 转载请注明来源 作者&#xff1a;王洪石 引言 百年老店的拍蒜质量门 最近张小泉拍蒜断刀事件&#xff0c;吸引了全民关注&#xff0c;虽然随后发布了“断刀召集令”&#xff0c;但从事件发生到后续拖沓且不专业的应对&#xff0c;张小泉肯定是“失蒜”了。 张小泉…

一篇终结synchronized

一&#xff1a;基本原理 Java对象在内存中由两部分组成 &#xff1a; 1 是成员变量 2 是对象头&#xff0c;以32位虚拟机介绍&#xff1a;此时对象头是64位&#xff0c;即8字节 其中32个字节代表 mark word 另外32个字节代表klass word分别是什么意思呢&#xff1f; 1 klass …

文心一言 VS chatgpt (12)-- 算法导论3.1 6~7题

六、证明&#xff1a;一个算法的运行时间为θ(g(n))当且仅当其最坏情况运行时间为O(g(n))&#xff0c;且其最好情况运行时间为Ω(g(n)) 。 文心一言&#xff1a; chatgpt&#xff1a; 要证明「一个算法的运行时间为θ(g(n))当且仅当其最坏情况运行时间为O(g(n))&#xff0c;且…

LeetCode213 打家劫舍 II 动态规划法

题目地址 https://leetcode.cn/problems/house-robber-ii/ 你是一个专业的小偷&#xff0c;计划偷窃沿街的房屋&#xff0c;每间房内都藏有一定的现金。这个地方所有的房屋都 围成一圈 &#xff0c;这意味着第一个房屋和最后一个房屋是紧挨着的。同时&#xff0c;相邻的房屋装…

【Hive实战】Windows下 IDEA DEBUG hiveMetastore hive2.3.9

Windows下 IDEA DEBUG hiveMetastore hive2.3.9 环境准备 编译好hive2.3.9源码&#xff0c;参考文档编译hive2.3.9源码准备好Mysql库&#xff0c;并手动创建schema&#xff0c;相关sql文件&#xff1a;hive-schema-2.3.0.mysql.sql和hive-txn-schema-2.3.0.mysql.sql。 启动…

SpringCloud --- Gateway服务网关

一、简介 Spring Cloud Gateway 是 Spring Cloud 的一个全新项目&#xff0c;该项目是基于 Spring 5.0&#xff0c;Spring Boot 2.0 和 Project Reactor 等响应式编程和事件流技术开发的网关&#xff0c;它旨在为微服务架构提供一种简单有效的统一的 API 路由管理方式。 二、为…

QT实现固高运动控制卡示波器

目录 一、固高示波器 二、基于QCustomPlot实现示波器 三、完整源码 一、固高示波器 固高运动控制卡自带的软件有一个示波器功能&#xff0c;可以实时显示速度的波形&#xff0c;可辅助分析电机的运行状态。但是我们基于sdk开发了自己的软件&#xff0c;无法再使用该功能&…

深度学习技巧应用8-各种数据类型的加载与处理,并输入神经网络进行训练

大家好&#xff0c;我是微学AI&#xff0c;今天给大家介绍一下深度学习技巧应用8-各种数据类型的加载与处理&#xff0c;并输入神经网络进行训练。在模型训练中&#xff0c;大家往往对各种的数据类型比较难下手&#xff0c;对于非结构化数据已经复杂的数据的要进行特殊处理&…