SpringCloud第一篇Docker基础
文章目录
- 一、常见命令
- 二、数据卷
- 三、数据挂载
- 四、自定义镜像
- 五、网络
一、常见命令
Docker最常见的命令就是操作镜像、容器的命令,详见官方文档: https://docs.docker.com/

需求:
在DockerHub中搜索Nginx镜像,查看镜像的名称

docker pull nginx
拉取Nginx镜像
查看本地镜像列表
docker images
创建并运行Nginx容器
docker run -d --name nginx -p 80:80 nginx
查看容器
docker ps
docker ps -a
停止容器
docker stop nginx
再次启动容器
docker start nginx
进入Nginx容器
docker exec -it nginx bash
#退出容器
exit
删除容器
docker rm mysql
docker rm -f mysql
二、数据卷
数据卷(volume)是一个虚拟目录,是容器内目录与宿主机目录之间映射的桥梁。


三、数据挂载
查看容器是否与宿主机挂载
docker inspect 容器名
Mounts目录下为挂载信息


docker inspect mysqldocker run -d \--name mysql \-p 3306:3306 \-e TZ=Asia/Shanghai \-e MYSQL_ROOT_PASSWORD=123 \-v /root/mysql/data:/var/lib/mysql \-v /root/mysql/init:/docker-entrypoint-initdb.d \-v /root/mysql/conf:/etc/mysql/conf.d \mysql
四、自定义镜像
镜像就是包含了应用程序、程序运行的系统函数库、运行配置等文件的文件包。构建镜像的过程其实就是把上述文件打包的过程。



更新详细语法说明,请参考官网文档: https://docs.docker.com/engine/reference/builder
案例:
我们可以基于Ubuntu基础镜像,利用Dockerfile描述镜像结构
# 指定基础镜像
FROM ubuntu:16.04
# 配置环境变量,JDK的安装目录、容器内时区
ENV JAVA_DIR=/usr/local
# 拷贝jdk和java项目的包
COPY ./jdk8.tar.gz $JAVA_DIR/
COPY ./docker-demo.jar /tmp/app.jar
# 安装JDK
RUN cd $JAVA_DIR \ && tar -xf ./jdk8.tar.gz \ && mv ./jdk1.8.0_144 ./java8
# 配置环境变量
ENV JAVA_HOME=$JAVA_DIR/java8
ENV PATH=$PATH:$JAVA_HOME/bin
# 入口,java项目的启动命令
ENTRYPOINT ["java", "-jar", "/app.jar"]
也可以直接基于JDK为基础镜像,省略前面的步骤:
# 基础镜像
FROM openjdk:11.0-jre-buster
# 拷贝jar包
COPY docker-demo.jar /app.jar
# 入口
ENTRYPOINT ["java", "-jar", "/app.jar"]
五、网络
默认情况下,所有容器都是以bridge方式连接到Docker的一个虚拟网桥上:

加入自定义网络的容器才可以通过容器名互相访问,Docker的网络操作命令如下:

