有了个人服务器,就有了环境,可以自己做点东西,虽然很可能不能产生什么价值,但是,对于自己技术有个实践的地方,而且,眼光不在仅局限于写代码,比如、运维、持续交付等,那些不熟悉的概念也可以玩一把。
一直都是写代码,然而代码写的不怎么样,做个东西深切感受下,就知道哪里不足,因此在服务器搭建方面,不太完善,后续需要补充上。
趁着双十一阿里云做活动,买了个一般服务器,装上需要的软件,就OK了。这些是安装过程中已经成功的过程,其实大多是百度出来的,见到相似不要奇怪。
在/opt目录下创建apache目录,当做软件安装目录
软件列表:
FTP
JDK
RabbitMQ
Nginx
SVN
阿里云添加二级域名
阿里云服务器开通后可以使用 Xshell 等软件连接,看到的是命令界面。
安装FTP
// 执行安装命令
sudo apt-get install vsftpd
// 据称是安全版本的SVN软件...
// 新建"/home/uftp"目录作为用户主目录
sudo mkdir /home/uftp
// 设置权限
sudo chmod -R 777 /home/uftp //赋予这个权限世界安静了
// 新建用户uftp并设置密码
sudo useradd -d /home/uftp -s /bin/bash uftp
// 输入密码
sudo passwd uftp //需要输入两遍,记得就行
// 修改配置文件/etc/vsftpd.conf
sudo vi /etc/vsftpd.conf
// 添加:
userlist_deny=NO
userlist_enable=YES
userlist_file=/etc/allowed_users
seccomp_sandbox=NO
// 修改:
local_enable=YES
write_enable=YES
// 新建/etc/allowed_users文件
sudo vi /etc/allowed_users
// 添加:uftp
1.2 查看/etc/ftpusers文件中的内容,这个文件下的用户不能访问ftp,看看是否有uftp,如有就注释掉
1.3、重启
sudo service vsftpd restart
1.4 客户端软件:WinSCP/FileZilla
安装JDK
2.1 使用ftp上传JDK,打开命令界面,解压文件到/opt/apache目录下
tar -zxvf jdk.tar.gz -C /opt/apache
可以重命名也可以不用。。
2.1 删除自带JDK
sudo dpkg --list | grep -i jdk // 查找自带
sudo apt-get purge openjdk*
// 然后再看看
2.2 配置
sudo gedit /etc/profile
#set java environment
JAVA_HOME=/opt/apache/jdk1.8
export JRE_HOME=/opt/apache/jdk1.8/jre
export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH
export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH
2.3 需要重启,在阿里云管理点两下就行了。
2.4 查看版本
java -version
安装RabbitMQ
3.1 上传安装包文件
3.2 进入上传目录
sudo dpkg -i xxx.deb // 执行安装
sudo apt-get -f install //提示缺少依赖包,执行,然后再次安装
3.3 修改配置
vi /usr/lib/rabbitmq/bin/rabbitmqctl
.........
RABBITMQ_USE_LONGNAME=${RABBITMQ_USE_LONGNAME} \
HOME=/var/lib/rabbitmq \ // 需要加上这么一句
............
// 才能使用 ./rabbitmqctl status // 使用rabbitmqctl 插件管理..
// 进入安装目录
cd /usr/lib/rabbitmq/bin/
3.4 添加用户并加入管理员
sudo ./rabbitmqctl add_user admin admin123
sudo ./rabbitmqctl set_user_tags admin administrator
3.5 添加vhost
./rabbitmqctl add_vhost [vhost_name]
3.6 赋予权限
// 把sycamore的vhost授予cashing-tier完全的访问权限
./rabbitmqctl set_permissions -p sycamore cashing-tier ".*" ".*" ".*"
// 验证权限是否正确的赋予oak vhost
./rabbitmqctl list_permissions -p oak
3.6 后台启动
./rabbitmq-server -detached
3.7 设置远程访问
./rabbitmq-plugins enable rabbitmq_management
// 远程访问端口:15672
安装Nginx
1、wget http://nginx.org/keys/nginx_signing.key
2、sudo apt-key add nginx_signing.key
3、vi /etc/apt/sources.list
4、deb http://nginx.org/packages/ubuntu/ trusty nginx
5、deb-src http://nginx.org/packages/ubuntu/ trusty nginx
6、apt-get update
7、apt-get install nginx
8、nginx -v // 查看版本
9、找到配置文件:ps -ef | grep nginx
重启: ..../nginx -s reload
安装svn(所有的行都必须顶格)
sudo apt-get install subversion
// 验证
svn --version
// 创建SVN版本库
// 创建项目目录和svn仓库
sudo mkdir /home/svn
sudo mkdir /home/svn/repository
sudo chmod -R 777 /home/svn/repository
sudo svnadmin create /home/svn/repository
// 进入repository目录,有:conf、db。。。等文件
sudo chmod -R 777 d
// 设置访问权限
sudo vim /home/svn/repository/conf/svnserve.conf
// 去掉
anon-accedd = read
auth-accedd = write
password-db = passwd
// 前的注释
添加访问用户
sudo vim /home/svn/repository/conf/passwd
// 输入
wang = 12345
// 设置用户权限
sudo vim /home/svn/repository/conf/authz
// 输入
admin = wang //用户王属于admin权限组
@admin = rw //admin权限组的权限是读和写
* = r 所有的组都具有读权限
// 测试
// 启动服务器
svnserve -d -r /home/svn
// -d:表示在后台运行
// -r:指定服务器的根目录
// 查看svn是否运行
ps aux | grep svnserve
// 客户端访问(RapidSVN/TortoiseSVN
// svn://192.168.1.1/repository
阿里云添加二级域名
1、进入域名管理
http://www.aliyun.com 登录,点击”云解析“,找到要解析的一级域名xxxx.com
2、填写信息
点击右侧“解析”按钮
点击“添加解析”,依次填入:记录类型:A,二级域名前缀aa,记录值:目标IP(不含端口),其他默认,点击“保存”。
3、测试添加的域名
ping aa.xxxx.com ,如出现ip地址,表名解析成功
4、登录目标服务器,修改nginx配置文件
比如添加:aa
cd /etc/nginx/conf.d
vi amqp.conf
输入:
server {
listen 80; #监听的端口
server_name aa.xxxx.com; #监听的域名
location / {
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://localhost:9090; #跳转的url和接口
}
access_log logs/aa_access.log; #生成的日志,
只需修改: aa_access.log,文件自动生成。
}
5、重启Nginx
cd /usr/sbin
./nginx -s reload