Docker学习自我总结(一)

article/2025/8/17 18:21:52

以下内容皆参考至狂神说docker学习视频

一、初识dockerfile

​ docker镜像创建时需要使用dockerfile,dockerfile相当于一个命令脚本,通过这个脚本可以生成镜像,镜像是一层一层的,脚本一个个的命令,每个命令都是一层!以下是一个较简单的dockerfile脚本例子

# 创建一个dockerfile文件, 名字可以随机
# 文件的内容 指定(大写) 参数
FROM centos
#匿名挂载
VOLUME ["volume01", "volume02"] 
#创建镜像成功打印
CMD echo "----end----"
#启动镜像时执行
CMD /bin/bash
# 这里的每一个命令都是镜像的一层!

​ 查看容器信息,可以在mounts关键字下面看到挂载信息

docker inspect 容器id

二、数据卷容器

​ 多个mysql同步数据!

在这里插入图片描述

多个mysql实现数据共享

docker run -d -p 3344:3306 -v /etc/mysql/conf.d -v /var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 --name mysql01 mysql:5.7
docker run -d -p 3344:3306 -v /etc/mysql/conf.d -v /var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 --name mysql02 --volumes-from mysql01 mysql:5.7

​ 容器之间配置信息的传递, 数据卷容器的声明周期一直持续到没有容器使用为止。但是一旦你持久化到了本地,这个时候,本地的数据是不会删除的!

三、dockerfile构建

​ dockerFile是用来构建docker镜像的文件!命令参数脚本!以下为构建步骤:

  1. 编写一个dockerFile文件

  2. docker build 构建成为一个镜像

  3. docker run 运行镜像

  4. docker push 发布镜像(DockerHub、阿里云镜像)

    很多官方镜像都像是基础包,很多功能都不具备,我们通常会自己搭建自己的镜像!官方既然可以制作镜像,能我们一样可以!

    基础知识:

    1. 每个保留关键字(指令)都是必须大写字母
    2. 执行从上到下顺序执行
    3. # 表示注释
    4. 每个指令都会创建提交一个新的镜像层,并提交!

在这里插入图片描述

dockerFile是面向开发的, 我们以后要发布项目, 做镜像, 就需要编写dockefile文件, 这个文件十分简单!

Docker镜像逐渐成为企业的交互标准,必须要掌握!

步骤:开发,部署, 运维… 缺一不可!

DockerFile: 构建文件, 定义了一切的步骤,源代码

DockerImages: 通过DockerFile构建生成的镜像, 最终发布和运行的产品!

Docker容器:容器就是镜像运行起来提供服务器

四、DockerFile指令说明

在这里插入图片描述

FROM            # 基础镜像,一切从这里开始构建
MAINTAINER      # 镜像是谁写的, 姓名+邮箱
RUN             # 镜像构建的时候需要运行的命令
ADD             # 步骤, tomcat镜像, 这个tomcat压缩包!添加内容
WORKDIR         # 镜像的工作目录
VOLUME          # 挂载的目录
EXPOSE          # 保留端口配置
CMD             # 指定这个容器启动的时候要运行的命令,只有最后一个会生效可被替代
ENTRYPOINT      # 指定这个容器启动的时候要运行的命令, 可以追加命令
ONBUILD         # 当构建一个被继承DockerFile 这个时候就会运行 ONBUILD 的指令,触发指令
COPY            # 类似ADD, 将我们文件拷贝到镜像中
ENV             # 构建的时候设置环境变量!

五、搭建自己的centos

FROM centos:7
MAINTAINER cgg<705328646@qq.com>ENV MYPATH /usr/local
#镜像的工作目录
WORKDIR $MYPATHRUN yum -y install vim
RUN yum -y install net-toolsEXPOSE 80
CMD echo $MYPATH
CMD echo "---end---"
CMD /bin/bash

​ 运行至搭建完毕

在这里插入图片描述

​ 之后运行,自动打开bash窗口,发现运行的容器的当前目录为/usr/local,且已经可以使用vim和net工具

在这里插入图片描述

六、CMD 和ENTRYPOINT区别

CMD         # 指定这个容器启动的时候要运行的命令,只有最后一个会生效可被替代
ENTRYPOINT      # 指定这个容器启动的时候要运行的命令, 可以追加命令

