新服务器环境安装和项目部署流程

本文涉及的产品
云数据库 RDS MySQL Serverless,0.5-2RCU 50GB
简介: 记录一下在服务器部署项目的过程,长期更新涉及:Java、tomcat、nginx、mysql、ssl、域名、服务器docker方式搭建服务器环境参考:使用docker快速搭建服务器环境环境阿里云ECS服务器、阿里云购买的域名、阿里云购买的sslCentOS 6.9 64位购买服务器配置安全组配置常用端口访问,比如22、8080、3306等购买域名购买域名为 xxxxx.com购买后,在阿里云里可以购买免费的ssl证书(百度有教)。

记录一下在服务器部署项目的过程,长期更新
涉及:Java、tomcat、nginx、mysql、ssl、域名、服务器
docker方式搭建服务器环境参考:使用docker快速搭建服务器环境

环境
  • 阿里云ECS服务器、阿里云购买的域名、阿里云购买的ssl
  • CentOS 6.9 64位
购买服务器
  • 配置安全组
    配置常用端口访问,比如22、8080、3306等

  • 购买域名

  1. 购买域名为 xxxxx.com
  2. 购买后,在阿里云里可以购买免费的ssl证书(百度有教)。
  3. 解析xxx.xxxxx.com到服务器ip
  4. 备案。国内服务器需要备案,否则无法通过域名访问到你的网站。你也可以选择使用https方式暂时免去备案
服务器环境配置
  • 远程登录服务器
    Windows下远程管理服务器软件:WinSCP
    Windows下SSH登录服务器软件:Xshell
    Mac下远程管理服务器软件:ForkLift
    Mac下SSH登录服务器软件:autossh工具

  • 下载Java
    安装包下载
    注意,需要手动下载,因为oracle下载Java的时候有个同意协议的操作,如果用命令行方式安装Java,会出问题。所以直接手动下载,然后上传到服务器内即可。我安装的是server-jre-8u181-linux-x64.tar.gz

  • 安装Java
    我的解压路径

/usr/java/

命令行操作

tar -zxvf jdk-8u161-linux-x64.tar.gz
vi /etc/profile 
source /etc/profile

vi编辑profile文件时,输入下面的文字(注意Java解压路径)

#set java environment 
JAVA_HOME=/usr/java/jdk1.8.0_161 
JRE_HOME=/usr/java/jdk1.8.0_161/jre
CLASS_PATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib 
PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin 
export JAVA_HOME JRE_HOME CLASS_PATH PATH
  • 下载Tomcat
    下载地址
    和Java一样,手动下载,然后上传到服务器

  • 安装Tomcat
    把下载下来的压缩包解压到目录,我的解压路径

/usr/tomcat/

命令行操作

tar zxvf apache-tomcat-9.0.6.tar.gz
  • 设置Tomcat Host Manager 网页访问(可选)
    进入 tomcat根目录/conf/tomcat-users.xml,进入以下代码添加用户
<role rolename="manager-gui"/>
<role rolename="admin-gui"/>
<user username="admin" password="admin123" roles="admin-gui,manager-gui"/>

这样admin这个用户就可以用网页登录Host Manager、Server Status和Manager App。如果不做此操作,日后要发布应用必须使用命令行。

  • 设置tomcat开机自启动(推荐)
    进入 /etc/rc.d/rc.local 加入以下配置,注意路径
export JAVA_HOME=/usr/java/jdk1.8.0_161
/usr/tomcat/apache-tomcat-9.0.6/bin/startup.sh start

然后设置rc.local为可执行文件,并重启服务器

chmod +x /etc/rc.d/rc.local
shutdown -r now

重启完成后重新登录服务器,检查tomcat是否启动。如果什么都不返回,则tomcat服务未开启

lsof -i:8080

如果报错找不到命令,则yum方式安装

yum install lsof
使用Nginx

如果需要在服务器里多域名访问多个项目,如公司产品和公司官网。则可以使用nginx进行代理。注意前提是购买的域名已经解析到了服务器(将ip解析到xxx.xxxxx.com)

需要注意的是,安装pcre的时候,在解压了pcre包后,进行make等操作成功以后,要将pcre文件夹放/usr/src下,而后在编译nginx时,需要这样:
./configure --with-pcre=/usr/src/pcre目录
make
make install
否则可能会报错找不到pcre
  1. 如果你要所有项目都使用https,则需要将他们配置在443端口的ssl配置节点。
  2. nginx访问静态资源可能会报错Permission Denied,此时应该讲nginx用户改为root,如代码里第一行
  3. 关于域名ssl证书的设置,阿里云里有教
  4. 阿里云可以配置免费ssl,但是只能配置单域名ssl

user  root; # 用户为root
worker_processes  1;

error_log  logs/error.log;
#error_log  logs/error.log  notice;
#error_log  logs/error.log  info;

pid        logs/nginx.pid;


events {
    worker_connections  2048;
}


