毕业以后很多没做过这么技术的事情了,不过今年要开始咯。

Goal:

练手安装Nginx,并且配置不同的server,后端有Tomcat的(JIRA),有PHP(总得有的),还有Tornado和Node。

最后效果是都放在一个Nginx后面的不同子域名(而不是不同端口或者path)。那么记录开始。

[Optional] 懒人用的Ubuntu Server

没用CentOS因为不熟,用的Ubnutu 14.04。安装Xfce4+VNC。然后 vncserver :1 -geometry 1280x960,再从你的 IP:5901 登进去 apt-get install synaptic。

BTW1:选Xfce是发现apt-get install --no-install-recommends ubuntu-desktop 装的Unity或者Gnome在VNC下怎么都配不出来,搜索看貌似很多人都有这个问题

BTW2:后来发现其实装这些,还不如WinSCP+Putty方便。。默默vncserver -kill :1

1、安装Nginx

apt-get install nginx,再/etc/init.d/nginx start。nginx.conf文件在/etc/nginx/,主要配置编辑/etc/nginx/sites-available/default或者在同目录加文件再在sites-enabled里面ln。

更多配置见官方文档,还有这里那里。正则表达式(nginx配置里面以 “~ ” 打头)的参考RegExr做得不错。

2、安装和配置PHP+MySQL

apt-get install php5-cli php5-cgi mysql-server php5-mysql

sudo apt-get install spawn-fcgi,然后 spawn-fcgi -a 127.0.0.1 -p 9000 -C 5 -u www-data -f /usr/bin/php-cgi (最好把这个写到启动里面去,原理见这里那里

然后配置nginx的某个server,见这里。我自己是这么配的。

server {
listen ;
server_name test.php.yourdomain.com;
root /usr/share/nginx/test_php;
index index.php; location ~ \.php$ {
include /etc/nginx/fastcgi_params;
fastcgi_pass 127.0.0.1:;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /usr/share/nginx/test_php$fastcgi_script_name;
try_files $uri =;
}
}

Nginx to PHP Example

然后弄phpMyAdmin就不赘述了。大多数东西配完都可以 nginx -s reload 生效。

4、安装JIRA

本来想自己搞个Tom猫,结果发现直接有linux installer。JIRA会占用用两个端口(HTTP 8080,Control 8005)。然后进http去setup。

数据库本来想用Postgres,但phppgadmin目前连PG 9.3都不支持,用起来可能会遇到麻烦,就MySQL了。

创建用户和给权限,还要把MySQL的JDBC驱动拷给JIRA(默认安装的话是 /opt/atlassian/jira/lib),再重启JIRA。

JIRA的权限配置:administrator,developer,user三种role。有些user不一定需要看所有项目,就把他从jira-users(默认的user)去掉,建个xxx-users。并且做两点:

1)在项目的Roles里面加xxx-users这个role到Users;2)Global Permissions里面给到和jira-user一样的正常user权限。

关于Nginx的配置,Tomcat这边也要改proxyName和proxyPort等让他知道反向代理从哪来,官方方案是配8080再把8081用了in case。 Nginx的配置如下:

server {
listen ;
server_name jira.yourdomain.com; location / {
proxy_set_header X-Forwarded-Host $host;
proxy_set_header X-Forwarded-Server $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://127.0.0.1:8080;
client_max_body_size 10M;
}
}

Nginx to Tomcat Example

5、配置Supervisor +Tornado

TBD

