Docker【应用 01】Spring Boot 项目部署在Linux环境下的Docker容器内举例(任务调度系统 xxl-job 任务调度中心)(手动版)

简介: Docker【应用 01】Spring Boot 项目部署在Linux环境下的Docker容器内举例(任务调度系统 xxl-job 任务调度中心)(手动版)

1.将SpringBoot项目打jar包

这里打包的是xxl-job任务调度系统的调度器。

2.编写Dockerfile

FROM java:8
VOLUME /tmp
ADD xxl-job-admin.jar /app.jar
RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
RUN echo 'Asia/Shanghai' > /etc/timezone
EXPOSE 8080
ENTRYPOINT ["java","-jar","/app.jar"]

• FROM:表示基础镜像,即运行环境

• VOLUME:/tmp SpringBoot使用的内嵌Tomcat容器默认使用 /tmp 作为工作目录

• ADD:拷贝文件并且重命名

• EXPOSE:并不是真正的发布端口,这个只是容器部署人员与建立image的人员之间的交流,即建立image的人员告诉容器布署人员容器应该映射哪个端口给外界

• ENTRYPOINT:容器启动时运行的命令,相当于我们在命令行中输入java -jar xxxx.jar

3.构建镜像

构建镜像用的就是文件夹里的Dockerfile文件,所以命令要在 Dockerfile 和 jar 文件夹内执行。

$ docker build -t xxlJob .

4.启动容器

$ docker run -di --name jobadmin -p 8080:8080 xxljob

-di 表示后台运行容器,这也就自然地解决的Spring Boot不支持后台运行应用程序的问题。

-p 是做端口映射,此时将服务器中的8080端口映射到容器中的8085(项目中端口配置的是8085)端口。

–name 给容器取一个容易记住的名字方便日后管理。

$ docker ps -a
CONTAINER ID   IMAGE     COMMAND                CREATED          STATUS          PORTS                                       NAMES
e81b2cc0caf9   xxljob    "java -jar /app.jar"   12 minutes ago   Up 12 minutes   0.0.0.0:8080->8080/tcp, :::8080->8080/tcp   jobadmin

查看项目启动情况

5.查看运行日志

$ docker logs -f --tail=100 jobadmin
目录
相关文章
|
30天前
|
Linux
linux查看应用对应的端口
linux查看应用对应的端口
16 0
|
1月前
|
网络协议 安全 Linux
linux系统安全及应用——端口扫描
linux系统安全及应用——端口扫描
37 0
|
1月前
|
传感器 数据采集 存储
ARM Linux摄像头传感器数据处理全景视野:从板端编码视频到高级应用(一)
ARM Linux摄像头传感器数据处理全景视野:从板端编码视频到高级应用
76 0
|
1月前
|
Linux 数据处理 C++
Linux系统编程 C/C++ 以及Qt 中的零拷贝技术: 从底层原理到高级应用(一)
Linux系统编程 C/C++ 以及Qt 中的零拷贝技术: 从底层原理到高级应用
78 0
|
1月前
|
存储 Linux API
Linux系统编程 C/C++ 以及Qt 中的零拷贝技术: 从底层原理到高级应用(三)
Linux系统编程 C/C++ 以及Qt 中的零拷贝技术: 从底层原理到高级应用
31 1
|
1月前
|
消息中间件 Linux 数据处理
Linux系统编程 C/C++ 以及Qt 中的零拷贝技术: 从底层原理到高级应用(二)
Linux系统编程 C/C++ 以及Qt 中的零拷贝技术: 从底层原理到高级应用
32 1
|
1月前
|
传感器 Linux 数据处理
ARM Linux摄像头传感器数据处理全景视野:从板端编码视频到高级应用(二)
ARM Linux摄像头传感器数据处理全景视野:从板端编码视频到高级应用
47 1
|
1天前
|
数据库 Nacos Docker
基于docker-compose部署微服务基本环境
基于docker-compose部署微服务基本环境
5 0
|
4天前
|
Linux 开发工具 Android开发
Docker系列(1)安装Linux系统编译Android源码
Docker系列(1)安装Linux系统编译Android源码
7 0
|
14天前
|
测试技术 Linux 数据安全/隐私保护
【Docker项目实战】使用Docker部署Seatsurfing预订座位系统
【4月更文挑战第12天】使用Docker部署Seatsurfing预订座位系统
38 3