首页 > 系统相关 >Linux服务器部署java项目(一)

Linux服务器部署java项目(一)

时间:2024-11-29 16:59:37浏览次数:8  
标签:sudo java Linux redis apt nginx mysql 服务器 docker

前一阵子实验室的项目要部署在服务器上(ubuntu22.04),记录一下部署的过程

1.jdk1.8 安装

  • 解压安装包
    • tar -zxvf jdk版本号
  • 加配置文件
    • sudo vim /etc/profile.d/my_env.sh
      • #JAVA_HOME
      • export JAVA_HOME=/opt/jdk1.8.0_191
      • export PATH=$PATH:$JAVA_HOME/bin
  • 测试是否安装
    • java -v

 2.docker内部署

2.1 docker安装

 2.2 mysql 安装

  • docker pull mysql:5.7.31
  • 修改mysql配置文件
    • sudo vim /opt/mysql/conf/my.cnf
      • [client]
      • default-character-set=utf8mb4
      • [mysql]
      • default-character-set=utf8mb4
      • [mysqld]
      • init_connect="SET collation_connection = utf8mb4_unicode_ci"
      • init_connect="SET NAMES utf8mb4"
      • character-set-server=utf8mb4
      • collation-server=utf8mb4_unicode_ci
      • skip-character-set-client-handshake
      • skip-name-resolve
      • default_time_zone = '+8:00'
      • sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
      • lower_case_table_names=1
  • docker创建mysql
    • docker run -p 3306:3306 --name mysql -v $PWD/mysql/conf:/etc/mysql -v $PWD/mysql/logs:/logs -v $PWD/mysql/data:/mysql_data --restart=always -e MYSQL_ROOT_PASSWORD=Whut0510 -d mysql:5.7.31
  • 重启服务
    • docker restart mysql
  • 查看日志
    • docker logs mysql
  • 测试连接
    • 在自己电脑的navicat上连接服务器的mysql

  • Docker实操:安装MySQL5.7详解(保姆级教程)-腾讯云开发者社区-腾讯云 (tencent.com)
  • 连接上之后把需要数据库还原过去,即把数据库搬到服务器了

2.3 redis安装 

  • redis
    • docker pull redis:3.2
    • docker run --restart=always -d --name redis -p 6379:6379 -v $PWD/redis/data:/data -d redis:3.2 redis-server --appendonly yes --requirepass "密码xxx"
    • 重启redis
      • docker restart redis
    • 为现有的redis创建密码或修改密码的方法:
      • 1.进入redis的容器
        • docker exec -it redis bash
      • 2.进入redis目录
        • cd /usr/local/bin
      • 3.运行命令:
        • redis-cli
      • 4.查看现有的redis密码:
        • config get requirepass
        • auth "密码xxx"
      • 5.设置redis密码
        • config set requirepass 密码xxx( 密码xxx 为你要设置的密码)

 3.nginx

当时尝试在docker内部署但是前端启动不了,故nginx没有使用docker部署

  • 在安装nginx前首先要确认系统中安装了gcc、pcre-devel、zlib-devel、openssl-devel。
    • 安装gcc
      • apt update
      • apt install build-essential
      • gcc -v
    • 安装pcre-devel
      • sudo apt-get install libpcre3-dev
      • pcre-config --version
    • 安装zlib-devel
      • apt install zlib1g-dev
    • 安装openssl-devel
      • 在Ubuntu系统里这是分开的两个,需要分开来安装:
      • sudo apt-get install openssl
      • sudo apt-get install libssl-dev
    • 解压tar -zxvf nginx-1.9.9.tar.gz##进入nginx目录cd nginx-1.9.9
    • 配置./configure --prefix=/opt/nginx
    • make
      • make报错
      • 1..解决方法:进入objs/Makefile 删除-Werror

      • 2.解决方法:vim src/os/unix/ngx_user.c 把36行注释
    • make install
    • 改nginx配置文件
    • 启动nginx
      • cd /opt/nginx/sbin
      • ./nginx //启动nginx

 docker常用指令

  •  
    • 查询全部容器 docker ps -a
    • 启动容器 docker start [containerId]
    • 停止容器 docker stop [containerId]
    • 删除容器 docker rm [containerId]
    • 查看容器日志 docker logs -f [containerId] (shift+c退出)
    • 查看所有网络 docker network ls
    • 退出容器命令 exit
    • docker image ls
    • docker image rm [IMAGE ID]

 之后更新nacos以及前后端启动。。。。

