安装部署Java项目
开头:之前做了个文档转换的小项目,想部署在安卓手机上,自己可以随时看看,所以才有了下面这篇文章,内容或有瑕疵,望请批正。文末放我自己部署文档转换网址,仅供大家参考,谢谢!
选择:Termux 还是 Linux Deploy 还是 AidLinux?
我自己的情况就是:linux deploy安装ram方式以后,每次重启手机后就无法启动ssh(水平有限解决不了就放弃了);aidlinux安装了商店一打开就闪退,听说是root过了才会这样,当然网上有root过以后怎么安装aidlinux的方法,我偷懒没去深究,就放弃了。最后选择了Termux
Termux安装方式
1、下载F-Droid这个软件,然后在这个软件商城里面搜索Termux,安装就行。
新安装的Termux配置可以参考国光大大的教程:Termux 高级终端安装使用配置教程 | 国光 (sqlsec.com)
首先先说明一下,Termux不管root没root过都能用,root过的可以使用tsu命令转成root用户(谨慎操作),没root的使用termux-chroot。
#没执行termux-chroot命令之前,你打开Termux后pwd的目录是这样的:
~ $ pwd
/data/data/com.termux/files/home
#而执行termux-chroot命令之后,pwd的目录就变成这样:
~ $ termux-chroot
~ $ pwd
/home
注意!
我个人的建议是,像nginx、redis、或你的jar包这些的运行最好是在执行termux-chroot命令切换之后再跑起来,因为像我写的文档转换,就会因为找不到系统字体而报错无法进行转换(无论是把windows字体迁过来后也一样报错),而且整个环境在路径上,有时候你不得不使用绝对路径加上前面这串/data/data/com.termux/files/...才能识别,而执行过termux-chroot之后,你的java程序里面写/home是完全能够识别的,而不会报找不到路径这种错...
Termux版常用软件安装
安装之前需要注意的事情:
- 首先先更新系统
apt update
apt upgrade
2、我们先记住一个命令:pkg files xxx 这个命令可以看你安装后的软件的路径,包括配置文件等,有利于你自己查找并修改配置文件的内容。
termux的方便之处就在于你安装即配置,前提条件是你安装已有的,比如jdk17,一个安装命令就能安装并配置系统环境变量,但如果你安装的是jdk8或者其它非17的版本,你需要自己去配置环境变量(看个人)
3、特别注意:我以下的启动方式都是在执行termux-chroot命令之后
nginx安装
输入直接安装
pkg install nginx
**输入可以直接启动 ** nginx
安装完成后,可以修改配置文件,查看安装的位置 pkg files nginx
JDK8安装
aarch版本
JDK17安装
apt install openjdk-17
直接可以查看java版本
java -version
Redis安装
在Termux上有相应的ARM版本的Redis安装包或二进制文件,并且很好安装
1、安装Redis
$ pkg install redis
2、&是以守护进程方式启动redis服务,启动后可以ctrl+c关闭,并不会关闭程序
$ redis-server &
3、登录redis客户端
$ redis-cli
127.0.0.1:6379> ping
PONG
127.0.0.1:6379> exit
4、设置登录口令(密码)
Redis没有设置口令时,如果向公网暴露6379端口,就很有可能被黑客劫持
设置密码的方式有两种:第一种是登录客户端设置
127.0.0.1:6379> config get requirepass
1) "requirepass"
2) "" //默认为空
127.0.0.1:6379> config set requirepass [passwd] //pwd就是设置的口令
127.0.0.1:6379> ping //未验证口令进行心跳反馈
(error) NOAUTH Authentication required
127.0.0.1:6379> auth [passwd] //验证口令
第二种是在配置文件中修改
Windows在安装目录下打开redis.windows.conf文件,大约在443行
Linux在/usr/etc/目录下打开redis.conf文件,大约在507行
找到requirepass字段,取消注释,将后面的字符串修改为要设置的口令
requirepass [passwd]
保存退出
关闭redis,指定配置文件重新启动, 重新登录客户端验证口令
$ redis-server /etc/redis.conf &
$ redis-cli
127.0.0.1:6379> auth [passwd]
OK
127.0.0.1:6379> ping
PONG
127.0.0.1:6379> exit
可以带口令/IP/端口登录客户端
$ redis-cli -h [host] -p [port] -a [passwd]
127.0.0.1:[port]> ping
PONG
127.0.0.1:[port]> exit
MySql安装
MySQL数据库没有在ARM平台的二进制安装文件/源码包,而其重要分支也是目前主要的MySQL替代产品MariaDB有在手机等ARM平台的安装包/源码包.
下面开始在安卓手机Termux终端中安装数据库
1、安装MariaDB(即mysql)
pkg install mariadb
切换到etc
目录查看是否有my.cnf.d
目录
$ cd /data/data/com.termux/files/usr/etc
$ ls
没有就新建一个
$ mkdir my.cnf.d
配置MariaDB
$ mysql_install_db
如果提示mysql.user table已经存在,则配置
$ mysql_upgrade
启动MySQL/MariaDB服务
$ mysqld &
或
$ mysqld_safe -u root &
mysqld
是mysql数据库的守护进程,而mysqld_safe
相当于是mysqld的守护进程,&
是让进程后台运行,不占用终端,如果没加,Ctrl
+C
等方式退出进程重新加上&
,或另起一个终端.
1、登录数据库
由于MariaDB默认没有密码,提示输密码时直接回车
$ mysql -uroot -p
或者不加参数
$ mysql
或
$ mariadb
2、查看数据库是否有'mysql'这个数据库
MariaDB [(none)]> show databases;
(如果没有则请使用上面的命令重新安装)
3、再看mysql数据库里是由有'user'这个表
MariaDB [(none)]> use mysql;
MariaDB [(mysql)]> show tables;
(有mysql数据库就一般有user表,没有也重新安装)
4、 查看表信息
MariaDB [(mysql)]> select * from user;
可以看到安装后有两个用户,'root'和'a0_****',两个用户默认都没有密码.
如果密码执行mysql_secure_installation命令更新root密码报错:Access denied for user 'root'@'localhost'
就先把mysqld的进程杀了,重启执行:mysqld --skip-grant-tables &
如果要输入密码,直接回车,然后切换到mysql数据库:use mysql
然后执行修改密码的命令:alter user 'root'@localhost identified by '你的密码';
如果报错: The MariaDB server is running with the --skip-grant-tables option so it cannot execute this statement,则执行flush privileges,然后再重新执行上面的修改密码的命令,再flush privileges;就可以了
5、为用户设置密码
MariaDB [(mysql)]> alter user 'root'@'localhost' identified by 'xxx';
6、设置远程登录的权限
设置脚本开机自启动ssh
输入命令编辑
vi ~/.bash_profile
如果出现syntax error near unexpected token `fi',则有可能编码有问题。使用cat -v ~/.bash_profile命令可以看到每一行的结尾都带着^M 明显不对,因为^M是window的换行符,不是linux的
vi ~/.bash_profile
:set ff #查看发现是dos
:set ff=unix #设置为unix模式
:wq #保存退出即可
if pgrep -x "sshd" >/dev/null
then
echo "ssh-service运行中..."
else
sshd >/dev/null &
echo "ssh-service已开启..."
fi
注意,.bashrc脚本是每当有一个新会话就会执行里面的命令,而.bash_profile脚本是一个用户登录就会执行,不管后面有多少个新会话使用这个用户都不会再执行
定时执行脚本cronie
这个定时执行的脚本我是用来定时巡检自己的软件有没有宕机的,如果有宕机了则重新启动这样
1、安装 pkg install cronie
2、指令集 crond [options]
-h print this message打印此消息
-i deamon runs without inotify support在没有inotify支持的情况下运行
-m <comm> off, or specify preferred client for sending mails在没有inotify支持的情况下运行
-n run in foreground在前台运行
-f run in foreground, the same as -n在前台运行,与-n相同
-p permit any crontab允许任何crontab
-P inherit PATH from environment instead of using default value of "/data/data/com.termux/files/usr/bin"从环境继承PATH,而不是使用默认值
-s log into syslog instead of sending mails我们登录syslog而不是发送邮件
-V print version and exit打印版本并退出
-x <flag> print debug information打印调试信息
Usage:
crontab [options] file
crontab [options]
crontab -n [hostname]
Options:
-e edit user's crontab
-l list user's crontab
-r delete user's crontab
-i prompt before deleting
-T <file> test a crontab file syntax
-V print version and exit
-x <mask> enable debugging
3、常用命令,在crontab命令编辑界面输入crontab命令: * * * * * date >> /home/date1.txt (前面五个* * * * *表示时间是每隔一分钟 date命令就是得到当前的系统时间, >> 命令表示将结果累加到文件后面 > 命令则表示将结果覆盖文件 )
#添加定时执行任务按ctrl+其它提示键操作、编辑内容
crontab -e
#查看已添加的任务调度列表
crontab -l
#开启
crond start
小结
感谢大家的观看,最后在这里附上我写的免费文档转换的小网站(希望可爱的你不要攻击我的小网站,拜托/(ㄒoㄒ)/~~) http://www.mitchconvert.top
安装部署Java项目的更多相关文章
- RedHat Linux 5.5安装JDK+Tomcat并部署Java项目
与大家分享下RedHat Linux 5.5安装JDK+Tomcat并部署Java项目的步骤,希望对大家有用. 1.下载并安装jdk 虚拟机中安装RedHat Linux 5.5 64位企业版, 这里 ...
- tomcat部署java项目
tomcat部署java项目 1.启动tomcat 进入到tomcat安装目录下的bin #cd /opt/tomcat/bin #./startup.sh // 执行重启命令 2.重建一个新目录导入 ...
- windows一键部署java项目
windows一键部署java项目 因为公司需求,要在windows的环境上做一键部署启动java项目,同时还要支持从安装界面动态修改配置文件的IP地址.就像安装软件一样将jdk,tomcat,mys ...
- jenkins部署java项目,脚本文件放在远程仓库中 和jar一起打包(六)
jenkins部署java项目到远程linux上,脚本文件和项目一起上传到gogs上,直接执行gogs上的脚本文件来执行项目 (1)新建maven项目 pom.xml的配置 <project x ...
- 通过Jenkins部署java项目
部署java项目-创建私有仓库 Jenkins大多数情况下都是用来部署Java项目,Java项目有一个特点是需要编译和打包的,一般情况下编译和打包都是用maven完成,所以系统环境中需要安装maven ...
- 阿里云部署java项目
第一步:注册阿里云账号(如果有请看第二步) 1.百度搜索阿里云,点击进入阿里云官网 2.点击右上角免费注册 3.进入注册页面,按照要求填写信息 4.注册完成后登陆 登陆之后首先购买阿里云esc与服务器 ...
- git jenkins 部署java项目
1.Java项目部署基本概述: 1.什么是Java项目? 2.为什么Java项目需要使用Maven编译? 3.手动实现Java项目构建? 4.手动实现Java项目架构图? 源码包 jar包 ...
- Win10搭建Jenkins部署Java项目(本机和远程Win10部署)
目录 一.前言&背景 二.环境准备 三.插件安装 四.全局配置 Maven JDK Git Maven 五.新建项目并配置 新建项目 配置 1.Discard old builds 2.Thi ...
- 关于weblogic部署Java项目的包冲突问题
我们可能会用各种应用服务部署我们的Java应用,比如Tomcat.WAS.weblogic等.Tomcat和WAS可能会比较少遇到一些奇怪的问题,但是用weblogic部署项目则经常遇到一些比如包冲突 ...
- 如何在tomcat安装部署php项目
java开发者都知道,tomcat是用来部署java web项目的.前几天老k偶然得知PHP/Java Bridge,通过它可以实现在jsp和php之间共享session,详见<如何实现jsp和 ...
随机推荐
- python实现多接口翻译软件
本实验用pyqt5做了一个小软件,里面使用了市面上主流的6种翻译软件接口:谷歌.百度.有道.金山词霸.腾讯.必应,界面如图所示: 以下是程序代码: import time,sys,os,hashlib ...
- Vitepress搭建组件库文档(上)—— 基本配置
在 vite 出现以前,vuepress 是搭建组件库文档不错的工具,支持以 Markdown 方式编写文档.伴随着 vite 的发展,vitepress 已经到了 1.0.0-alpha.22 版本 ...
- 《上传那些事儿之Nest与Koa》——文件格式怎么了!
转载自:juejin - 马睿不想说话 概要 本文主要针对在使用node作为服务端接口时,前端上传上传文件至node作为中转,再次上传至oss/cdn的场景.以及针对在这个过程中,需要对同一个文件进行 ...
- DelCrLfSpace V0.9
开发界面 Option Explicit 'SourceTextBox 是上面的源框 'ResultTextBox 是下面的处理预览框 'Form KeyPreview = True Private ...
- 从BeanFactory源码看Bean的生命周期
下图是我搜索"Spring Bean生命周期"找到的图片,来自文章--Spring Bean的生命周期 下面,我们从AbstractAutowireCapableBeanFacto ...
- LAPM概述及配置
一.LAMP概述 1.1LAMP的概念 LAMP架构是目前成熟的企业网站应用模式之一,指的是协同工作的一整套系统和相关软件,能够提供动态web站点服务及其应用开发环境 LAMP是一个缩写词,具体包括L ...
- Installing harbor-2.6.2 on openEuler
一.Installing harbor-2.6.2 on openEuler 1 地址 https://goharbor.io https://github.com/goharbor/harbor 2 ...
- JSP利用AJAX实现页面即时校验验证码
在JSP页面实现验证码校验文章中当时是使用的Servlet类来进行的验证码校验,但是这种方式并不能即时校验,在正常情况下都是直接在用户输入之后就进行校验,这样对用户来说很方便的. AJAX 即&quo ...
- python选课系统项目详解
选课系统项目详解 选课系统简介及分析 选课系统架构设计分析 选课系统目录设计 管理员视图 注册 登录 创建学校 创建课程 创建讲师 学生视图 注册 登录 选择学校 选择课程 查看分数 教师视图 登录 ...
- UEFI引导linux启动过程的顺序,及修改办法
注意这里我说的是 uefi 启动 启动过程顺序 正常安装完一个Linux系统,硬盘会被分成俩个分区,一块是 fat32 文件系统(启动项存放位置),一块是ext4 文件系统(也就是系统真正的安装位置) ...