Java(七):项目部署

项目部署

    • 运行容器
    • 解决Centos8中yum命令遇到的问题
    • 打包项目
    • 拷贝`.jar`到容器中
    • 安装jdk
    • 后台运行`.jar`
    • 后台运行`.jar`并输入日志
    • 实时查看日志
    • 查看/杀死运行程序
    • 目录结构
    • 日志配置

运行容器

$ docker run -d -p 8001:8001 -p 8081:8081 -p 8082:8082 --name=local_centos --privileged=true -it centos /usr/sbin/init
$ docker exec -it local_centos /bin/bash

解决Centos8中yum命令遇到的问题

在这里插入图片描述

/etc/yum.repos.d中更新一下源,使用vault.centos.org代替mirror.centos.org

$ sed -i -e "s|mirrorlist=|#mirrorlist=|g" /etc/yum.repos.d/CentOS-*
$ sed -i -e "s|#baseurl=http://mirror.centos.org|baseurl=http://vault.centos.org|g" /etc/yum.repos.d/CentOS-*

打包项目

在这里插入图片描述

拷贝.jar到容器中

$ docker cp ./eureka-server-0.0.1-SNAPSHOT.jar local_centos:/home/server/
$ docker cp ./service-01-0.0.1-SNAPSHOT.jar local_centos:/home/server/
$ docker cp ./service-02-0.0.1-SNAPSHOT.jar local_centos:/home/server/

安装jdk

$ yum search java-1.8.0-openjdk
$ yum install java-1.8.0-openjdk.x86_64 -y
$ java -version

后台运行.jar

$ java -jar /home/server/eureka-server-0.0.1-SNAPSHOT.jar &
$ java -jar /home/server/service-01-0.0.1-SNAPSHOT.jar &
$ java -jar /home/server/service-02-0.0.1-SNAPSHOT.jar &

后台运行.jar并输入日志

$ nohup java -jar /home/server/eureka-server-0.0.1-SNAPSHOT.jar > logs/debug8001.log 2>&1 &
$ nohup java -jar /home/server/service-01-0.0.1-SNAPSHOT.jar > logs/debug8081.log 2>&1 &
$ nohup java -jar /home/server/service-02-0.0.1-SNAPSHOT.jar > logs/debug8082.log 2>&1 &

实时查看日志

$ tail -100f logs/debug.log

查看/杀死运行程序

$ ps -ef|grep java
$ ps -aux|grep java # aux显示所有状态
$ kill -9 PID

目录结构

在这里插入图片描述

日志配置

pom.xml

<dependency><groupId>org.slf4j</groupId><artifactId>slf4j-api</artifactId><version>1.7.36</version>
</dependency>
<dependency><groupId>ch.qos.logback</groupId><artifactId>logback-classic</artifactId><version>1.2.11</version>
</dependency>

resources/application.yml

logging:config: classpath:logback-spring.xmllevel:com.example.demo: trace

resources/logback-spring.xml

<?xml version="1.0" encoding="UTF-8"?>
<configuration><include resource="org/springframework/boot/logging/logback/defaults.xml"/><appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender"><encoder><pattern>${CONSOLE_LOG_PATTERN}</pattern></encoder></appender><root level="debug"><appender-ref ref="STDOUT"/></root></configuration>

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/230.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

EasyCode代码生成插件-模板分享(基于数据表生成MyBatisPlus格式的dao,service,controller和vue组件)

目录 概述 使用演示 模板代码 实体类pojo 表现层controller 业务层service接口 业务层serviceImpl实现类 持久层dao Vue组件 概述 本片博客用于分享EasyCode的自定义模板&#xff08;模板在篇末&#xff09;&#xff0c;用于简化开发&#xff0c;免去重复性的工作。 …

6.28作业

作业1 结构体不能被继承&#xff0c;类可以被继承结构体默认的都是公共&#xff0c;类默认是私有的 转载【结构体和类的区别】 结构体是值类型&#xff0c;类是引用类型 结构体存在栈中&#xff0c;类存在堆中 结构体成员不能使用protected访问修饰符&#xff0c;而类可以 结…

