docker安装以及springboot项目打包运行
我们都知道docker是一个非常好用的虚拟化容器,所谓虚拟化容器其实就是说可以将各个应用都隔离开来,每个应用都可以有自己的独立的运行时环境,这对于我们程序开发是非常有好处的,可以不需要去配置环境,每个组件都有独立的运行环境,不会互相干扰,而且想要更换组件的版本也是非常容易的。本文就记录一下我安装docker以及将springboot项目打包成镜像运行的过程。
docker安装
我的环境是centos7,网上有非常多的教程教你安装docker,我是按照下面的教程安装成功的,当然你也可以找其他的教程
centos7安装Docker详细步骤(无坑版教程) - 腾讯云开发者社区-腾讯云 (tencent.com)
这是我的环境
这个教程说是无坑,其实是有坑的,就是等安装完docker后会没有办法启动,会报下面的这个错
Cannot connect to the Docker daemon at tcp://localhost:4243. Is the docker daemon running?
我的解决办法是这篇文章
简单说就是要找到docker.service文件,然后添加一些内容
我的文件路径和文章里稍微有点不同
在做完上述两步后我的docker就可以正常使用了
springboot项目打包运行
首先是创建springboot项目,我用的jdk版本是1.8,对应的springboot版本应该是2开头的,idea默认创建的springboot版本是3开头的会报错,我的pom.xml配置如下
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.7.5</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<groupId>com.example</groupId>
<artifactId>demo</artifactId>
<version>0.0.1-SNAPSHOT</version>
<name>demo</name>
<description>Demo project for Spring Boot</description>
<properties>
<java.version>1.8</java.version>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</project>
如果运行项目的时候提示找不到springboot相关的注解的话别忘了将下面的选项勾上
编写一个简单的接口,看到浏览器能正常访问了就说明springboot项目构建成功
然后将springboot项目打成jar包
编写Dockerfile文件,文件名就叫这个,没有后缀
# 基础镜像java
FROM openjdk:8
# 添加jar包
ADD /demo.jar //
#地址映射
CMD ["--server.port=8080"]
#对外暴露端口
EXPOSE 8080
#执行命令
ENTRYPOINT ["java","-jar","/demo.jar"]
将打包的jar包和Dockerfile文件传到linux服务器上,因为我的docker是安装在linux服务器上的,我使用的是虚拟机,然后用winSCP传文件
到指定的目录下用docker打包
打包的命令是
docker build -t springboot-demo .
接着我们可以查看镜像并且运行
使用ifconfig命令查看linux的ip地址
根据相应的ip地址进行访问
到这里就大功告成啦ヾ(✿゚▽゚)ノ
相关文章
- 讲讲springboot_@SpringBootApplication
- Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?
- springboot上传文件(存入服务器,并将URL存入数据库表中)「建议收藏」
- springboot 配置JedisPool 简洁有效 复制即可运行「建议收藏」
- Springboot集成swagger_springboot nginx
- springboot详细讲解_Springboot项目
- springboot jdbc template_Springboot教程
- docker离线安装及配置tab补全_Docker安装
- springboot设置时区不起作用_docker设置时区
- Docker - docker-compose方式搭建高效的开发环境
- Docker安装docker-compose插件
- [ES三周年]如何使用SpringBoot 整合ES
- springboot脱敏控件再升级(支持日志脱敏)
- 【Docker】基于Rancher快速部署docker容器管理平台
- 秒懂如何使用SpringBoot+Junit4进行单元测试
- 【已解决】Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon runnin
- 【Docker学习系列】Docker学习1-docker安装
- Docker查看本地所有的镜像命令(docker images)
- Docker服务的删除本地镜像命令(docker rmi 镜像id)
- 「 【Docker】docker的基础使用介绍(小白如何使用docker) 」
- 「 【Docker】用docker运行2048小游戏(玩转docker) 」
- 「 【Docker】linux安装docker compose(小白安装) 」
- docker部署Springboot项目
- 【Docker 系列】docker 学习 二,Docker 的常用命令
- 【Docker 系列】docker 学习九,Compose 内容编排官网初步体验
- Docker安装Kafka(docker-compose)、EFAK监控
- SpringBoot 玩一玩代码混淆,防止反编译代码泄露
- Springboot整合EasyExcel,实现Excel文件上传
- springboot 使用c3p0数据库连接池的方法详解编程语言
- Linux下Docker安装指南(linux下docker安装)
- docker managed volume – 每天5分钟玩转 Docker 容器技术(40)