docker中部署springboot项目,并且外部访问

1、docker安装好之后,先下载几个常用镜像,比如java,docker pull java:8,因为运行项目需要用到java环境,先把java镜像下载下来,方便以此为基础构建新的镜像。

2、准备springboot的jar包。这个其实是基本操作,在eclipse里新建一个spring boot项目,在其pom.xml文件目录下执行cmd命令

mvn clean install -Dmaven.test.skip

  便打好了jar包,在target目录下可以找到jar包,名为demo.jar

3、准备dockerfile文件,注意此文件没有后缀,编辑内容,在里面加上

FROM         java:8
workdir /app
add /demo.jar ./demo.jar
env LOGPATH=/app/log/demo.log \ PROT=8080 cmd java -jar /app/demo.jar

  简单解释下dockerfile里面的内容, from 是指以一个基础镜像为基础,这里以一个基础镜像java8为基础。workdir 是工作目录。add 是指把这个demo.jar添加到容器里面  第一个demo.jar是宿主机里面准备好的jar,第二个demo.jar是cp到docker里面的jar包。cmd命令是,是指打好了镜像之后,运行这个jar包启动项目。

4、在linux目录下新建文件夹,存放这些文件,我新建的文件夹叫做my,这里叫啥都行

mkdir my

进入文件夹

cd my

把demo.jar和dockerfile拷贝到my里面去(拷贝方法可以用xshell里的xftp)

5、在这个目录下执行命令,我起名字叫做mydocker,这个可以随便起名字。这个是构建镜像的命令,注意后面有个点,代表在此目录下。

docker build -t mydocker .

6、运行docker

docker run -d -p 4567:8080 mydocker

注意端口号顺序,4567是指在doucker暴露在外部的端口,8080是指docker里面的项目的端口

7、访问 192.168.124.16:4567/get就可以了。

192.168.124.16是我的虚拟机的ip,4567是端口号,get是我的项目里面定义的一个接口名称

  

posted @ 2018-11-18 17:02  bxs  阅读(6413)  评论(0编辑  收藏  举报