标签:sudo,java,Linux,redis,apt,nginx,mysql,服务器,docker
From: https://blog.csdn.net/pyk0727/article/details/144133441

相关文章

  • linux下简单制作iso,img镜像文件
       解压rpmrpm2cpio*.rpm|cpio-div https://www.cnblogs.com/sztom/p/10184766.html 1.如果你是直接从cd压制iso文件的,执行sudoumount/dev/cdromddif=/dev/cdromof=file.isobs=10242.如果你要把某个文件或者目录压到iso文件中,需要使用mkisofs这个工具。......
  • Java实现抢红包算法,附完整代码(公平版和手速版) 二倍均值算法 抢红包通用业务算法
     今天研究红包雨了解到二倍均值算法 微信发放100元10个红包随机的首先我们先看一下拼手气红包的功能要求: 所有红包累计金额等于红包总金额 每个红包金额不能小于0.01元,也就是说必须保证每个用户至少能抢到一个预设的最小金额,人民币红包设置的最小金额一般是0.01元,如果......
  • 使用Java导出excel内包含图片
    功能使用点最近公司需要开发一个数据表格导出excel的功能,普通的excel表格很好解决,网上有很多方法,下次写篇文章记录我的方法,但开发到有一个需求是excel是需要带图片的还是有些难度的,网上找了很多方案都无法适配,这里我记录下使用的方法。这里最后是在这篇文章上进行了优化,优化......
  • 通过网络安装UOS服务器版操作系统
    现在网卡一般都带了网络启动功能,有个软件叫Serva,可以免费用,时间超了会关闭,基本装一次系统够了,尽量不要用破解版或者什么汉化版,现在互联网上的软件太危险了,找官方的,英语的需要用到三个服务httptftpdhcp原理是dhcp会提供一个特别的指令,用于PXE查询引导文件TFTP地址,引......
  • Linux netstat 命令详解
    简介netstat全称是:networkstatistics,是一个用于监控、排除网络连接故障、路由表的命令行工具,它提供关于网络统计和socket连接的详细信息。安装sudoaptinstallnet-tools#ForDebian/Ubuntusudoyuminstallnet-tools#ForCentOS/RHEL常用选项示例查看所有连接......
  • [Javascript] 等号运算符的运算和转换规则
    ==从上到下按照规则比较,直到能够得到确切结果为止:1.两端存在NaN,返回false2.undefined和null只有与自身比较,或者互相比较时,才会返回true,和其他原始类型比较返回false3.两端类型相同,比较值4.两端都是原始类型,转换成数字重新比较5.一端是原始类型,一端是对象类型,把对象......
  • 使用XWPFTemplate进行java后端word模版导出
    1.pom引入poi-tl<dependency><groupId>com.deepoove</groupId><artifactId>poi-tl</artifactId><version>1.7.3</version></dependency> 2.word模版 3.业务代码......
  • 智慧工地算法视频分析服务器物料堆放识别算法:提升建筑工地环境保护与效率的关键技术
    随着经济的发展和城市化进程的加速,建筑工地数量急剧增加,物料堆放管理成为工地管理中至关重要的一环。裸露的物料堆不仅会造成扬尘污染,影响空气质量,还可能引发一系列环境问题。为了解决这一难题,视频分析服务器的物料堆放识别算法成为了一项关键技术。物料堆放识别算法是一种基于......
  • Linux常用命令之usermod命令详解
    usermod命令详解usermod命令在Linux和Unix系统中用于修改用户账户的属性。它允许系统管理员更改用户的主目录、默认shell、用户ID(UID)、组ID(GID)等。以下是对usermod命令的详细解释,包括其语法、选项和示例。基本语法usermod[选项]用户名常用选项-cC......
  • Java中的基础语法2
    逻辑运算符1.&—逻辑与|—逻辑或!—逻辑非2.&&—短路与||—短路或^—逻辑异或注意⚠️: &”和“&&”的区别:单&时,左边无论真假,右边表达式都进行运算;双&时,如果左边为真,右边参与运算,如果左边为假,那么右边不参与运算|”和“||”的区别同理,||表示:当左边为真,右边不参与......