http {
    include       mime.types;
    default_type  application/octet-stream;

    #log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
    #                  '$status $body_bytes_sent "$http_referer" '
    #                  '"$http_user_agent" "$http_x_forwarded_for"';

    access_log  logs/access.log ;

    sendfile        on;
    #tcp_nopush     on;

    #keepalive_timeout  0;
    keepalive_timeout  65;

    #gzip  on;


    # HTTPS server 证书

    server {
        listen 443;
        server_name xxx.xxxxx.com; # 阿里云里配置的域名,此域名已经申请了ssl证书

        ssl on;
        root html;
        index index.html index.htm;
        ssl_certificate   cert/212312312321367.pem; #阿里云里下载的证书文件
        ssl_certificate_key  cert/2149412231235300167.key;#阿里云里下载的证书文件
        ssl_session_timeout 5m;
        ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
        ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
        ssl_prefer_server_ciphers on;
        
    # 访问 https://xxx.xxxxx.com/tomcat 可直接访问tomcat管理页面
        location /tomcat {
            proxy_pass   http://127.0.0.1:8080/manager/html;
            proxy_redirect  off;
            proxy_set_header  X-Real-IP $remote_addr;
            proxy_set_header  X-Forwarded-For $proxy_add_x_forwarded_for;       
    }
        # 配置tomcat管理页的静态资源,不配置的话,访问tomcat管理页时图片等资源无法加载
        # 这里我将webapp/ROOT下的管理页静态资源复制到了 /usr/local/nginx/html/下
    location ~* \.(gif|jpg|jpeg|css|js|png)$ {
        root /usr/local/nginx/html/;
    }

    }

}

此时访问 https://xxx.xxxxx.com/manager就可以访问Tomcat管理页

安装Mysql

  • 检查系统是否安装其他版本的MYSQL数据
yum list installed | grep mysql
yum -y remove mysql-libs.x86_64
  • 安装MYSQL数据库

更新:简便安装方法:centos6.9安装mysql

准备工作

wget http://repo.mysql.com/mysql-community-release-el6-5.noarch.rpm
rpm -ivh mysql-community-release-el6-5.noarch.rpm
yum repolist all | grep mysql
yum install mysql-community-server -y
  • 设置为开机启动
chkconfig --list | grep mysqld
chkconfig mysqld on
  • 设置密码
/usr/bin/mysqladmin -u root password 123456
  • 设置远程访问(可选)
    root登录数据库,输入
# 注意填写root的密码
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'youpassword' WITH GRANT OPTION;
# 重载授权表
FLUSH PRIVILEGES;

如果设置后依旧无法访问,则检查服务器是否开启3306端口,或检查/etc/my.cnf里是否有bind-address=127.0.0.1,有则注释掉

相关实践学习
基于函数计算快速搭建Hexo博客系统
本场景介绍如何使用阿里云函数计算服务命令行工具快速搭建一个Hexo博客。
相关文章
|
9天前
|
网络安全 Apache
Apache服务器安装SSL证书
Apache服务器安装SSL证书
14 0
|
10天前
|
开发框架 JavaScript 中间件
node+express搭建服务器环境
node+express搭建服务器环境
node+express搭建服务器环境
|
1天前
|
弹性计算 JavaScript Java
阿里云服务器搭建部署宝塔详细流程
以下是内容的摘要: 本文主要介绍了在阿里云上创建和配置服务器环境的步骤,包括注册阿里云账号、实名认证、购买和设置服务器、域名的获取与备案、以及使用宝塔面板安装和配置环境。首先,用户需要注册阿里云账号并进行实名认证,选择合适的服务器配置。接着,购买服务器后,要准备并备案域名,以便通过友好的网址访问网站。在服务器上安装宝塔面板,可以方便地管理和配置LAMP/LNMP/Tomcat/Node.js等应用环境。完成这些步骤后,用户还需要在宝塔面板中安装MySQL、Redis等数据库,部署Java或Vue项目,并配置相关端口。最后,将前端项目打包上传至服务器,并设置站点,即可实现网站的上线。
|
2天前
|
应用服务中间件 Linux 开发工具
如何在阿里云服务器快速搭建部署Nginx环境
以下是内容的摘要: 本文档主要介绍了在阿里云上购买和配置服务器的步骤,包括注册阿里云账号、实名认证、选择和购买云服务器、配置安全组、使用Xshell和Xftp进行远程连接和文件传输,以及安装和配置Nginx服务器的过程。在完成这些步骤后,你将能够在服务器上部署和运行自己的网站或应用。
|
2天前
|
人工智能 安全 云计算
阿里云服务器购买之后发票如何申请?申请发票流程及常见问题参考
申请发票是很多用户尤其是企业级用户在购买完阿里云服务器之后非常关注的问题,对于初次购买阿里云服务器的用户来说,往往并不清楚如何找阿里云申请发票,本文以图文形式为大家介绍阿里云服务器购买完成之后申请发票的详细流程以及常见问题。
阿里云服务器购买之后发票如何申请?申请发票流程及常见问题参考
|
3天前
|
NoSQL 关系型数据库 MySQL
阿里云服务器部署项目流程
本文主要讲解阿里云服务器的部署,如何选择配置等
|
6天前
|
关系型数据库 MySQL 数据库连接
Django(四):Django项目部署数据库及服务器配置详解(MySQL)
Django(四):Django项目部署数据库及服务器配置详解(MySQL)
29 11
|
17天前
|
Ubuntu Linux 虚拟化
【Linux】ubuntu安装samba服务器
【Linux】ubuntu安装samba服务器
|
18天前
|
Linux
Linux安装bind9搭建自己的域名服务器
Linux安装bind9搭建自己的域名服务器
11 0
|
22天前
|
弹性计算 Serverless 数据库
ECS安装问题之docker安装如何解决
ECS(Elastic Compute Service,弹性计算服务)是云计算服务提供商提供的一种基础云服务,允许用户在云端获取和配置虚拟服务器。以下是ECS服务使用中的一些常见问题及其解答的合集:

热门文章

最新文章