拿到新linux服务器,从配置环境到跑起项目的部署流程
今早翻开手机看到某云一条广告Linux1 核 2 GB 1 Mbps服务器10元一个月,正巧最近在搞linux,于是下单了一台2个月20。
上班来到公司后,借空闲时间一顿研究,一波骚操作配置后,浏览器打开ip地址正常,看到了熟悉的tomcat9页面。

然后又是一波骚操作,把自己的之前写的spring boot + jpa + bootstrap + thymeleaf 简单的增删改查Demo项目部署了上去,打开ip也正常显示。

所以在此记录下,当拿到一台全新的linux服务器后该如何配置(操作步骤借鉴公司内部的环境部署文档)
一、配置网络设置
有的linux拿到后不能访问网络所以要配置下网络设置
vi /etc/resolv.conf
1.添加 一行 nameserver 114.114.114.114
2.重启网络:service network restart
接下来我的配置流程是:mysql、java、tomcat、发布项目
二、配置mysql
mysql配置:
安装mysql
yum –y install mysql

在这里安装后可能会出现一个错误,解决如下:
yum install的时候提示:Loaded plugins: fastestmirror
fastestmirror是yum的一个加速插件,这里是插件提示信息是插件不能用了。不能用就先别用呗,禁用掉,先yum了再说。
1.修改插件的配置文件
vi /etc/yum/pluginconf.d/fastestmirror.conf
enabled = 1//由1改为0,禁用该插件
2.修改yum的配置文件
vi /etc/yum.conf
plugins=1//改为0,不使用插件
安装mariadb(mysql的分支):yum -y install mariadb-server

装库成功后启动数据库: systemctl start mariadb
检查数据库状态: systemctl status mariadb

确保是开启状态后进入数据库:mysql
为root账号设置密码,同时刷新权限,如密码是‘root’:
use mysql;
update user set Password=PASSWORD("root") where User='root';
flush privileges;
增加一个用户。在项目中用它,创建用户名‘xxx’,密码‘123456a?’的用户
create user 'xxx'@'%' identified by '123456a?';
给他赋予所有的权限
GRANT ALL PRIVILEGES ON *.* TO 'xxx'@'%' IDENTIFIED BY '123456a?';
刷新权限
flush privileges;
退出数据库,重新使用wjup和root账号登录,验证是否能登陆成功

容易出现的问题:ERROR 1045 (28000): Access denied for user 'tester'@'localhost' (using password: YES)
解决方式a:用户密码是否正确,修改密码
1.修改MySQL的登录设置:
vim /etc/my.cnf
在[mysqld]的段中加上一句:skip-grant-tables
2.重新启动mysql
// service mysql restart
systemctl restart mariadb
3.登录并修改MySQL的root密码
mysql> use mysql;
Database changed
mysql> update user set password = password ('new-password') where user = 'root';
Query OK, 0 rows affected (0.00 sec)
Rows matched: 5 Changed: 0 Warnings: 0
mysql> flush privileges;
Query OK, 0 rows affected (0.01 sec)
mysql> quit
4.将MySQL的登录设置修改回来
vim /etc/my.cnf
将刚才在[mysqld]的段中加上的skip-grant-tables注释
保存并且退出vim
5.重新启动mysql
//service mysql restart
systemctl restart mariadb
解决方式b:数据库中存在匿名用户,删除匿名用户即可
Delete FROM user Where User='';
flush privileges;
到这里如果需要远程连接,可以开放3306端口
iptables -I INPUT -p tcp --dport 3306 -j ACCEPT;
然后可以远程用navicat或者啥连接试试了
三、配置JDK
我把jdk放在了/usr/java下
1.创建文件夹:mkdir /usr/java
2.用ftp工具上传下载好的jdk-8u211-linux-x64.rpm(ORACLE官方下载地址)

执行安装命令:rpm -ivh jdk-8u211-linux-x64.rpm

如果提示缺少执行权限执行权限命令:chmod +x jdk-8u211-linux-x64.rpm
查看java的版本信息:java -version
配置环境变量:vim ~/.bash_profile
末尾追加
export JAVA_HOME=/usr/java/jdk1.8.0_211-amd64
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$JAVA_HOME/bin:$PATH

加载刚设置的变量:source /etc/profile
四、配置tomcat
tomcat同样我也放在了/usr/tomcat
同样先创建文件夹:mkdir/tomcat
用ftp工具上传进去,然后解压:tar -xzvf apache-tomcat-9.0.20.tar.gz(tomcat官方下载地址)


解压后编辑tomcat的配置文件,修改默认的8080端口改为80
vi usr/tomcat/apache-tomcat-9.0.20/conf/server.xml

