docker启动后端服务

docker启动后端服务

1.创建项目文件夹

一般情况下项目文件夹创建是在home文件夹下建立。如果项目中存在需要进行查看的文件,可以通过docker中 挂载的形式将文件挂载到宿主机对应文件夹中

在这里插入图片描述

2.编写DockerFile文件

# 设置基础镜像(只需要java运行时环境,如果镜像中无此镜像,则会进行下载再创建镜像)
FROM adoptopenjdk:8-jre

# 设置工作目录 进入docker容器后自动定位的目(不用修改直接复制即可)
WORKDIR /opt/

# 复制jar程序包 当前宿主机目录下的jar包复制到docker工作目录(jar包与dockerfile的相对关系,一般放到同级目录下)
ADD ./quick-develop-generator-1.0.0.jar /opt/quick-develop-generator-1.0.0.jar

# 设置时区(不用修改直接复制即可)
RUN cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && echo 'Asia/Shanghai' >/etc/timezone

# 运行jar程序(命令 java -jar <jar包>)
ENTRYPOINT ["java","-jar","quick-develop-generator-1.0.0.jar"]

3.编写shell脚本

将创建镜像以及启动容器操作合二为一,简化为一步操作,简化后期更新服务,重新部署的操作

# 定义容器名称 
container_name='develop-generator'
 
# 停止容器
docker stop ${container_name}
echo '----stop container ok----'

# 删除容器
docker rm -f ${container_name}
echo '----remove container ok----'

# 删除镜像
docker rmi develop-generator:1.0.0
echo '----remove image ok----'

# dockerfile启动创建镜像 (.代表dockerFile文件与编写的脚本文件同级)
docker build -t develop-generator:1.0.0 .

# 启动容器(一般情况下需要将时间挂载与服务器时间相同,不然有可能会导致系统得到时间与实际时间不同)
docker run -id -p 7500:7500 --name=develop-generator -v /etc/localtime:/etc/localtime -v /home/quick-develop/generator/file:/home/quick-develop/generator/file develop-generator:1.0.0

注意事项

由于上述系统需要在宿主机中获取到文件信息,采用挂载的形式将对应文件的文件夹与容器中文件夹对应。

4.将三者放入同一目录

将shell脚本、dockerfile文件、服务包放入同一文件夹下,如图所示

在这里插入图片描述

5.启动shell脚本

# 切换到shell脚本文件夹中
cd /home/quick-develop/generator/server
# 启动shell脚本
sh genenrator.sh 

在这里插入图片描述

注意事项

当服务器中不存在dockerfile定义的镜像时,服务器会优先拉取需要的环境镜像,拉取成功后再将服务打包成docker镜像。

6.查看服务是否启动成功

docker ps -a

,服务器会优先拉取需要的环境镜像,拉取成功后再将服务打包成docker镜像。

6.查看服务是否启动成功

docker ps -a

在这里插入图片描述

  • 15
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值