制作spring-boot的docker镜像并部署

一、下载后端项目:https://github.com/macrozheng/mall

二、修改mall-admin项目的配置文件  

修改application-prod.yml的数据库username、password为自己服务器的

增加application-prod.yml配置的 server.port:9001

pom.xml增加plugin:

<plugin>    <groupId>com.spotify</groupId>    <artifactId>docker-maven-plugin</artifactId>    <version>1.1.0</version>    <executions>        <execution>            <id>build-image</id>            <phase>package</phase>            <goals>                <goal>build</goal>            </goals>        </execution>    </executions>    <configuration>        <imageName>mall/${project.artifactId}:${project.version}</imageName>        <dockerHost>http://ip:port</dockerHost>        <baseImage>java:8</baseImage>        <entryPoint>["java", "-jar", "-Dspring.profiles.active=prod","/${project.build.finalName}.jar"]        </entryPoint>        <resources>            <resource>                <targetPath>/</targetPath>                <directory>${project.build.directory}</directory>                <include>${project.build.finalName}.jar</include>            </resource>        </resources>    </configuration></plugin>

三、打包package。(因为我没开服务器的自动上传端口,因此暂时手动上传打包的文件),后续补充自动的

四、将target/docker/目录下的两个文件Dockerfile、mall-admin-1.0-SNAPSHOT.jar 拷贝到服务器/mydata/app/mall-admin/ 目录。

进入/mydata/app/mall-admin/目录,制作docker镜像:docker build -t mall-admin

执行完命令后通过命令可以查看到镜像已经制作成功:docker images

五、启动项目

docker run -p 9001:9001 --name mall-admin --link mysql:db -v /etc/localtime:/etc/localtime -v /mydata/app/admin/logs:/var/logs -d mall-admin

其中

-p 9001:9001  (-p 宿主机port:docker的mall-admin镜像实例port)为将宿主机的9001端口映射到docker容器内mall-admin的9001端口

-name mall-admin  为将该java实例在docker中的实例名称命名为mall-admin

--link mysql:db  为将docker的mysql实例指定为通过db连接

-v /etc/localtime:/etc/localtime  为同步docker的mall-admin镜像时间和宿主机时间同步

六、服务器防火墙开启9001端口

开启防火墙:systemctl start firewalld.service

开启端口:firewall-cmd --zone=public --add-port=9001/tcp --permanent

刷新防火墙:firewall-cmd --reload

附:

关闭防火墙:systemctl stop firewalld.service

关闭开机启动:systemctl disable firewalld.service

开启开机启动:systemctl enable firewalld.service

##centos6
存在以下两种方式:

一、service方式

查看防火墙状态: service iptables status

开启防火墙: service iptables start

关闭防火墙: service iptables stop

二、iptables方式

先进入init.d目录,命令如下: cd /etc/init.d/

查看防火墙状态:/etc/init.d/iptables status

暂时关闭防火墙:/etc/init.d/iptables stop

重启iptables:/etc/init.d/iptables restart

七:阿里云开启9001端口。

参考 https://www.cnblogs.com/kbian/p/11892348.html