初始化一台linux server来做项目管理和测试的更多相关文章

  1. 一台Ubuntu server上安装多实例MySQL

    受环境所迫,在一台Ubuntu server上安装多个实例MySQL. 手动安装MySQL 环境:Ubuntu server 11.10 64bit + mysql-5.5.17-linux2.6-x ...

  2. 同步两台linux服务器时间同步方案

    Linux自带了ntp服务 -- /etc/init.d/ntpd,这个服务不仅可以设置让本机和某台/某些机器做时间同步,他本身还可以扮演一个time server的角色,让其他机器和他同步时间. 配 ...

  3. 两台Linux机之间传送文件

    最近实验室里接管了一台服务器,经常需要用到服务器与自己主机之间进行文件传输,因此,在此介绍一下两台Linux主机之间的一些操作,方便后来者. 1. Linux.Windows主机远程访问Linux服务 ...

  4. 两台linux机器时间同步

    Linux自带了ntp服务 -- /etc/init.d/ntpd,这个服务不仅可以设置让本机和某台/某些机器做时间同步,他本身还可以扮演一个time server的角色,让其他机器和他同步时间. 配 ...

  5. 两台linux利用heartbeat+drbd 完美实现双机热备

    一直想做基于linux的双机热备,一直没有时间和机会.一直以为只要做双机热备的实验就必须两台机器外接一个存储.甚至一个月以前在学习keepalived的时候还在琢磨keepalvied去掉哪些条件可以 ...

  6. 两台linux完美实现双机热备【来源网络尚未实践】

    [来源:http://rainbird.blog.51cto.com/211214/225541/]       一直想做基于linux的双机热备,一直没有时间和机会.一直以为只要做双机热备的实验就必 ...

  7. 安装一台Linux练习机前的考虑——主机规划与磁盘分区

    要安装一台Linux主机并不是那么简单的事,我们必须要针对distributions的特性.服务器软件的能力.未来的升级需求.硬件扩充性需求等来考虑,对于磁盘分区.文件系统.Linux操作较频繁的目录 ...

  8. 使用Qt Creator作为Linux IDE,代替Vim:实现两台Linux电脑远程部署和gdb调试(一台电脑有桌面系统,一台电脑无桌面系统)

      版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/libaineu2004/article/details/62423830 尊重作者,支持原创,如 ...

  9. 在一台Linux服务器上安装多个MySQL实例(一)--使用mysqld_multi方式

    (一)MySQL多实例概述 实例是进程与内存的一个概述,所谓MySQL多实例,就是在服务器上启动多个相同的MySQL进程,运行在不同的端口(如3306,3307,3308),通过不同的端口对外提供服务 ...

随机推荐

  1. JSON C# Class Generator ---由json字符串生成C#实体类的工具

    json作为互联网上轻量便捷的数据传输格式,越来越受到重视.但在服务器端编程过程中,我们常常希望能通过智能提示来提高编码效率.JSON C# Class Generator 能将json格式所表示的J ...

  2. fill与memset的区别

    fill 的头文件是<iostream> 命名空间是std: 在memset(a,0(-1),sizeof(a))全部初值定为0或-1时两者是没有多大区别; 但是在初值为其他值得时候就不同 ...

  3. android studio引入第三方包记录

    1.添加jar文件 将jar文件复制至app module目录下的libs文件夹下,然后打开app module目录下的build.gradle配置文件,在dependencies项中添加配置命令,这 ...

  4. 给虚拟机中的CentOS7配置固定ip

    在虚拟机中安装完了CentOS7之后,使用了DHCP来获取ip,vmware的网络连接使用了NAT模式.但是在把Linux设置为固定ip地址后,虚拟机里的linux可以ping通全网段的ip地址,但是 ...

  5. 《Visual C++ 程序设计》读书笔记 ----第8章 指针和引用

    1.&取地址:*取内容. 2.指针变量“++”“--”,并不是指针变量的值加1或减1,而是使指针变量指向下一个或者上一个元素. 3.指针运算符*与&的优先级相同,左结合:++,--,* ...

  6. 在虚拟中开启Windows 8.1的Hyper-V平台

    VM安装windows8开启Hype-V 今天老魏用VM安装了Windows8.1系统,想用此系统来开发一下Windows Phone8,但是要求确实要开启Hyper-V平台技术,本来是没有任何的问题 ...

  7. 在百万数据中找出重复的数据sql

    select * from (select count(name) as isone, name from tbl_org_departments group by name) t where t.i ...

  8. sql中的inner join, left join, right join的区别

    下面介绍一下 inner join, left join, right join这者之间的区别 现在我假设有A表和B表 left join select * from A a left join B ...

  9. apache本地和局域网访问设置

    apache本地和局域网访问设置 最近做项目需要同事ajax发项目给我,因为是测试环境,所以需要能访问我的服务器.我服务器直接用的wampserver.因为没有接触过,所以百度了一下,都是没有成功,后 ...

  10. Apple移动设备处理器指令集 armv6、armv7、armv7s及arm64-b

    Arm处理器,因为其低功耗和小尺寸而闻名,几乎所有的手机处理器都基于arm,其在嵌入式系统中的应用非常广泛,它的性能在同等功耗产品中也很出色. Armv6.armv7.armv7s.arm64都是ar ...