整个流程为:在工程中添加 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 镜像名称