【Docker】镜像构建和容器部署

整个流程为:在工程中添加 Dockerfile 配置文件,对工程进行镜像打包build.sh。并把镜像文件推送到本地和远程 Docker 仓库进行部署运行start.sh

本地的 Docker 直接在 IDEA 配置即可启动,远程的服务仓库一种是配置开启2375端口,另外一种把镜像文件推送到 https://hub.docker.com 再通过拉取的方式使用。

Dockerfile文件:负责镜像配置

java 复制代码
# 基础镜像
FROM openjdk:8-jre-slim
# 作者
MAINTAINER iteng
# 配置
ENV PARAMS=""
# 时区
ENV TZ=PRC
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
# 添加应用
ADD target/chatgpt-api.jar /chatgpt-api.jar
## 在运行容器时执行的命令
ENTRYPOINT ["sh","-c","java -jar $JAVA_OPTS /chatgpt-api.jar $PARAMS"]

build.sh:构建镜像(先Maven Install构建jar包,再执行build.sh

java 复制代码
docker build -f ./Dockerfile -t iteng/chatgpt-api .
  • -t 是 --tag 的缩写,用于给构建的镜像打标签(tag)。
  • iteng/chatgpt-api 是镜像的名称。

start.sh:从镜像创建并启动一个新的容器

java 复制代码
docker run -p 8090:8090 \
--name chatgpt-api \
-d iteng/chatgpt-api

-p 8080:8080 宿主机的端口 8090 映射到容器的端口 8090。

--name 创建的容器名称

-d 后台运行

iteng/chatgpt-api 镜像名称

相关推荐
电商API_180079052478 小时前
京东商品详情API技术文章
大数据·运维·人工智能·网络爬虫
三言老师9 小时前
秘诀-如何远程SSN访问家里的八台电脑(frp 实操方案)
linux·运维·ssh
BTU_YC10 小时前
Docker Compose 部署 DozerDB 完整教程
运维·docker·容器
流烟默11 小时前
Kubernetes 调度器完全指南:从原理到生产实战
云原生·容器·kubernetes
RisunJan13 小时前
Linux命令-scriptreplay(终端会话回放)
linux·运维·chrome
spencer_tseng13 小时前
[kylin & linux] install docker
linux·docker·kylin
x²+(y-√³x²)²=114 小时前
Linux打包文件到Windows,文件/文件类型丢失
linux·运维·windows
世人万千丶14 小时前
去重插入与超限淘汰:ArkTS 实现鸿蒙搜索历史的 LIMIT 艺术
运维·服务器·学习·华为·harmonyos·鸿蒙
未来之窗软件服务14 小时前
企业自动化运营-电子合同预览-东方仙盟
运维·自动化·仙盟创梦ide·东方仙盟
流烟默15 小时前
Kubernetes Service 完全指南:从原理到生产实战
云原生·容器·kubernetes