容器编排:就是针对容器生命周期的管理,对容器的生命周期进行更快速方便的方式进行管理
- 依赖管理,当一个容器必须在另一个容器运行完成后,才能运行时,就需要进行依赖管理
- 副本数控制,容器有时候也需要集群,快的对容器集群进行弹性伸缩
- 配置共享,通过配置文件统一描述需要运行的服务相关信息,自动化的解析配置内容,并构建对应的服务
dockerfile# 基础镜像 FROM openjdk:8 # 将项目jar包拷贝到容器中 COPY ./springboot-docker-demo-1.0.0.jar app.jar # 配置项目环境变量 ENV APP_OPTS="" # JVM 环境变量 ENV JVM_OPTS="-Duser.timezone=Asia/Shanghai -Xms128m -Xmx128m" # 暴露端口 EXPOSE 8080 # 设置启动时命令 CMD ["sh", "-c", "java $JVM_OPTS -jar /app.jar $APP_OPTS"]
docker build -t springboot-docker:1.0.0 .
命令构建镜像docker run -d --rm -P springboot-docker:1.0.0
Docker 为我们提供的一个用于自定义构建镜像的一个配置文件:描述如何构建一个对象
利用 Docker 提供的 build 命令,指定 Dockerfile 文件,就可以按照配置的内容将镜像构建出来
作为开发者需要将自己开发好的项目打包成 Docker 镜像,便于后面直接作为 Docker 容器运行
作为运维人员需要构建更精简的基础设施服务镜像,满足公司的需求以及尽可能减少冗余的功能占用过多的资源