相关文章:
SpringCloud第一篇Docker基础
文章目录 一、常见命令二、数据卷三、数据挂载四、自定义镜像五、网络 一、常见命令 Docker最常见的命令就是操作镜像、容器的命令,详见官方文档: https://docs.docker.com/ 需求: 在DockerHub中搜索Nginx镜像,查看镜像的名称 …...
从零开始学习PX4源码3(如何上传官网源码到自己的仓库中)
目录 文章目录 目录摘要1.将PX4源码上传至腾讯工蜂2.从腾讯工蜂克隆源码到本地ubuntu3.如何查看自己源码的版本信息 摘要 本节主要记录从零开始学习PX4源码3(如何上传官网源码到自己的仓库中)及如何查看PX4的固件版本信息,欢迎批评指正! PX4源码版本V1.…...
Docker Compose 启动容器例子
Docker Compose 启动容器例子 Docker Compose 文件 (docker-compose.yml) version: 3.8services:web:image: nginx:latestports:- "8080:80"volumes:- ./html:/usr/share/nginx/htmlnetworks:- webnetdb:image: mysql:latestenvironment:MYSQL_ROOT_PASSWORD: exam…...
守护服务之门:Eureka中分布式认证与授权的实现策略
守护服务之门:Eureka中分布式认证与授权的实现策略 引言 在微服务架构中,服务间的通信安全至关重要。Eureka作为Netflix开源的服务发现框架,虽然本身提供了服务注册与发现的功能,但并不直接提供认证与授权机制。为了实现服务的分…...
核密度估计KDE和概率密度函数PDF(深入浅出)
目录 1. 和密度估计(KDE)核密度估计的基本原理核密度估计的公式核密度估计的应用Python中的KDE实现示例代码 结果解释解释结果 总结 2. 概率密度函数(PDF)概率密度函数(PDF)是怎么工作的:用图画…...
免开steam 脱离steam 进行游戏的小工具
链接:https://pan.baidu.com/s/1k2C8b4jEqKIGLtLZp8YCgA?pwd6666 提取码:6666 我们只需选择游戏根目录 然后输入AppID 点击底部按钮 进行就可以了 关于AppID在:...
深度学习--系统配置流程
Win10系统配置双系统Ubuntu18.04 深度学习台式服务器自装练手1.win10磁盘管理2.下载系统镜像制作U盘3.系统安装4. 安装后的系统设置工作5.配置CUDA环境CUDNN安装 深度学习台式服务器自装练手 写在最前 CUDA最高支持11.4 显卡3060 1.win10磁盘管理 首先对原有磁盘进行分区整理…...
把Docker的虚拟磁盘文件移动到别的盘符
今天清理C盘空间,发现一个很大的文件 ext4.vhdx 足有 15G 之多,发现这个是Docker的虚拟磁盘文件,于是在网上找到移到它的办法,使用 PowerShell 执行下面命令 查看Docker状态和版本 wsl -l -v 关闭Docker服务 wsl --shutdown …...
Oracle 19c RAC 心跳异常处理
客户机房异常断电后,启动19c集群报错如下 2024-07-05 17:43:27.934 [GIPCD(5964292)]CRS-42216: No interfaces are configured on the local node for interface definition en3(:.*)?:100.100.100.0: available interface definitions are [en0(:.*)?:10.88.0.…...
微信小程序引入自定义子组件报错,在 C:/Users/***/WeChatProjects/miniprogram-1/components/路径下***
使用原生小程序开发时候,会报下面的错误, [ pages/button/button.json 文件内容错误] pages/button/button.json: [“usingComponents”][“second-component”]: “…/…/components/second-child/index”,在 C:/Users/***/WeChatProjects/m…...
【图解大数据技术】流式计算:Spark Streaming、Flink
【图解大数据技术】流式计算:Spark Streaming、Flink 批处理 VS 流式计算Spark StreamingFlinkFlink简介Flink入门案例Streaming Dataflow Flink架构Flink任务调度与执行task slot 和 task EventTime、Windows、WatermarksEventTimeWindowsWatermarks 批处理 VS 流式…...
启动完 kubelet 日志显示 failed to get azure cloud in GetVolumeLimits, plugin.host: 1
查看 kubelet 日志组件命令 journalctl -xefu kubelet 文字描述问题 Jul 09 07:45:17 node01 kubelet[1344]: I0709 07:45:17.410786 1344 operation_generator.go:568] MountVolume.SetUp succeeded for volume "default-token-mfzqf" (UniqueName: "ku…...
C语言基础and数据结构
C语言程序和程序设计概述 程序:可以连续执行的一条条指令的集合 开发过程:C源程序(.c文件) --> 目标程序(.obj二进制文件,目标文件) --> 可执行文件(.exe文件) -->结果 在任何机器上可以运行C源程序生成的 .exe 文件 没有安装C语言集成开发环境,不能编译C语言程…...
【超万卡GPU集群关键技术深度分析 2024】_构建10万卡gpu集群的技术挑战
文末有福利! 1. 集群高能效计算技术 随着大模型从千亿参数的自然语言模型向万亿参数的多模态模型升级演进,超万卡集群吸需全面提升底层计算能力。 具体而言,包括增强单芯片能力、提升超节点计算能力、基于 DPU (Data Processing Unit) 实现…...
RuntimeError: CUDA error: invalid device ordinal
RuntimeError: CUDA error: invalid device ordinal 报错分析:可能原因1:设置CUDA_VISIBLE_DEVICES的问题解决办法: 可能原因2:硬件或驱动原因解决方法: 参考资料 报错分析: 如果你在运行代码时报错&#…...
如何在Qt中添加文本
在Qt中添加文本通常涉及到使用几种不同的Qt控件,具体取决于你想要在何处以及以何种方式显示文本。以下是一些常见的方法: 1. 使用QLabel显示文本 QLabel是Qt中用于显示文本或图片的简单控件。你可以通过构造函数或setText()方法设置其显示的文本。 #i…...
解决打印PDF文本不清楚的处理办法
之前打印PDF格式的电子书,不清晰,影响看书的心情,有时看到打印的书的质量,根本不想看,今天在打印一本页数不多,但PDF格式的书感觉也不太清楚,我想应该有办法解决,我使用的是解决福昕…...
【Cesium开发实战】火灾疏散功能的实现,可设置火源点、疏散路径、疏散人数
Cesium有很多很强大的功能,可以在地球上实现很多炫酷的3D效果。今天给大家分享一个可自定义的火灾疏散人群的功能。 1.话不多说,先展示 火灾疏散模拟 2.设计思路 根据项目需求要求,可设置火源点、绘制逃生路线、可设置逃生人数。所以点击火…...
imx6ull/linux应用编程学习(16)emqx ,mqtt创建连接mqtt.fx
在很多项目中都需要自己的私人服务器,以保证数据的隐私性,这里我用的是emqx。 1.进入emqx官网 EMQX:用于物联网、车联网和工业物联网的企业级 MQTT 平台 点击试用cloud 申请成功后可得:(右边的忽略) 进入…...
Debezium系列之:验证mysql、mariadb等兼容mysql协议数据库账号权限
Debezium系列之:验证mysql、mariadb等兼容mysql协议数据库账号权限 一、数据库需要开启binlog二、创建账号和账号需要赋予的权限三、账号具有权限查看日志信息四、验证账号权限五、验证账号能否执行show master status六、验证数据库是否开启binlog一、数据库需要开启binlog …...
大学物理(上)-期末实战解析(5)——刚体力学核心:从转动惯量到角动量守恒的解题秘籍
1. 刚体力学入门:为什么转动惯量是解题钥匙 刚体力学是大学物理中最让人头疼的章节之一,尤其是当题目里出现"转动惯量"这个名词时,很多同学就开始手心冒汗。记得我第一次做这类题目时,盯着那个积分符号看了半小时愣是没…...
解决Windows远程桌面连接Ubuntu时xrdp闪退的配置技巧
1. 问题现象与排查思路 最近在帮同事配置Windows远程连接Ubuntu时遇到了一个典型问题:用Windows自带的远程桌面连接工具输入账号密码后,界面闪退无法进入桌面。这种情况在Ubuntu 18.04/20.04/22.04各版本中都可能出现,特别是使用GNOME桌面环…...
保姆级教程:用Davinci Configurator配置RH850F1KMS1双看门狗(AWO域与ISO域)
RH850F1KMS1双看门狗配置实战:从AWO域到ISO域的完整设计指南 在汽车电子开发领域,系统可靠性直接关系到行车安全。RH850F1KMS1作为瑞萨电子面向功能安全应用的高性能MCU,其独特的双看门狗架构(AWO域与ISO域)为系统提供…...
终极color库API参考手册:从入门到精通CSS颜色处理
终极color库API参考手册:从入门到精通CSS颜色处理 【免费下载链接】color 项目地址: https://gitcode.com/gh_mirrors/col/color color库是一个功能强大的JavaScript库,专为颜色转换和操作而设计,支持CSS颜色字符串,让开发…...
掌握MediaPipeUnityPlugin:从0到1的面部表情捕捉实践指南
掌握MediaPipeUnityPlugin:从0到1的面部表情捕捉实践指南 【免费下载链接】MediaPipeUnityPlugin Unity plugin to run MediaPipe 项目地址: https://gitcode.com/gh_mirrors/me/MediaPipeUnityPlugin 在Unity开发中,实现高精度面部表情捕捉常面临…...
成长规划师 - OpenClaw助力个人发展
每周进步1%,一年后你会比现在优秀37倍你有没有过这样的感觉: 一周忙忙碌碌,周五回顾时却想不起做了什么重要的事?年初立下的flag,到了年底发现一个都没实现?羡慕别人技能满满,自己却不知道从哪里…...
W5500 TCP客户端实战:从寄存器配置到网络调试助手,手把手打通第一个连接
W5500 TCP客户端开发实战:从硬件连接到数据交互的全流程解析 第一次接触W5500芯片时,我盯着数据手册里密密麻麻的寄存器描述发呆了半小时——网关地址、子网掩码、Socket模式...这些概念对嵌入式开发者来说既熟悉又陌生。本文将带你用最直观的方式理解W…...
解决QGIS 3.22.4编译后启动报错:从‘dll未加载’到‘plugins缺失’的实战排错记录
QGIS 3.22.4编译后启动报错的深度排查与解决方案 当你终于完成了QGIS 3.22.4的源码编译,满怀期待地双击qgis.exe时,却遭遇了"qgis_app.dll无法加载"的报错。这就像跑完马拉松却在终点线前摔倒一样令人沮丧。但别担心,这些问题其实都…...
LiuJuan20260223Zimage操作系统概念学习与实验环境
LiuJuan20260223Zimage:你的随身操作系统学习与实验环境 操作系统,听起来是不是有点高深莫测?内核、进程、内存、文件系统……这些概念在课本上总是显得抽象又遥远。很多朋友学操作系统原理时都有这样的困惑:理论都懂,…...
CoPaw自动化办公实战:Python脚本批量处理文档与邮件
CoPaw自动化办公实战:Python脚本批量处理文档与邮件 1. 为什么需要办公自动化? 每天重复处理大量文档和邮件,是不是让你感到疲惫不堪?根据统计,普通职场人平均每天要花费2-3小时在文档处理和邮件回复上。这些重复性工…...