基于vue+springboot+docker网站搭建【七】制作后端spring-boot的docker镜像部署的更多相关文章

  1. Spring Boot 创建 Docker 镜像

    随着越来越多的组织转向容器和虚拟服务器,Docker正成为软件开发工作流程中一个更重要的部分.为此,Spring Boot 2.3中最新的功能之中,提供了为Spring Boot应用程序创建 Dock ...

  2. 使用Spring Boot创建docker image

    目录 简介 传统做法和它的缺点 使用Buildpacks Layered Jars 自定义Layer 简介 在很久很久以前,我们是怎么创建Spring Boot的docker image呢?最最通用的 ...

  3. Spring Boot与Docker部署

    开启Docker远程访问 首先需要开启docker远程访问功能,以便可以进行远程操作. CentOS 6 修改/etc/default/docker文件,重启后生效(service docker re ...

  4. 玩转spring boot——结合docker

    前言 Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 liunx机器上,也可以实现虚拟化.容器是完全使用沙箱机制,相互之间不会有 ...

  5. Spring Boot with Docker

    翻译自:https://spring.io/guides/gs/spring-boot-docker/ Spring Boot with Docker 这篇教程带你一步步构建一个Docker镜像用来运 ...

  6. spring boot——结合docker

    spring boot——结合docker 前言 Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 liunx机器上,也可以实现虚 ...

  7. Spring Boot 和 Docker 实现微服务部署

    Spring boot 开发轻巧的微服务提供了便利,Docker 的发展又极大的方便了微服务的部署.这篇文章介绍一下如果借助 maven 来快速的生成微服务的镜像以及快速启动服务. 其实将 Sprin ...

  8. 集成spring boot + mysql + docker实战

    前言 网上找过很多文章,关于通过docker构建mysql容器并将应用容器和docker容器关联起来的文章不多.本文将给出具体的范例.此处为项目的源码 前置条件 该教程要求在宿主机上配置了: dock ...

  9. 基于vue+springboot+docker网站搭建【五】部署vue前端项目

    部署vue前端项目  一.下载项目到本地   https://github.com/macrozheng/mall-admin-web 二.npm install 三.修改api配置,改为你接下来要部 ...

  10. 基于vue+springboot+docker网站搭建【三】安装docker

    安装docker 我们整个工程都会基于docker来跑,因此首先安装docker.在安装所有软件之前,我们需要先下载一个下载工具. 1.下载工具安装  yum-utils yum install -y ...

随机推荐

  1. Minimum Barrier Salient Object Detection at 80 FPS 论文阅读笔记

    v\:* {behavior:url(#default#VML);} o\:* {behavior:url(#default#VML);} w\:* {behavior:url(#default#VM ...

  2. idea中的插件,可以快速将类中的属性转换成Json字符串

    当我们想要测试接口的时候,难免会根据一个类,一个一个的写json数据,当属性比较少时还行,但当属性多的时候就比较麻烦了, 为了解决这个问题,我们可以安装第三方的插件来快速生成json字符串. 步骤如下 ...

  3. mac pro下安装安装 SymPy 和 matplotlib报错解决方案

    因为自己写python分析时候要用到这两个库,但是mac 上安装不成功.原来是要安装原来装 matplotlib 之前先要安装 freetyp 和 libpng. brew install freet ...

  4. Tkinter 鼠标键盘事件(一)

    一: 鼠标事件 <Button-1>                                                                     鼠标左键单击 ...

  5. Kubernetes 集群分析查看内存,CPU

    Kubernetes方式 top命令查看所有pod,nodes中内存,CPU使用情况 查看pod root @ master ➜ ~ kubectl top pod -n irm-server NAM ...

  6. 《Ensemble Methods: Foundations and Algorithms》

    <Ensemble Methods: Foundations and Algorithms>

  7. openLayers绘制静态底图

    由于项目需要,需要是使用openlayers框架,于是开始安利一波openlayers,可以点击 https://openlayers.org/   进入他的官网下载相关资源和案例 学习的过程总是慢慢 ...

  8. Large Margin Softmax Loss for Speaker Verification

    [INTERSPEECH 2019接收] 链接:https://arxiv.org/pdf/1904.03479.pdf 这篇文章在会议的speaker session中.本文主要讨论了说话人验证中的 ...

  9. Linux DNS分离解析与构建智能DNS服务器

    一 构建DNS分离解析 方法一 : [root@localhost ~]# vim /etc/named.conf [root@localhost ~]# cd /var/named/ [root@l ...

  10. Centos7下搭建NFS服务器与连接详解

    一,环境介绍    本实验使用了两台centos7虚拟机,其中         服务器:192.168.1.188    客户端:192.168.1.189 二,实验步骤    192.168.1.1 ...