本人最近尝试了在ubuntu下配置 www.xiaoyaoji.com.cn 接口文档环境, 想说从此以后跟后端的交互就靠着这个, 实现高效沟通. 老大对我找的接口文档要求,就是能够本地部署,支持二次开发.小幺鸡恰好符合.
小幺鸡文档环境配置要求:
jdk1.7以上 tomcat7以上 mysql5.5以上
先装jdk环境
1.查看linux下的jdk版本
$ java --version
这时候默认的可能是显示默认的openJDK:
OpenJDK Runtime Environment (build 1.6.0-b09)
OpenJDK 64-Bit Server VM (build 1.6.0-b09, mixed mode)
2.你可以选择卸载掉
$ sudo apt-get remove openjdk*
3.选择适合自己的jdk
你需要下载jdk,建议在Oracle的官网下载,以下是各个版本的最新版本的下载链接: jdk1.6(Linux 64位)的最新版本:download.oracle.com/otn/java/jd…
jdk1.7的最新版本(linux 64位):download.oracle.com/otn/java/jd…
jdk1.8的最新版本(linux64位):download.oracle.com/otn/java/jd… 用wget方式分别下载到/usr/lib/Java目录下(如果没有java目录,用以下命令进行创建sudo mkdir /usr/lib/java) (如果命令安装太慢,可以直接下载包再移进去)
sudo wget http://download.oracle.com/otn/java/jdk/6u45-b06/jdk-6u45-linux-x64.bin?AuthParam=1469888144_a5888dc2ddea46a4bd983fc8e323dde6
sudo wget http://download.oracle.com/otn/java/jdk/7u80-b15/jdk-7u80-linux-x64.tar.gz?AuthParam=1469888541_713e4316772da5ea5e020cf6f091c32f
sudo wget http://download.oracle.com/otn/java/jdk/8u92-b14/jdk-8u92-linux-x64.tar.gz?AuthParam=1469888482_dc98c0ed2225048dd3264442cacfa96b
下载完成后,你得到的是一个压缩包,解压到:/usr/lib/Java目录下。 前面你只是解压了jdk到某个目录下,如果想使用某个jdk版本,还必须修改环境,使其指向要使用的jdk版本。
sudo vim /etc/profile
在这个文件的末尾加上(修改你的yourjdkfoldername)
export JAVA_HOME=/usr/lib/java/yourjdkfoldername
export CLASSPATH=${JAVA_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH
然后执行以下命令使其生效,查看jdk是否生效:
source ~/.profile
java --version
如果显示不再是openjdk
java version "1.8.0_131"
Java(TM) SE Runtime Environment (build 1.8.0_131-b11)
Java HotSpot(TM) 64-Bit Server VM (build 25.131-b11, mixed mode)
那么到此,你的jdk就安装就完成了!
tomcat 安装
装部署tomcat之前必须先安装好JDK或JRE的环境.JRE是java程序运行的基础,而jdk是给开发java程序的人员提供了包括jre在内的基本环境以及一些开发工具.
- 创建tomcat用户
为了安全考虑,Tomcat 需要以普通用户的权限来运行。所以我们将创建一个用户和用户组,来运行 Tomcat 服务。
创建tomcat用户组
$ sudo groupadd tomcat
创建tomcat用户,用户主目录为 /etc/tomcat ,这个目录也是我们将用来安装 tomcat 的目录(当然也可以是你喜欢的其他目录)
$ sudo useradd -s /bin/false -g tomcat -d /etc/tomcat tomcat
- 下载tomcat www.apache.org/tomcat/ 安装到 /etc/下
用户 tomcat 需要有合适的权限来运行Tomcat 服务,所以接下来需要设置用户权限。
$ cd /etc/tomcat
给用户conf的写入权限,以及对子目录的读权限
$ sudo chgrp -R tomcat conf
$ sudo chmod g+rwx conf
$ sudo chmod g+r conf/*
设置tomcat用户对 work/ temp/ logs/这几个目录的所有权
sudo chown -R tomcat work/ temp/ logs/
修改 /etc/init/tomcat.conf
env JAVA_HOME=/usr/lib/jvm/yourjdkfoldername/jre
env CATALINA_HOME=/etc/tomcat
-
修改环境变量
将以下的变量配置放在之前配置jdk环境变量的后面即可,如下: 在目录/etc下修改profile文件,
命令: vi /etc/profile
将下列配置写到该文件下
export CATALINA_HOME=/etc/tomcat
export CLASSPATH=.:$JAVA_HOME/lib:$CATALINA_HOME/lib
export PATH=$PATH:$CATALINA_HOME/bin
配置完成之后执行命令:source /etc/profile,
如果没有提示错误,证明配置ok
可以通过echo $CLASSPATH来查看环境配置
- 重启tomcat script
$ sudo initctl reload-configuration
$ sudo initctl start tomcat
-
执行sh catalina.sh或者sh startup.sh
-
提示如下信息表示配置ok:
Using CATALINA_BASE: /etc/tomcat
Using CATALINA_HOME: /etc/tomcat
Using CATALINA_TMPDIR: /etc/tomcat/temp
Using JRE_HOME: /usr/jdk1.8.0_131
Using CLASSPATH: /etc/tomcat/bin/bootstrap.jar
- 先再虚拟机上访问访问tomcat首页,如果正常显示tomcat首页表明配置ok。
curl http://localhost:8080/
- 有可能因为8080端口被占用而启动失败
解决办法: 到 /etc/tomcat/conf/server.xml去修改端口配置(我是将8080改为9009)
<Connector port="9009" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
- 在虚拟机上你能够访问 http://localhost:9009/ 但是主机上不能访问
在Vagrantfile上配置端口映射,设定语法为:
将主机上的9009请求都转发到虚拟机上的9009端口进行处理
config.vm.network :forwarded_port, guest: 9009, host: 9009
于是你可以在主机上 打开 http://localhost:9009/访问tomcat页面了
在tomcat下配置小幺鸡
可直接参考官方文档:
nginx反向代理
到这步都默认你可以用: http://localhost:9009/ 打开小幺鸡了。但部署到内部服务器还是需要个容易记的域名
- 到 /etc/nginx/sites-available
sites-available是我们的虚拟主机的目录,我们在这里面可以创建多个虚拟主机.
- 创建一个xiaoyaoji-api.com的虚拟主机
- 修改xaoyaoji-api.com里的配置
命令: vim xiaoyaoji-api.com
里面的配置如下:
server {
listen 80;
server_name xiaoyaoji-api.com;
root /etc/tomcat/webapps/ROOT;
index index.html index.htm index.php;
# Make site accessible from http://localhost/
#server_name localhost;
location / {
proxy_pass http://127.0.0.1:9009/;
index index.php index.html;
}
- 软连接到sites-enabled
命令: ln -s /etc/nginx/sites-available/xiaoyaoji-api.com /etc/nginx/sites-enabled/xiaoyaoji-api.com
sites-enabled的配置文件其实就是sites-available里面的配置文件的软连接,但是由于nginx.conf默认包含的是这个文件夹,所以我们在sites-available里面建立了新的站点之后,还要建立个软连接到sites-enabled里面才行.
- 再去本地的 /etc/host文件下加上以下配置,就可以通过域名访问小幺鸡啦!
127.0.0.1 xiaoyaoji-api.com