当前位置: 首页 > news >正文

编写DockerFile

将自己的项目或者环境通过Docker部署到服务器需要一下几个步骤:
  1. 打包项目或者环境

  2. 编写Dockerfile文件

  3. 运行Dockerfile文件,构建DockerImages镜像,将DockerImages存入DockerHub或者存入阿里云镜像仓库

  4. 服务器pull下DockerImages镜像(前提:DockerImages镜像push过仓库<DockerHub>/<aliyunImageRepos>)

  5. 通过镜像建立容器

  6. 启动容器,部署成功

这里面最重要的一环就是编写Dockerfile,如果编写得当,就可以利用现有资源节省服务器空间,不然会出现冗余环境。

DockerFile指令

FROM    # 指示基础镜像,代表当前编写的环境在该指定镜像之上
MAINTAINER  # 镜像的作者信息,姓名+邮箱
RUN    # 镜像构建的时候需要运行的命令
ADD    # 添加jar包,添加环境,添加镜像
WORKDIR    # 镜像的工作目录
VOLUME    # 镜像与宿主机的数据源挂载目录
EXPOSE    # 设置端口
CMD    # 容器启动时要运行的命令,新加的命令会覆盖这个CMD命令
ENTRYPOINT  # 容器启动时要运行的命令,新加的命令会追加到ENTRYPOINT命令的后面
ONBUILD    # 当构建一个别继承DockerFile这个时候就会运行ONBUILD的指令。触发指令
COPY    # 类似ADD,将我们文件拷贝到镜像中
ENV    # 构建的时候设置环境变量
尝试编写一个SpringBoot项目的Dockerfile

#所需环境
FROM openjdk:11
#作者身份
MAINTAINER rowan<863159885@qq.com>
#工作目录
WORKDIR /home/yousql
#数据卷
VOLUME /tmp
#暴露端口
EXPOSE 2307
#将需要运行的jar包添加到app.jar里
ADD YouSQL-0.0.1.jar app.jar
#镜像run后需要跑的命令
ENTRYPOINT ["java","-jar","app.jar"]
镜像搭完了,不要得意忘形,注意在docker run时需要注意的参数
  • --name : 通过镜像运行的容器设置的容器名(有必要,不然时默认的字符串,不好分别)

  • -p : 端口映射(需要与Dockerfile的EXPOSE对应)

  • -d : 后台运行

  • 完善中...


docker run --name yousql -p 3307:3307 -d yousql:0.1

http://www.lryc.cn/news/404865.html

相关文章:

  • TCP并发服务器多线程
  • 技术速递|C# 13:探索最新的预览功能
  • Python设计模式:巧用元类创建单例模式!
  • 构建自主可控的工业操作系统,筑牢我国工业安全堡垒
  • WPF串口通讯程序
  • 汽车技术智能化程度不断提升,线束可靠性如何设计?
  • 实现Nginx的反向代理和负载均衡
  • 【算法】子集
  • Web前端:HTML篇(一)
  • ActiViz中的选择点vtkWorldPointPicker
  • 如何开启或者关闭 Windows 安全登录?
  • 【目标检测】Anaconda+PyTorch配置
  • 什么是离线语音识别芯片?与在线语音识别的区别
  • 使用Diffusion Models进行街景视频生成
  • UFO:革新Windows操作系统交互的UI聚焦代理
  • scp免密复制文件
  • Maven 的模块化开发示例
  • 通过QT进行服务器和客户端之间的网络通信
  • 【STM32 HAL库】DMA+串口
  • C#类型基础Part2-对象判等
  • 13.CSS 打印样式表 悬停下划线动画
  • C#基础:数据库分表的好处和实现方式
  • 基于3D开发引擎HOOPS平台的大型三维PLM系统的设计、开发与应用
  • 学习React(描述 UI)
  • mysql字符类型字段设置默认值为当前时间
  • java题目之数字加密以及如何解密
  • Linux基于CentOS7【yum】【vim】的基础学习,【普通用户提权】
  • 盛元广通实验室自动化生物样本库质量控制管理系统
  • Java | 自制AWT单词猜一猜小游戏(测试版)
  • docker搭建ES 8.14 集群