【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 镜像名称

相关推荐
数据知道1 小时前
容器化部署:用Docker封装机器翻译模型与服务详解
docker·容器·机器翻译
一只栖枝2 小时前
华为 HCIE 大数据认证中 Linux 命令行的运用及价值
大数据·linux·运维·华为·华为认证·hcie·it
wuicer4 小时前
ubuntu 20.04 安装anaconda以及安装spyder
linux·运维·ubuntu
小晶晶京京6 小时前
day34-LNMP详解
linux·运维·服务器
fengyehongWorld7 小时前
Linux crontab定时任务
linux·运维
碎像7 小时前
Linux上配置环境变量
linux·运维·服务器
40kuai8 小时前
kubernetes中数据存储etcd
容器·kubernetes·etcd
敲上瘾8 小时前
Linux系统cgroups资源精细化控制基础
linux·测试工具·docker·压力测试·cgroups
sunflower_w9 小时前
linux I2C核心、总线与设备驱动
linux·运维·服务器
myzzb9 小时前
基于uiautomation的自动化流程RPA开源开发演示
运维·python·学习·算法·自动化·rpa