0、发牢骚

前一个月在淘宝购买了个Jsp空间,挺便宜的,才38元/年。部署了程序,然后ALIMAMA验证网站,一直提示验证失败。最后找卖家,他说可能是因为空间太慢,照他的推荐换了最好的空间,138元/年。换了之后一次就验证通过了,感觉还挺满意。期间有一次GET请求乱码问题,server.xml改不了,找卖家,让我付技术费什么的,一来二去,很不愉快,最后自己在代码中处理解决。

折腾了几天,必须得做全站静态化、模板化,提高各个功能模块的可复用性,于是jsp换FreeMarker。再次发布程序,上传了war包,看log,tomcat没有解压war包,在控制面板中重启进程,提示成功,但是看日志还是没有重新部署。没有办法,于是又找卖家帮忙重启tomcat,卖家这次态度更恶劣,说我的菜鸟啊,垃圾程序啊什么的,很不耐烦,素质很低。感觉就是那种刚刚当一年客服,被问题折磨成抑郁症,见到客户说有问题就极度厌恶(这种感受我亲身经历过,早年的时候现场就我一个人,即是开发又是客服,一听到座机电话响就有把它砸烂的冲动)。 算啦,138元算是打水漂了,于是转投Linode,以下便是记录这次的配置和部署。

购买了个一般般的配置,练练手,配置如下:

套餐5:1G内存、24G SSD硬盘、2T 月流量、125M带宽、1IP,多机房可选;70元/月;

1、创建一个磁盘并安装操作系统

卖家会给你一个Linode后台页面: https://manager.linode.com/linodes/dashboard/linodexxxxx,登陆后,进入Dashboard,点击 Deploy a Linux Distribution,出现下面的页面。

在 Distribution下拉列表中选择将要安装的Linux发行版本。你也可以选择使用 StackScripts,通过脚本直接安装操作系统及必要的软件,并配置系统,以及Wordpress也不在话下。我这里选择CentOS7。

在Deployment Disk Size中填写磁盘大小,必须小于你的Linode剩余待分配空间。

Swap Disk 菜单一般使用默认选项即可,当内存不够用时,暂时会把长期不使用的内存换到交换区中,以节省出内存空间供其他使用。

输入Root密码:Root Password。

最后点击 Deploy就完成了新磁盘的创建。

最后的最后,千万别忘记点击boot,也就是启动VPS。

启动中:

启动完成:

2、SSH登陆测试

启动CentOS7之后,就可以使用SSH工具登陆测试,以后安装软件就靠它了。这里我使用SecureCRT,密码是刚刚设置的那个。

OK,连接成功;

3、SFTP登陆测试

我这里用的工具是SecureFX,同样能连接成功,great!

4、搭建Java环境

搭建Java环境要安装JDK,搭配Tomcat可以作为JSP Web服务器。系统先升级到目前最新。

yum check-update && yum update

JDK下载地址:http://www.oracle.com/technetwork/java/javase/downloads/index.html