http://chatgpt.dhexx.cn/article/TbXu2Bp2.shtml

相关文章

Docker 学习笔记

Docker 学习笔记 Docker 安装CentOS 安装 DockerUbuntu 安装 Docker Docker 常用命令 Docker 实操记录Docker 安装mysqlDocker 部署 jupyter notebook Docker 安装 CentOS 安装 Docker 以下是docker官网的安装教程&#xff0c;我只是将命令都提取出来 按下列顺序逐步输入即可…

docker 学习

centos7安装docker 步骤 1、Docker从1.13版本之后采用时间线的方式作为版本号,分为社区版CE和企业版EE。 社区版是免费提供给个人开发者和小型团体使用的,企业版会提供额外的收费服务,比如经过官方测试认证过的基础设施、容器、插件等。 社区版按照stable和edge两种方式发…

docker学习1

1.docker常用管理命令 格式 docker image 【】 ls 列出镜像 bulid 构建镜像利用dockerfile history 查看 inspect 显示一个或多个镜像的详细信息 pull 从镜像仓库拉取镜像 rm 移除一个或多个镜像 push 推送一个镜像到镜像仓库 prune 移除没有被…

docker 学习总结

只要学不死&#xff0c;就往死了学。 docker学习目录 docker概述docker安装docker基本组成 镜像命令容器命令操作命令 docker镜像容器数据卷dockerFiledocker 网络原理IDEA整合dockerdocker composerdocker swarmcI\cd docker概述 痛点&#xff1a;解决跨平台&#xff0c;服…

Docker学习总结

