十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
这篇文章主要讲解了“怎么在docker容器中部署应用”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“怎么在docker容器中部署应用”吧!
成都创新互联总部坐落于成都市区,致力网站建设服务有成都网站设计、成都网站建设、网络营销策划、网页设计、网站维护、公众号搭建、微信小程序、软件开发等为企业提供一整套的信息化建设解决方案。创造真正意义上的网站建设,为互联网品牌在互动行销领域创造价值而不懈努力!
一个简单的Hello World应用。
1.1 Maven依赖
org.springframework.boot spring-boot-starter-parent 1.5.4.RELEASE
引入spring-boot-starter-web来创建一个Web应用。
org.springframework.boot spring-boot-starter org.springframework.boot spring-boot-starter-test test org.springframework.boot spring-boot-starter-web
1.2 主应用程序
@SpringBootApplication public class FirtSpringBootApplication { public static void main(String[] args) { SpringApplication.run(FirtSpringBootApplication.class, args); } }
1.3 服务接口
RESTful服务接口:
@RestController public class HelloController { @RequestMapping("/hello") public String hello() { return "Hello World"; } }
2 安装Docker,安装完毕后,Docker环境的虚拟IP是192.168.99.100。
3 部署应用
3.1 Spring Boot应用打包
在Spring Boot应用工程目录下执行mvn 打包命令:
mvn package spring-boot:repackage
工程的target目录里生成了一个jar包 firtSpringBoot-0.0.1-SNAPSHOT.jar。将jar包更名为firtSpringBoot-1.0.jar上传到Docker环境里。
3.2 Dockerfile文件
Dockfile原则上是一个批处理文件,包含了构建镜像的命令。将这些命令放入文件中并不是绝对必要的,因为我们可以将它们传递到命令行,只是使用文件更简单一些。
现在创建一个Dockerfile:
FROM alpine:edge MAINTAINER peterwanghao.com RUN apk add --no-cache openjdk8 VOLUME /tmp ADD firtSpringBoot-1.0.jar firtSpringBoot.jar EXPOSE 8080 ENTRYPOINT ["java","-jar","/firtSpringBoot.jar"]
3.3创建镜像
在Dockerfile文件目录下运行docker build命令,这将下载基镜像并一条接一条地运行Dockerfile文件中的条目。创建的镜像的名字是first,标签1.0。–rm=true,在整个构建过程成功后删除中间环节的容器。
$docker build -t first:1.0 --rm=true .
使用docker images命令列出所有的镜像和它们的详细信息。
docker@default:~/first-spring-boot$ docker images REPOSITORY TAG IMAGE ID CREATED SIZE first 1.0 02f67d8c308d 17 hours ago 119MB hello-world latest e38bc07ac18e 6 weeks ago 1.85kB alpine edge 5c4fa780951b 4 months ago 4.15MB
3.4 运行容器
接下来,我们将运行容器。使用下面的命令加载并运行容器。
docker run --name=first -p 8080:8080 -t first:1.0
使用docker ps命令列出正在运行的容器
docker@default:~/first-spring-boot$ docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 9fc3aef6e852 first:1.0 "java -jar /firtSpri 5 hours ago Up 5 hours 0.0.0.0:8080->8080/tcp first
感谢各位的阅读,以上就是“怎么在docker容器中部署应用”的内容了,经过本文的学习后,相信大家对怎么在docker容器中部署应用这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是创新互联,小编将为大家推送更多相关知识点的文章,欢迎关注!