这里使用rpm包,JDK7(Java SE 7u67 64位, http://download.oracle.com/otn-pub/java/jdk/7u67-b01/jdk-7u67-linux-x64.rpm,这里貌似需要登陆的,实际我下载的链接是http://download.oracle.com/otn-pub/java/jdk/7u67-b01/jdk-7u67-linux-x64.rpm?AuthParam=1410504824_54a84185fe3ce61caeec050ef3430c35),开始安装;

cd /tmp
wget http://download.oracle.com/otn-pub/java/jdk/7u67-b01/jdk-7u67-linux-x64.rpm?AuthParam=1410504824_54a84185fe3ce61caeec050ef3430c35

接着安装:

mv jdk-7u67-linux-x64.rpm\?AuthParam\=1410504824_54a84185fe3ce61caeec050ef3430c35 jdk-7u67-linux-x64.rpm
cd /usr
mkdir java
cd java
cp /tmp/jdk-7u67-linux-x64.rpm .
chmod a+x jdk-7u67-linux-x64.rpm
rpm -ivh jdk-7u67-linux-x64.rpm

编辑环境变量:

vi /etc/profile

在最后增加配置:

export JAVA_HOME=/usr/java/jdk1.7.0_67
export CALSSPATH=$JAVA_HOME/lib:$JAVA_HOME/jre/lib
export PATH=$PATH:$JAVA_HOME/bin:$JAVA_HOME/jre/bin

重启linux或者执行source /etc/profile命令让修改生效:

reboot

重启之后,验证java是否安装成功:

java -version

5、安装Tomcat7

创建app目录;

cd /
mkdir app

到官网下载tomcat7,http://apache.dataguru.cn/tomcat/tomcat-7/v7.0.55/bin/apache-tomcat-7.0.55.tar.gz

用SecureFx将apache-tomcat-7.0.55.tar.gz上传到目录/app;

解压缩;

cd /app
tar -xzvf apache-tomcat-7.0.55.tar.gz

进入tomcat目录设置tomcat的内存使用情况及其他配置:

cd apache-tomcat-7.0.55/bin
vi daemon.sh

在正文开始的地方加入以下内容(注意将jdk等目录结合自己的实际情况进行修改) :

JAVA_HOME=/usr/java/jdk1.7.0_67
CATALINA_HOME=/app/apache-tomcat-7.0.55
CATALINA_OPTS="-Xms256m -Xmx896m -XX:PermSize=128m -XX:MaxPermSize=512m"

修改为:

先安装gcc,因为编译的时候要用到

yum install gcc 

输入y,回车安装;

创建tomcat用户,用来运行tomcat服务,在生产环境用root是不安全的,所以

useradd -s /sbin/nologin tomcat
chown -R tomcat:tomcat /app/apache-tomcat-7.0.55

要将tomcat作为linux的daemon运行,需要commons-daemon工程的jsvc工具,tomcat的bin目录里已经自带了这个工具的源码。/app/apache-tomcat-7.0.55/bin/commons-daemon-native.tar.gz,解压它,编译它;

tar -xzvf commons-daemon-native.tar.gz
cd commons-daemon-1.0.15-native-src/unix
./configure
make
cp jsvc ../..

将tomcat服务做为service,和操作系统一起启动。

cp daemon.sh  /etc/init.d/tomcat
chmod 755 /etc/init.d/tomcat

修改tomcat的配置;

cd /etc/init.d
vi tomcat

增加配置:

# chkconfig: 2345 10 90
# description: tomcat ....

加入到服务;

chkconfig --add tomcat
chkconfig tomcat on
chkconfig --list tomcat

确认2~5为on的状态就OK了。启动Tomcat:

service tomcat start

浏览器访问网站,出现tomcat的首页就表示成功了,骚年;

6、修改tomcat配置

修改server.xml,修改端口为80;

service tomcat stop
cd /app/apache-tomcat-7.0.55/conf
vi server.xml

增加GET请求编码支持:

URIEncoding="UTF-8"
useBodyEncodingForURI="true"

启动tomcat验证;

service tomcat start
7、部署web程序

先修改DNS绑定到新的主机ip,我这里用的是https://www.dnspod.cn/,修改ip就可以了;

上传程序到tomcat的webapps目录;

上传war包之后,tomcat会自动解压;

修改默认项目为你自己的项目,server.xml中Host节点增加配置;

<Context docBase="xqsoso" path="/" reloadable="true"/>

启动tomcat,访问网站,验证成功,ok洗洗睡;

SSD Cloud Hosting - Linode的配置和部署,搭建Java环境的更多相关文章

  1. SSD Cloud Hosting–Linode-Mysql数据库的安装与配置

    接着上一篇的话题:SSD Cloud Hosting - Linode的配置和部署,搭建Java环境 8.Mysql数据库的安装与配置 安装 检查yum里边有没有mysql: yum list|gre ...

  2. 14行脚本配置Linux下一个Java环境变量

    供Java人们刚开始学习.多半Java它需要花费大量的精力在开发环境的配置,于Linux下一个,构造Java环境变量,很可能加入这一努力. 为此,我做了一个bash脚本来配置自己主动Java环境变量. ...

  3. zookeeper与kafka安装部署及java环境搭建(发布订阅模式)

    1. ZooKeeper安装部署 本文在一台机器上模拟3个zk server的集群安装. 1.1. 创建目录.解压 cd /usr/ #创建项目目录 mkdir zookeeper cd zookee ...

  4. 【Java】须要配置的三个Java环境变量

    我的电脑→属性→高级系统设置→高级→环境变量 1.JAVA_HOME : JDK的安装路径 2.PATH : %JAVA_HOME%\bin;%JAVA_HOME%\jre\bin; 3.CLASSP ...

  5. 2019-04-11 python入门学习——配置机器及搭建开发环境

    # 在windows操作系统中搭建python 3.x版本的开发环境,开发工具为 Anaconda 3. # 1.1 下载及安装Anaconda 3 Anaconda的特点:集成性高,包含很多常用的开 ...

  6. Linux上部署Tomcat(包括JAVA环境的配置)

    一. 用FTP工具,把apache-tomcat-7.0.64.tar.gz,jdk-7u79-linux-x64.tar.gz 上传到目录/home/zwl/Tomcat/命令下 因为Tomcat运 ...

  7. 【环境配置】Linux环境下下载、配置java环境、安装eclipse、建立eclipse快捷方式详解

    一.首先是下载Java JDK 到目前为止的最新版本为(jdk1.8.0_60),有两种方式进行下载: 1.使用shell来进行下载,可使用如下命令直接进行下载: wget --no-check-ce ...

  8. JAVA环境变量配置详解(Windows)

    JAVA环境变量配置详解(Windows)   JAVA环境变量JAVA_HOME.CLASSPATH.PATH设置详解  Windows下JAVA用到的环境变量主要有3个,JAVA_HOME.CLA ...

  9. 如何配置Java环境变量

    百度经验 | 百度知道 | 百度首页 | 登录 | 注册 新闻 网页 贴吧 知道 经验 音乐 图片 视频 地图 百科 文库 帮助   发布经验 首页 分类 任务 回享 商城 特色 知道 百度经验 &g ...

随机推荐

  1. ubuntu启动eclipse时出错cannot open display

    由于要学习hadoop,就在ubuntu下创建了一个hadoop用户,但是eclipse是在naomi用户下装的,在root和naomi用户下都能正常启动,但是一旦切换到hadoop用户,试着启动ec ...

  2. 编辑器Emacs下载网址(中国镜像)

      Root gnu emacs windows File Name ↓ File Size ↓ Date ↓ Parent directory/ - - README 14K 2014-Nov-15 ...

  3. Eclipse集成Tomcat的配置步骤实例

    使用Eclipse开发B/S结构Web应用时,必须使用Web应用服务器,常见的应用服务器有Tomcat, Jboss, WebLogic, WebSphere, SUN System Applicat ...

  4. 利用SOLR搭建企业搜索平台 之——solr的查询语法

      1. 首先假设我的数据里fields有:name, tel, address 预设的搜寻是name这个字段, 如果要搜寻的数据刚好就是 name 这个字段,就不需要指定搜寻字段名称. 2. 查询规 ...

  5. Android内存管理(3)缓存不要用SoftReference, 用android.util.LruCache

    A reference that is cleared when its referent is not strongly reachable and there is memory pressure ...

  6. php实现新闻页面

    首页 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8& ...

  7. Pascal's Triangle(帕斯卡三角)

    Given numRows, generate the first numRows of Pascal's triangle. For example, given numRows = 5,Retur ...

  8. 纠结和郁闷的存在感-关于DirectX与HLSL的矩阵存储方式---转载好文章

    我常常这么大胆的认为,搞科学的人总是喜欢用各种让常人难以理解的复杂方式去处理某些其实可能很简单的事情,这种情况在他自身擅长的.有着诸多对手竞争的领域上极为常见.比如吧,搞DirectX的人用了左手坐标 ...

  9. 用 eclipse ndk 编译 cocos2d-x for Android

    Android 环境搭建不详述,,可以google,,, 我用的coco2dx 是 2.14 ,2.14 用 create_project.py 脚本创建工程,Python环境配置也是很简单,这里了不 ...

  10. jquery ajax 开发手记

    1.json解析的格式要求更严格了,必须全部加引号,否则无法识别 {"result":"false"} 2.ashx如果要使用Session需要继承接口IReq ...