win10安装docker并结合Idea2018.1部署springboot项目
一、准备工作
1.、工具:win10,idea2018,maven3.5,jdk8
二、win10安装docker
1、win10安装docker:http://www.runoob.com/docker/windows-docker-install.html
2、安装完毕后,点击小鲸鱼,选择settings
点击Daemon,在Registry mirrors输入镜像加速地址,国内选的是daocloud提供的。
地址:https://www.daocloud.io/mirror#accelerator-doc,注册一个账号或用github账号登陆。
点击立即使用,选择windows。复制地址粘贴到Registry mirrors里。
3.cmd,打开doc窗口,输入docker version,查看版本
安装成功
三、Idea安装docker插件
1.点击扳手按钮
在输入框输入plguin,点击plugins,选择Browse
在输入框输入docker,并选择安装,然后重启idea
四、Idea连通docker,并指定项目生成docker镜像
1.打开设置中心,也就是扳手按钮,在输入框输入docker,点击+号
2.设置docker,点击小鲸鱼,选择settings,ge'neral,勾选最后一向,就打通了docker与idea的连接。
五、idea运行镜像/docker运行镜像
1、新建一个简单的springboot项目,设置端口号为8761
2、简单的输入一个hello world
@SpringBootApplication
@RestController
public class SpringbootDemoApplication { public static void main(String[] args) {
SpringApplication.run(SpringbootDemoApplication.class, args);
} @RequestMapping("/")
public String hi(){
return "hello world";
}
}
3、新建一个文件夹docker,src/main/docker,在docker里新建一个Dockerfile文件,配置文件内容
FROM java:8
VOLUME /tmp
ADD springboot-demo-0.0.1-SNAPSHOT.jar app.jar
RUN bash -c 'touch /app.jar'
EXPOSE 8761
ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar"]
ADD后面跟的是项目jar包,在运行之前我们需要打包,如何打包在上一篇有介绍。
然后把jar包放在docker文件里。
编辑docker
前面两个是镜像名字和容器名字,Bind port前面那个是我们启动后访问的端口,后面那个是Dockerfile里设置的端口。
点击Run运行:到doc窗口输入docker ps查看进程
可以看到,程序已运行,然后我们访问:localhost:8123
成功访问。
4、以上是idea直接运行的镜像,现在我们在doc里把程序停掉,docker stop 容器id
查看镜像,docker images
启动镜像,docker run -d -p 8234:8761 my_image,-d是在后台运行,-p 8234:8761,前面8234是我们要访问的port,8761是镜像的port,my_image镜像名
访问:localhost:8234
成功访问。
win10安装docker并结合Idea2018.1部署springboot项目的更多相关文章
- Docker容器入门之一:部署SpringBoot项目
一.环境准备: 1.vm虚拟机: Workstation 12 Pro 12.5.7 build-5813279 2.Centos 7 在虚拟机上安装好Centos7系统后,就可以开始准备安装D ...
- docker部署springboot项目
本文介绍一下docker如何部署springboot项目. 前提条件: 1.可以运行jar包的环境 2.机器上已经安装了docker 3.准备部署的springboot的jar包 4.Dockerfi ...
- mac和linux下使用Docker,部署SpringBoot项目到docker
主要是看一下如何在linux及mac上安装docker,创建docker镜像,部署SpringBoot项目到docker,并借助于DaoCloud进行docker镜像下载加速等. 我用的电脑是mac, ...
- Docker快速上手之部署SpringBoot项目
Docker是基于Go语言实现的云开源项目. Docker的主要目标是“Build,Ship and Run Any App,Anywhere”,也就是通过对应用组件的封装.分发.部署.运行等生命周期 ...
- Centos8.3、docker部署springboot项目实战记录
引言 目前k8s很是火热,我也特意买了本书去学习了一下,但是k8s动辄都是成百上千的服务器运维,对只有几台服务器的应用来说使用k8s就有点像大炮打蚊子.只有几台服务器的应用运维使用传统的tomc ...
- Docker下部署springboot项目
1.背景 如何在docker容器环境下部署一个springboot项目? 2.具体步骤 第一步:准备一个springboot项目的xxxx.jar包 jar包中用于测试的一个接口如下 第二步:编写Do ...
- linux小白成长之路9————打包部署SpringBoot项目
[内容指引] SpringBoot项目介绍: 打包SpringBoot项目: 1.pom.xml: 2.application.properties配置: 3.application-dev.prop ...
- SpringBoot入门教程(二)CentOS部署SpringBoot项目从0到1
在之前的博文<详解intellij idea搭建SpringBoot>介绍了idea搭建SpringBoot的详细过程, 并在<CentOS安装Tomcat>中介绍了Tomca ...
- 利用Dockerfile部署SpringBoot项目
利用Dockerfile部署SpringBoot项目 1.创建一个SpringBooot项目并且打成jar包 2.在Linux中创建一个文件夹,来做docker测试 [root@izwz90lvzs7 ...
随机推荐
- sql server中的临时表、表变量和公用表表达式
在编写T-SQL语句的时候,SQL Server提供了三种方法临时存储某些结果集,分别是临时表.表变量和公用表表达式. 临时表 临时表需要在临时数据库TempDB中通过I/O操作来创建表结构,一旦用户 ...
- yum 找不到程序,yum更换国内阿里源
使用百度云服务器,发现百度yum源非常不稳定,果断采用阿里源,操作步骤如下: 一.备份 $ cd /etc/yum.repos.d/ $ mv baidu-bcm.repo baidu-bcm.rep ...
- 【Maven】【IDEA】在idea中开发web项目,解决maven的jar包冲突的方法
在idea中开发web项目,解决maven的jar包冲突的方法 第一步: 先对项目进行 clean ,再进行install 第二步: 出现NoSuchMethodException,ClassNotF ...
- 使用EF批量新增数据十分缓慢
使用EF来批量新增数据,发现效率非常的差,几千条数据时甚至需要几分钟来执行,迫于无奈使用sql来执行了. 今天偶然看到一篇关于EF的文章,才发觉原来是自己对EF不够了解的原因. 一般新增时我们是将所有 ...
- C# - VS2019WinFrm程序通过SMTP方式实现邮件发送
前言 本篇主要记录:VS2019 WinFrm桌面应用程序通过SMTP方式实现邮件发送.作为Delphi转C#的关键一步,接下来将逐步实现Delphi中常用到的功能. 准备工作 搭建WinFrm前台界 ...
- Python - 列表 - 第八天
Python 列表 序列是Python中最基本的数据结构.序列中的每个元素都分配一个数字 - 它的位置,或索引,第一个索引是0,第二个索引是1,依此类推. Python有6个序列的内置类型,但最常见的 ...
- Map-HashMap-遍历
第一种遍历方法 : 先获取Map中的所有key值,然后根据key,依次从Map中去数据 (针对只取 Key 或者 Value 的情况) Map<String, String> hashMa ...
- python调用时间装饰器检测函数运行时间
用一个装饰器,监控程序的运行时间 import time def count_time(func): def int_time(*args, **kwargs): start_time = time. ...
- 用构造函数创建对象时,new的行为
用构造函数创建对象: var obj=new 类型名(属性值,…) new: 4件事: 1. 创建一个空对象 2. 让新的子对象继承构造函数的原型对象设置(自动设置新对象的__proto__属性指向构 ...
- Django ORM 一对多 和 多对多
一对多 在 models.py 上定义: class Province(models.Model): name = models.CharField(max_length=32) def __str_ ...