Linux环境在非root用户中搭建(java-tomcat-redis)

作者 : admin 本文共4117个字,预计阅读时间需要11分钟 发布时间: 2024-06-8 共1人阅读

注: 本文在内网(离线)环境,堡垒机中搭建,服务器不同可能有所差异,仅供参考

本文安装JDK-20.0.1版本,apache-tomcat-10.1.10版本,redis-6.2.15版本

本文服务器IP假设:192.168.88.133

root用户创建子用户并赋予sudo权限

创建子用户-asia

sudo  adduser  asia

给子用户赋予sudo权限

使用root用户编辑 /etc/sudoers配置文件

vi  /etc/sudoers

## Allow root to run any commands anywhere
root    ALL=(ALL)       ALL
asia    ALL=(ALL)       ALL

## Same thing without a password
# %wheel        ALL=(ALL)       NOPASSWD: ALL
asia    ALL=(ALL)        NOPASSWD: ALL       

在sudoers文件中找到上面两个位置,一个是sudo权限,另一个是使用是不用输入密码

编辑后按ESC键,输入 :wq!,强制保持退出

切换asia用户

安装jdk-20.0.1

创建目录

mkdir -p 父目录/子目录

压缩包(jdk-20.0.1.tar.gz)放到java目录下:/home/asia/usr/local/java

解压jdk


解压
tar  -zxvf  jdk-20.0.1.tar.gz  /home/asia/usr/local/java

配置环境

输入nano ~/.bashrc进入配置文件
加入配置:
export JAVA_HOME=/home/asia/usr/local/java/jdk-20.0.1
export PATH=$JAVA_HOME/bin:$PATH
编辑后:Ctrl+O  保持文件
        按ENTER确认
        Ctrl+X 退出编辑
刷新配置文件 命令:source  ~/.bashrc

一开始没有配置sudo权限,所以这样配置的环境,不影响使用

查看版本

输入命令:java -version 
[asia@localhost ~]$ java -version
openjdk version "20.0.1" 2023-04-18
OpenJDK Runtime Environment (build 20.0.1+9-29)
OpenJDK 64-Bit Server VM (build 20.0.1+9-29, mixed mode, sharing)
[asia@localhost ~]$ 
显示20.0.1是jdk版本代表成功!

安装TomCat

创建目录

mkdir -p 父目录/子目录

压缩包(apache-tomcat-10.1.10.tar.gz)放到java目录下:/home/asia/usr/local/tomcat

解压tomcat

cd到/home/asia/usr/local/tomcat
解压 tar  -zxvf  apache-tomcat-10.1.10.tar.gz  
解压后进入tomcat的bin目录
cd /home/asia/usr/local/tomcat/apache-tomcat-10.1.10/bin
启动:./startup.sh
关闭:./shutdown.sh

启动后访问172.35.1.181:8080不能进入ManagerApp

添加tomcat用户

cd /home/asia/usr/local/tomcat/apache-tomcat-10.1.10/conf
vim tomcat-users.xml
tomcat-users.xml最下面加入以下内容:



关闭tomcat服务重新启动

发现仍然无法访问ManagerApp

配置远程访问

cd  /home/asia/usr/local/tomcat/apache-tomcat-10.1.10/conf/Catalina/localhost
vi manager.xml
Manager.xml加入以下内容:

     

重启tomcat:./startup.sh
此时ManagerApp可以访问了

限制上传war包大小

上传war报错:文件太大
cd  /home/asia/usr/local/tomcat/apache-tomcat-10.1.10/webapps/manager/WEB-INF
vim web.xml
修改web.xml文件(原50MB)
  
      209715200
      209715200
      0
    

配置tomcat服务

sudo vim /etc/systemd/system/tomcat.service
插入:

[Unit]
Description=Apache Tomcat Web Application Container
After=network.target

[Service]
Type=forking

User=asia
Group=asia

Environment="JAVA_HOME=/home/asia/usr/local/java/jdk-20.0.1"

Environment="CATALINA_PID=/home/asia/usr/local/tomcat/apache-tomcat-10.1.10/temp/tomcat.pid"
ExecStart=/home/asia/usr/local/tomcat/apache-tomcat-10.1.10/bin/startup.sh
ExecStop=/home/asia/usr/local/tomcat/apache-tomcat-10.1.10/bin/shutdown.sh

[Install]
WantedBy=multi-user.target

刷新配置

sudo systemctl daemon-reload

启动tomcat服务

查看进程:ps aux|grep tomcat
如果有进程就杀掉:kill -9 [Pid]

启动服务
sudo systemctl start tomcat
查看服务状态
sudo systemctl status tomcat
关闭服务
sudo systemctl stop tomcat
重启服务
sudo systemctl restart tomcat

安装redis

创建目录

mkdir -p 父目录/子目录

压缩包(redis-6.2.14.tar.gz)放到java目录下:/home/asia/usr/local/redis

解压redis

cd到 /home/asia/usr/local/redis
解压 tar  -zxvf  redis-6.2.14.tar.gz  
(此处解压后的redis-6.2.15本文改名为redis)

编译

make
cd 到 redis
使用make PREFIX=/home/asia/usr/local/redis/redis install 

配置密码

vi redis.conf
注释掉:#bind 127.0.0.1 -::1
修改密码:requirepass Asia@88220660 (取消注释编辑密码)
打开配置,密码生效:protected-mode yes

修改脚本

cd  /home/asia/usr/local/redis/redis/utils

编辑 install_server.sh 文件以下脚本内容注释
#bail if this system is managed by systemd
#_pid_1_exe="$(readlink -f /proc/1/exe)"
#if [ "${_pid_1_exe##*/}" = systemd ]
#then
#        echo "This systems seems to use systemd."
#        echo "Please take a look at the provided example service unit files in this #directory, and adapt and install them. Sorry!"
#        exit 1
#fi

创建服务脚本

cd  /home/asia/usr/local/redis/redis/utils

vim install_server_command.sh
插入:
sudo REDIS_PORT=6379
     REDIS_CONFIG_FILE=/home/asia/usr/local/redis/redis/redis.conf
     REDIS_LOG_FILE=/home/asia/usr/local/redis/redis/bin/redis.log
     REDIS_DATA_DIR=/home/asia/usr/local/redis/redis/bin/
     REDIS_EXECUTABLE=`command -v /home/asia/usr/local/redis/redis/bin/redis-server`
     /home/asia/usr/local/redis/redis/utils/install_server.sh

配置redis服务

vim /etc/systemd/system/redis.service

[Unit]
Description=redis-server
After=network.target

[Service]
ExecStart=/home/asia/usr/local/redis/redis/bin/redis-server /home/asia/usr/local/redis/redis/redis.conf   
ExecStop=/home/asia/usr/local/redis/redis/bin/redis-cli -h 127.0.0.1 -p 6379 shutdown

[Install]
WantedBy=multi-user.target                                                          

启动redis服务

刷新配置
sudo systemctl daemon-reload
切换asia
查看进程:ps aux|grep redis
如果有进程就杀掉:kill -9 [Pid]

启动服务
sudo systemctl start redis
查看服务状态
sudo systemctl status redis
关闭服务
sudo systemctl stop redis
重启服务
sudo systemctl restart redis

外部连接失败,因为redis运行中是受保护的模式,修改即可

redis-cli
config set protected-mode “no”
退出exit

Linux环境在非root用户中搭建(java-tomcat-redis)插图

本站无任何商业行为
个人在线分享 » Linux环境在非root用户中搭建(java-tomcat-redis)
E-->