然后退出,保存(esc、:wq),接着去tomcat的bin目录启动tomcat就可以了
sh apache-tomcat-9.0.20/bin/startup.sh
可以到tomcat的logs下查看catalina.out
tail -f apache-tomcat-9.0.20/logs/catalina.out
成功后放开80端口
iptables -I INPUT -p tcp --dport 80 -j ACCEPT
没问题的话然后在浏览器就可以看到tomcat9的默认页面了
五、发布项目
将项目配置好数据库连接信息和端口后打成war包,然后上传到tomcat的webapp目录下
先停止tomcat(sh shutdown.sh),再次启动即可(sh startup.sh )
等待启动成功后就可以在浏览器查看项目了(http://ip/war包名)
想访问地址不加war包名就可以可看到项目,可以把webapp下自动解压的war包文件夹里的内容替换到ROOT文件夹下即可
拿到新linux服务器,从配置环境到跑起项目的部署流程的更多相关文章
- [亲测]ASP.NET Core 2.0怎么发布/部署到Ubuntu Linux服务器并配置Nginx反向代理实现域名访问
前言 ASP.NET Core 2.0 怎么发布到Ubuntu服务器?又如何在服务器上配置使用ASP.NET Core网站绑定到指定的域名,让外网用户可以访问呢? 步骤 第1步:准备工作 一台Liun ...
- 本地Linux服务器上配置Git
当我们需要拉取远程服务器代码到本地服务器时,我们首先要确定已经配置了正确的Git账号,可以从~/.gitconfig文件(为隐藏文件,需要使用ls -a查看),以及~/.ssh下的id_rsa.pub ...
- [亲测]七步学会ASP.NET Core 2.0怎么发布/部署到Ubuntu Linux服务器并配置Nginx反向代理实现域名访问
前言 ASP.NET Core 2.0 怎么发布到Ubuntu服务器?又如何在服务器上配置使用ASP.NET Core网站绑定到指定的域名,让外网用户可以访问呢? 步骤 第1步:准备工作 一台Liun ...
- linux服务器上配置多个svn仓库
linux服务器上配置多个svn仓库 1.在指定目录建立仓库保存总目录,本文示例目录设定为:/usr/local/svn/svnrepos # mkdir -p /usr/local/svn/svnr ...
- 在Linux服务器上配置phpMyAdmin
使用php和mysql开发网站的话,phpmyadmin是一个非常友好的mysql管理工具,并且免费开源,国内很多虚拟主机都自带这样的管理工具,配置很简单,接下来在linux服务器上配置phpmyad ...
- Linux服务器时间同步配置
Linux服务器时间同步配置 以CentOS7 做时间服务器,其他服务器(Centos 6.RHEL7)同步该服务器时间 RHEL 7.CentOS 7 默认的网络时间协议 为Chrony 本教程 ...
- Linux服务器下配置Java环境、JDK
前言 可以解决问题有/etc/profile与~/.bashrc环境文件区别 文件权限问题,只读readonly Java环境搭建 一.下载JDK包 地址:jdk1.8提取码:gx0b 把文件放到Li ...
- Linux系统下配置环境变量
一.环境变量文件介绍 转自:http://blog.csdn.net/cscmaker/article/details/7261921 Linux中环境变量包括系统级和用户级,系统级的环境变量是每个登 ...
- 结合jenkins在Linux服务器搭建测试环境
何时使用: 测试过程中我们需要持续构建一个软件项目,为避免重复的手动下载.解压操作,我们需要搭建一个能够自动构建的测试环境,当代码有更新时,测试人员只需点一下[构建]即可拉取最新的代码进行测试(也可设 ...
随机推荐
- JS隔行换色和全选的实现
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...
- 阿里P7Java最全面试296题:阿里天猫、蚂蚁金服含答案文档解析
[阿里天猫.蚂蚁.钉钉面试专题题目加答案] 不会做别着急:文末有答案以及视频讲解,架构师资料 1. junit用法,before,beforeClass,after, afterClass的执行顺序 ...
- 深入浅出Python装饰器
1.前言 装饰器是Python的特有的语法,刚接触装饰器的同学可能会觉得装饰器很难理解,装饰器的功能也可以不用装饰器实现,但是装饰器无疑是提高你Python代码质量的利器(尤其是使用在一些具有重复功能 ...
- POJ - 3279 Fliptile(反转---开关问题)
题意:有一个M*N的网格,有黑有白,反转使全部变为白色,求最小反转步数情况下的每个格子的反转次数,若最小步数有多个,则输出字典序最小的情况.解不存在,输出IMPOSSIBLE. 分析: 1.枚举第一行 ...
- Java IO流操作 (I)
1.FileWriter 写数据---输出流---由控制台向文件中写数据 import java.io.FileWriter; import java.io.IOException; /* * 写数据 ...
- 前端 Docker 镜像体积优化
如果 2019 年技术圈有十大流行词,容器化肯定占有一席之地,随着 Docker 的风靡,前端领域应用到 Docker 的场景也越来越多,本文主要来讲述下开源的分布式图数据库 Nebula Graph ...
- 【Pytyon模块】logging模块-日志处理
一.日志相关概念 1.日志的作用 通过log的分析,可以方便用户了解系统或软件.应用的运行情况:如果你的应用log足够丰富,也可以分析以往用户的操作行为.类型喜好.地域分布或其他更多信息:如果一个应用 ...
- Leetcode第1题:两数之和
给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的 两个 整数.你可以假设每种输入只会对应一个答案.但是,你不能重复利用这个数组中同样的元素.示例:给定 nums ...
- 用tkinter写一个记事本程序(未完成)
之前在看tkinter与python编程 ,后面学opengl就把那本书搁置了.几天没用tkinter,怕是基本的创建组件那些都忘记了,所以想着用tkinter试着写一下记事本程序.一开始的时候以为很 ...
- 系统学习python第三天学习笔记
day02补充 运算符补充 in value = "我是中国人" # 判断'中国'是否在value所代指的字符串中. "中国"是否是value所代指的字符串的子 ...