当前位置: 首页 > news >正文

Linux 基本入门

目录

Linux 大概了解

搭建 Java 部署环境

apt

JDK

MySQL

部署 Web 项目到 Linux 

环境配置

数据准备

程序配置文件修改

构建项目并打包

上传 jar 包到服务器

开放端口号

验证程序

常见问题

杀掉进程

完!


Linux 大概了解

Linux 严格意义上只是一个“操作系统内核”。

一个完整的操作系统 = 操作系统内核 + 配套的应用程序

Linux 是一个完全开源免费的的内核,不同公司 / 开源组织为其提供了不同的配套程序,这就构成了不同的“发行版”。

Linux 自身提供了一些 API,供程序员调用来完成一些复杂的编程任务。但由于 Java 具有跨平台的特性,对相关接口已经进行了封装,我们主要需要学习一些 Linux 的命令。

搭建 Java 部署环境

apt

Linux 软件包管理工具,用于在 Linux 发行版上安装,更新,管理 deb 软件包

大多数 apt 命令必须以具有 sudo 权限的用户身份运行

如果当前用户已经是 root ,可以直接使用命令,而不需要 sudo

apt 是在可用软件包的数据库上进行工作,如果数据库没有更新,系统不知道有何软件包可以使用,在安装任何 Linux 系统之后,首先就是要更新 apt 数据库

JDK

注意:此处安装的 jdk 是 OpenJDK,OpenJDK 是一个开源版本的 jdk,和 Oracle 官方的 jdk 略有差别,此处我们使用 OpenJDK 即可~

安装完成后,可以使用 java -version 命令来检查是否安装成功

MySQL

使用 apt 安装 MySQL

默认是 MySQL 设置是不安全的,MySQL 安装提供了一个安全脚本,用于解决不安全的默认选项

默认下载的 MySQL 是没有密码的,需要连接 mysql 后设置密码

设置密码的时候,因为我们前面设置了 MySQL 的安全设置,所以密码强度必须要符合要求

这里补充一些 MySQL 的常见命令:

部署 Web 项目到 Linux 

什么是部署???

首先了解一下“环境”这个概念。

        开发环境:开发人员写代码用的机器

        测试环境:测试人员测试代码用的机器

        生产环境:最终项目发布时候使用的机器,需要极高的稳定性

当我们把程序安装到生产环境的时候,这个过程就称为“部署”,也叫做“上线”。

一旦程序部署成功,那么这个程序就能被所有用户访问到。

环境配置

数据准备

需要按照之前的数据库表脚本,在服务器上运行,建立相同的表结构

此时就使用到了上面补充的 MySQL 相关命令,使用密码进入 Linux 的 MySQL,然后将数据库脚本运行,建立相同的表结构。

程序配置文件修改

实际工作中,开发环境,测试环境,生产环境的配置都是不一样的。

最明显的一点就是 MySQL 数据库密码,我们在开发环境中的数据,都是 mock 的,一点不重要,被黑客窃取了也无所谓,可以设置简单密码 123456。但是开发环境中的 MySQL 密码,这可是关乎用户数据安全滴,一定要设置复杂密码~

我们可以针对不同的环境,设置不同的配置

针对不同平台,创建不同的配置文件,要求名字为:application-XXX.yml

dev 一般表示开发环境,prod 一般表示生产环境,即线上环境

还需要再配置 Maven 中读取环境配置变量

此时 maven 中就会出现对应的环境包

构建项目并打包

在本地使用 maven 进行打包

注意:如果 Test 代码中有与配置环境相关的操作(比如数据库的相关操作),打包会失败,可以点击下图中的图标,跳过测试

2. 点击 clean 后再点击 package

上传 jar 包到服务器

上传 jar 包

还需要在 Linux 中下载一个上传 jar 包的服务

之后找到本地的 jar 包,然后直接拖入到 xshell 窗口即可完成文件的上传

运行程序:

开放端口号

如果外网需要访问该服务,需要先服务器防火墙开放对应的端口号

以阿里云服务器举例:

如果要开放多个端口号,以逗号进行分割

验证程序

此时就可以打开浏览器访问项目:

http://IP:Port/blog_login.html

此时的 IP 就不再是 127.0.0.1 了,而需要改成我们的云服务器的 IP,Port 改为项目的端口号

常见问题

杀掉进程

如果我们需要重启服务,或者重新部署等,都需要先停止之前的服务

完!

http://www.dtcms.com/a/466434.html

相关文章:

  • 用ClaudeCode完善我的项目
  • 开源系统网站爱游戏app下载官方网站
  • SPA路由回退机制解析:解决History模式下的404问题
  • 边界感知分治:基于扩散模型的无监督阴影去除方案
  • 传输介质的简介
  • TPS, MIS, DSS, ES考题
  • 网站建设服务非常好湖南岚鸿公司响应式网站模版
  • 我的网站被攻击了!
  • 新乡专业的网站建设公司网站模板 php
  • WPS编辑排版之我见
  • 云空间网站怎么做工程中心网站建设汇报
  • 在线Linux 练习平台 (二)
  • wordpress怎样搭建外贸网站工厂的网站在哪里做的
  • 代码案例实践
  • 网站推广费用入什么科目wordpress相册博客类主题
  • 常见虚拟化技术
  • 网站怎么能被百度收录那个视频网站做公开课比较好
  • 站长工具成品源码手机看电影的网站建设
  • webpack,vite,node等启动服务时运行一段时间命令窗口就卡住
  • 设计模式篇之 原型模式 Prototype
  • 广西南宁网站排名优化亿级流量网站架构
  • 微信后台网站建设类似wordpress博客
  • 监控系统4 - LVGL | sqlite3 | mqtt
  • Google 智能体设计模式:资源感知优化
  • 天猫淘宝优惠券网站怎么做婚纱摄影图片
  • 10分钟在Windows11下Ubuntu内安装docker-Version28.51
  • 什么是网站源码域名可以同时做邮箱和网站么
  • 建设一个机械公司网站多少钱网站 微信
  • 任务悬赏小程序深度细分分析:非技术视角下的运营逻辑拆解
  • 用什么软件做网站模板潍坊行业网站