Docker学习总结 一、Docker简介二、Docker安装2.1 安装步骤2.2 卸载Docker2.3 配置阿里云镜像加速 三、Docker常用命令3.1 帮助命令3.2 镜像命令3.3 容器命令3.4 其他常用命令 四、Dockerfile4.1 DockerFile简介4.2 DockerFile体系结构(保留字指令)4.3 案例4.3.1 Base镜像(scra…

Docker学习

理念&#xff1a;一次镜像&#xff0c;处处运行。是基于go语言实现的云开源项目 容器与虚拟机的区别&#xff1a; 虚拟机是一种带环境安装的解决方案&#xff0c;可以在一种操作系统中运行另外一种操作系统。 容器不是模拟一整个操作系统&#xff0c;而是只有软件所需要的库资…

一文带你入门docker

✅作者简介&#xff1a;我是18shou&#xff0c;一名即将秋招的java实习生 &#x1f525;系列专栏&#xff1a;牛客刷题专栏 &#x1f4c3;推荐一款模拟面试、刷题神器&#x1f449; [在线刷题面经模拟面试](在线面试刷题) 目录 安装Docker 卸载旧版本 Docker初装命令 Dock…

超全的Docker学习教程(Linux云计算从入门到精通)

CONTENTS 一、docker简介 1.1 docker相关概念 1.2 docker应用场景 1.3 docker和虚拟机比较 二、初识docker 2.1 安装docker 2.2 初识docker-docker架构 2.3 配置镜像加速器 三、docker命令详解 四、docker容器数据卷 五、docker应用部署 5.1 部署mysql 5.2 部署Tom…

Docker 从入门到精通(新手建议收藏的教程)

今天给大家分享一篇小白也能看懂的Docker入门到精通学习教程&#xff0c;篇幅较长&#xff0c;但内容很干&#xff0c;值得认真看完&#xff01; 目录 一 、容器简介 二、什么是 Docker&#xff1f; 三、安装Docker Docker 从入门到精通&#xff08;新手建议收藏的教程&am…

Docker入门教程(详细)

目录 一、Docker概述 1.1 Docker 为什么出现&#xff1f; 1.2 Dorker历史 1.3 能做什么 虚拟机技术&#xff1a;&#xff08;通过 软件 模拟的具有完整 硬件 系统功能的、运行在一个完全 隔离 环境中的完整 计算机系统&#xff09; 容器化技术&#xff1a;&#xff08;容…

docker入门,这一篇就够了。

Docker入门&#xff0c;这一篇就够了。 Docker容器虚拟化平台。 前言 接触docker很长时间了&#xff0c;但是工作中也没有用到&#xff0c;所以总是学了忘&#xff0c;忘了学。不过这次&#xff0c;我打算跟大家分享一下我的学习历程&#xff0c;也算是我的独特的复习笔记&…

总线板卡(1)——总线接口类型

行业的朋友们是否碰到过这种情况&#xff0c;比如你问某厂家是否有1553B总线或者其他总线板卡时&#xff0c;对方会问你要什么接口的&#xff1f; 你知道厂家说的接口指的是什么吗&#xff1f; 这里的接口一般指板卡的总线接口&#xff0c;比较普遍的有PCI、PCIe、CPCI、PXI等…

6U VPX架构XCKU115(FPGA)+XCZU9EG(MPSOC)+TMS320C6678(DSP)的高速信号处理平台VPX630设计原理图及调试经验分享

板卡概述VPX630 是一款基于6U VPX 总线架构的高速信号处理平台&#xff0c;该平台采用一片Xilinx 的Kintex UltraScale 系列FPGA&#xff08;XCKU115&#xff09;作为主处理器&#xff0c;完成复杂的数据采集、回放以及实时信号处理算法。采用一片带有ARM 内核的高性能嵌入式处…

flexray VPX控制板设计方案详细

后IO板 1设计要求1.1功能要求3U VPX通讯板具有4路CAN&#xff0c;2路 Flex Ray、1路SGMII网口、2路RapidIO2、2路PCIE4、2路IPMI接口 整个处理模块系统框图如下&#xff1a; 图1 系统框图 根据上图&#xff0c;模块可以分为以下几个部分&#xff1a; CAN协议模块&#xff1a…

嵌入式高速串行并行技术_推荐(张锋)

前言 之前想学习一下总线相关的知识&#xff0c;就去图书馆搜&#xff0c;其中&#xff0c;有一本是&#xff1a;《嵌入式高速串行并行技术——基于FPGA实现与应用&#xff08;张锋著&#xff09;》 看了一下前言、目录、自序、以及他本书创作过程中的随笔&#xff08;小编就决…

加固机箱设计资料第289篇:基于3U VPX的 5槽加固机箱

基于3U VPX的 5槽加固机箱 一、产品简介 VPX-305 机箱平台是4U高度 3U 5S的一种便携式VPX机箱。由北京太速科技研发&#xff0c;机箱提供1个VPX总线系统槽和4个VPX 外设槽。主要用于组建VPX测试系统。整机美观大方、小巧灵活、安全可靠。可用于外场测试。 VPX-30…

VPX加固机箱学习资料第289篇:基于3U VPX的 5槽加固机箱

基于3U VPX的 5槽加固机箱 一、产品简介 VPX-305 机箱平台是4U高度 3U 5S的一种便携式VPX机箱。机箱提供1个VPX总线系统槽和4个VPX 外设槽。主要用于组建VPX测试系统。整机美观大方、小巧灵活、技术先进、安全可靠。可用于外场测试。 VPX-305采用工业级3U300W的C…

基于龙芯+国产FPGA 的VPX以太网交换板设计(二)

3.1 板卡技术要求 3.1.1 主要性能指标 本着向下兼容的原则&#xff0c;以太网交换板的设计尽量保留传统信息处理平台的基本功 能和接口&#xff0c;重点考虑提升设备的性能和扩展性。本课题以太网交换板的主要性能指标 如下&#xff1a; &#xff08; 1 &#xff09; 具…

3U VPX板卡设计

最近设计了一块3U VPX CPU板卡&#xff0c;具体硬件设计过程如下&#xff1a; 1&#xff1a;首先了解3U VPX的相关标准&#xff0c;包括板卡尺寸&#xff0c;接插件定义等等&#xff1b; 2&#xff1a;确定板卡要实现的功能&#xff0c;此板卡包含1553B、RS422、CAN总线、IO输入…

基于6U VPX架构的6槽标准VPX机箱

VPX6100是北京青翼科技的一款基于6U VPX总线架构的高性能、高可靠性的应用系统平台&#xff0c;支持VPX、OpenVPX协议标准。该系统平台采用高性能6槽6U VPX背板&#xff0c;高度优化的拓扑结构&#xff0c;能够为用户提供各种高速串行总线的互联&#xff0c;该平台支持标准VPX插…