后端部署学习

后端部署

一、一般部署

1.安装JDK

2.下载jdk放到到Linux的/usr/java下(目录随意)

3.解压

tar -zxvf jdk-xxx.tar.gz

4.修改环境变量

vi /etc/profile
set java environment
JAVA_HOME=/usr/java/jdk1.8.0_171
JRE_HOME=/usr/java/jdk1.8.0_171/jre
CLASS_PATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib
PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
export JAVA_HOME JRE_HOME CLASS_PATH PATH

5.让修改生效

source /etc/profile

6.测试

java -version

7.Maven打包(package)项目,复制jar包到/usr/java(jdk存放的位置),执行java -jar 项目名运行

二、Docker部署

1.使用DockersFile创建jdk镜像
  • 创建目录

     mkdir –p /usr/local/dockerjdk8
    
  • 把安装包放在 dockerjdk8

  • vi Dockerfile创建文件,粘贴下面内容

    #依赖镜像名称和ID
    FROM centos:7
    #指定镜像创建者信息 
    MAINTAINER CSL
    #切换工作目录
    WORKDIR /usr
    RUN mkdir /usr/local/java
    #ADD 是相对路径jar,把java添加到容器中
    ADD jdk-8.tar.gz /usr/local/java/
    #配置java环境变量
    ENV JAVA_HOME /usr/local/java/jdk1.8.0_171
    ENV JRE_HOME $JAVA_HOME/jre
    ENV CLASSPATH $JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib:$CLASSPATH 
    ENV PATH $JAVA_HOME/bin:$PATH
    
  • 构建镜像(不可忽略点)

    docker build -t='jdk1.8' .
    
  • 查看镜像

    docker images
    
2.创建容器
  • 创建容器
docker run -it --name=jdk1.8 jdk1.8 /bin/bash
  • 拉取私有容器

    docker pull registry
    
  • 启动

    docker run -di --name=registry -p 5000:5000 registry
    

    打开浏览器输入地址Ip:5000/v2/_catalog查看,私有容器创建成功

  • 修改daemon.json

    vi /etc/docker/daemon.json
    
  • 添加以下内容,保存退出

    {"insecure-registries":["ip:5000"]}
    

    这步的作用是让docker信任私有仓库地址

  • 重启docker

    systemctl restart docker
    
  • 镜像上传至私有仓库

    docker tag jdk1.8 ip:端口/jdk1.8
    
  • 启用私服

    docker start register
    
  • 上传

    docker push IP:5000/jdk1.8
    
  • 查看私服的文件

    ip:5000/v2/_catalog

3.DockerMaven插件(部署项目)

使用之前修改宿主机的docker配置:

vi /lib/systemd/system/docker.service

在ExecStart=后面添加配置

-H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock

刷新配置重启服务

systemctl daemon-reload 
systemctl restart docker 
docker start registry

项目pom文件添加

<build>
        <finalName>项目名称</finalName>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
            <!-- docker的maven插件,官网:
            https://github.com/spotify/docker-maven-plugin -->
            <plugin>
                <groupId>com.spotify</groupId>
                <artifactId>docker-maven-plugin</artifactId>
                <version>0.4.13</version>
                <configuration>
                    <imageName>xx.xx.xx.xx:5000/${project.artifactId}:${project.version}</imageName>
                    <baseImage>jdk1.8</baseImage>
                    <entryPoint>["java", "-jar","/${project.build.finalName}.jar"]</entryPoint>
                    <resources>
                        <resource>
                            <targetPath>/</targetPath>
                            <directory>${project.build.directory}
                            </directory>
                            <include>${project.build.finalName}.jar</include>
                        </resource>
                    </resources>
                    <dockerHost>http://xx.xx.xx.xx:2375</dockerHost>
                </configuration>
            </plugin>
        </plugins>
    </build>

进入项目目录,执行

mvn clean package docker:build -DpushImage
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值