无法更新iPhone,提示“无法检查更新”怎么办?

当我们需要 iPhone更新系统时&#xff0c;可以前往iPhone设置-通用-软件更新中获取更新推送。不过一些用户可能会遇到无法更新的问题&#xff0c;例如会提示“无法检查更新&#xff0c;检查软件更新时出错”。 以上情况可能是网络问题&#xff0c;可以尝试重新打开设置&#xf…

vue中使用mock.js

安装mock npm install mockjs --save-dev或者在ui中选择依赖 查看安装是否成功 进入package.json文件 配置mock 在src目录下新建mock文件夹&#xff0c;在mock文件夹下建立index.js 配置模拟请求数据 index.js import Mock from mockjsconst loginData Mock.mock(http://l…

YOLOv5图像和视频对象生成边界框的目标检测实践(GPU版本PyTorch错误处理)

识别图像和视频里面的对象&#xff0c;在计算机视觉中是一个很重要的应用&#xff0c;比如无人驾驶&#xff0c;这个就需要实时的检测到周边环境的各种对象&#xff0c;并及时做出处理。目标检测在以往的文章中有重点讲解过几种&#xff0c;其中Faster R-CNN的源码解读&#xf…

Spring Bean的实例化过程

一、前言 对于写Java的程序员来说&#xff0c;Spring已经成为了目前最流行的第三方开源框架之一&#xff0c;在我们充分享受Spring IOC容器带来的红利的同时&#xff0c;我们也应该考虑一下Spring这个大工厂是如何将一个个的Bean生产出来的&#xff0c;本期我们就一起来讨论一…

局域网远程连接

一根网线连接两台电脑 前言步骤1 设置B“允许远程连接”2 A和B必须在同一个网段下面3 “winr”&#xff0c;输入“mstsc”中4 弹出“远程桌面连接”窗口&#xff0c;输入B的ip地址和B电脑的用户名及密码&#xff08;winL键锁屏&#xff0c;看看B的用户名和密码是什么&#xff0…

注意力机制和Transformer

注意力机制和Transformer 机器翻译是NLP领域中最重要的问题之一&#xff0c;也是Google翻译等工具的基础。传统的RNN方法使用两个循环网络实现序列到序列的转换&#xff0c;其中一个网络&#xff08;编码器&#xff09;将输入序列转换为隐藏状态&#xff0c;而另一个网络&…

《kafka 核心技术与实战》课程学习笔记(六)

生产者消息分区机制原理剖析 为什么分区&#xff1f; Kafka 有主题&#xff08;Topic&#xff09;的概念&#xff0c;它是承载真实数据的逻辑容器&#xff0c;而在主题之下还分为若干个分区&#xff0c;也就是说 Kafka 的消息组织方式实际上是三级结构&#xff1a;主题 - 分区…

kafka入门,生产者自定义分区(六)

1、实现Partitioner接口 package com.longer.producer;import org.apache.kafka.clients.producer.Partitioner; import org.apache.kafka.common.Cluster;import java.util.Map;/*** 实现接口Partitioner* 实现3个方法&#xff1a;partition&#xff0c;close,configure* 编写…

和Git相关的一些问题

1. Git拉取项目的两种方式以及区别 方式 Http&#xff1a;通过http方式的clone项目&#xff0c;不需要在git上手动绑定ssh&#xff0c;只需要在clone的时候输入账号&#xff0c;密码即可&#xff1b;SSH&#xff1a;通过ssh方式clone项目&#xff0c;需要手动绑定ssh密钥 区别 …

前端安全问题及解决方案

随着互联网的高速发展&#xff0c;信息安全问题已经成为行业最为关注的焦点之一。总的来说安全是很复杂的一个领域&#xff0c;在移动互联网时代&#xff0c;前端人员除了传统的 XSS、CSRF 等安全问题之外&#xff0c;还时常遭遇网络劫持、非法调用 Hybrid API 等新型安全问题。…