记一次腾讯云部署项目过程

云服务:腾讯云
系 统 :ubuntu1.6

一、安装Jdk

  • 1.首先去官网下载jdk安装包并用xftp或其他工具上传到自己的服务器上去:
  • 2.到jdk安装目录下执行解压命令:
    sudo tar -zxvf ./jdk-8u171-linux-x64.tar.gz -C /usr/local //将jdk解压到/usr/local目录下 ./代表当前目录 c 指定解压目录
  • 3.配置环境变量:
    用 sudo vim /etc/profile 打开系统配置环境变量的文件 ,在文件末尾加入配置如下内容

    export JAVA_HOME=/root/app/jdk1.8.0_161 //JAVA_HOME为jdk的解压目录
    export JRE_HOME=$JAVA_HOME/jre
    export CLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib:$CLASSPATH
    export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH

    添加完成保存退出后执行 source /etc/profile 使配置文件生效。

    二、安装mysql

    mysql安装命令

    sudo apt-get install mysql-server
    sudo apt-get install mysql-client
    sudo apt-get install libmysqlclient-dev

    启动、关闭服务和查看运行状态

    sudo service mysql start
    sudo service mysql stop
    sudo service mysql status

安装过程中会提示输入root用户的密码和确认密码,两次密码保持一致并记下来,最好不要设置过于简单

登陆mysql
mysql -u root -p 后按回车并输入刚才安装过程的密码。

提示:
mysql 5.7版本的配置文件有所变化,cat /etc/mysql/my.cnf 打开配置文件看到如下内容:

!includedir /etc/mysql/conf.d/
!includedir /etc/mysql/mysql.conf.d/

里面包含了两个子文件夹,需要修改的话 去打开/etc/mysql/mysql.conf.d/mysqld.cnf 这个配置文件,

允许远程连接:
打开 /etc/mysql/mysql.conf.d/mysqld.cnf 这个配置文件 注释掉 bind-address= 127.0.0. 也就是在前面加 #
这个时候mysql还是不能支持远程连接的,

不安全的做法:

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root' WITH GRANT OPTION;//这样做不太安全,可以再创建一个用户允许远程连接

安全的做法:
创建一个mysql用户:

CREATE USER [email protected] IDENTIFIED BY 'password';

授予权限:

GRANT ALL ON *.* TO 'username'@'ip' IDENTIFIED BY 'password' WITH GRANT OPTION;//根据具体情况授予相应权限

三、安装Nginx

首先安装前需要依赖第三方库:

  • 1.安装gcc g++的依赖库
    sudo apt-get install build-essential
    sudo apt-get install libtool
  • 2.安装pcre依赖库(http://www.pcre.org/
    sudo apt-get update
    sudo apt-get install libpcre3 libpcre3-dev
  • 3.安装zlib依赖库
    sudo apt-get install zlib1g-dev
  • 4.安装SSL依赖库
    sudo apt-get install openssl

接下来真正要安装nginx,安装步骤如下:(以上为准备工作)

  • 1.去nginx官网下载稳定版nginx安装包上传到服务器 或执行 wget http://nginx.org/download/nginx-1.14.0.tar.gz 下载安装包
  • 2.将nginx进行解压 sudo tar -zxvf ./nginx-1.14.0.tar.gz -C ./ //将nginx解压到当前目录
  • 3.进入到nginx 解压目录 cd nginx-1.14.0/
  • 4.对nginx进行配置 sudo ./configure --prefix=/usr/local/nginx //这种配置暂不支持https协议ssl配置,支持的将在后面说到 ./configure详细说明请参考:http://nginx.org/en/docs/configure.html
  • 5.进行编译 执行make命令 sudo make;
  • 6.进行安装 sudo make install

nginx 安装路径默认为:/usr/local/nginx

nginx 常用命令:
nginx 启动命令: ./sbin/nginx -c ./conf/nginx.conf //指定配置文件启动命令
nginx 重启命令: ./sbin/nginx -s reload -c ./conf/nginx.conf //指定配置文件重启

四、安装Redis

  • 1、去官网下载redis安装包上传到自己服务器上,或执行 wget http://download.redis.io/releases/redis-4.0.9.tar.gz
  • 2、进入Redis解压目录,进行编译: 执行sudo make //这个过程其实需要gcc环境,在安装nginx时,已经安装过
  • 3、安装:执行 sudo make install
  • 4.Redis 安装路径:/usr/local/bin

一些配置:
这个时候进入redis的安装目录 执行./redis-server 启动redis 服务端,通过客户端连接(./redis-client)是不需要密码的!
下面配置需要密码的方式。
进入redis的解压目录:将redis.conf文件拷贝一份,放到任意目录下,然后编辑,找的有关password的说明,加入如下配置:
requirepass password
然后保存退出!再次启动服务端,这次加上了redis.conf配置文件
./redis-server /my/redis.conf
客户端启动:
./redis-client -a pasword //password 为刚才的密码

五、安装Tomcat

这个安装比较简单:
去官网下载tomcat上传到服务器上,或执行 wget http://mirror.bit.edu.cn/apache/tomcat/tomcat-8/v8.5.30/bin/apache-tomcat-8.5.30.tar.gz
然后执行解压命令:
tar -zxvf ./apache-tomcat-8.5.30.tar.gz -C ./
接下来将war包放入webapp目录下,进入bin目录下 执行./startup.sh 启动tomcat

这时访问我们的项目是需要输入项目名的,如果是8080端口启动,并且还要指定端口,那么如何输入域名直接访问呢?
接下来先配置Tomcat,访问的时候不用输入项目名

  • 1.打开tomcat的配置文件 server.conf文件,找到Host节点,加入如下内容
    // 例如 "/home/ubuntu/app/apache-tomcat-8.5.30/webapps/wechat_bussiness/" ---->也就是配置虚拟目录
    同时将Host节点的appBase改为 appBase="",不然项目可能会被加载两次。
  • 2.重启Tomcat

    六、配置Nginx

    接下来解决8080端口问题,浏览器http请求默认是80端口,Nginx启动后默认正好是监听80端口。所以我们可以利用Nginx做请求转发,将80请求转到8080。而且由于Tocmcat处理静态资源的能力比较弱,我们又可以利用Nginx做动静分离,也就是将静态资源请求不经过Tomcat,而直接访问到文件,当然Nginx的作用可远不止这些哦!
    以下是Nginx配置,打开nginx配置文件 nginx.conf

  server {
   listen  80     ; 监听端口
   server_name  域名;

  location / {
       root   html;
       index  index.html index.htm;
       proxy_pass http://localhost:8080/;
   }

     location ^~ /static/ {

       root  /home/ubuntu/app/apache-tomcat-8.5.30/webapps/项目名/;#静态资源文件路径

      expires 30d;
    }
    
通过这样简单的配置,就可以直接通过域名访问了,接下来是Nginx对Https的支持

原文地址:https://www.cnblogs.com/bingoj/p/11691439.html

时间: 2024-10-10 20:34:02

记一次腾讯云部署项目过程的相关文章

Hexo 博客 之 腾讯云部署过程

写在前面 Hexo 博客搭好了有差不多两周时间了,这期间走了很多弯路,跳了很多坑.一些坑自己 bing 到了答案,找到了解决方法,一些坑则是自己摸索出来的解决方法.现在准备写几篇关于搭建流程.搭建过程中遇到的问题和解决方法.俗话说得好,好记性不如烂键盘嘛. 暂时准备写三篇关于 Hexo 博客搭建的博文: 关于 Hexo 博客 腾讯云部署过程 关于 Hexo 博客 NexT 主题的美化插件设置 点击这里 关于 Hexo 博客 添加域名映射和 https 点击这里 本文介绍 本博客是关于 Hexo

腾讯云部署自己项目步骤

最近,自己用Java WEB完成了一个网站,然而,不知道如何部署到云服务器上.百度了很多,也没有完整的,后来自己摸索,完成了部署.本文,将介绍如果将web项目部署到腾讯云服务器上. 在这里呢,很多人就要问了,为什么是腾讯云呢?其实很简单,腾讯云有一个学生认证,腾讯提供0元购买一个cn域名,1元购买云服务器.简直是学生党的福利,虽然服务器是入门级的,但是绝对够用了. 接下来,开始教程! 一.服务器和域名的购买 登陆腾讯云(网址自行百度).如果你是学生,强烈建议你和我一样完成学生认证,土豪请无视这一

腾讯云部署Flask应用

由于新浪云现在不免费了.而且云豆也用完了.所以去腾讯云申请了个学生云主机,一元一个月. 不过部署开发环境还是有点麻烦的,搞了好几天,终于部署成功了! 下面说部署过程: 我云主机用的是 Ubuntu 14.04.1 LTS系统,带LNMP框架,Pyhon2.7(先是尝试用centose6.5,但是一直因为python版本不对和mysql-python安装失败的问题,搞了好久没有成功所以就换成Ubuntu了) mysql,nginx,这些都是安装好了的. 1.默认安装好的mysql是没有密码的.所以

腾讯云部署golang flow流程,vue.js+nginx+mysql+node.js

这次总算把js-ojus/flow的ui部署到腾讯云上,比较吐槽的就是,为啥这么复杂,vue.js前后端分离,比golang编写的部署方面复杂几万倍.真是浪费人生啊. golang+sqlite写的东西,直接传到任意文件里,运行即可.--当然,适用于小型的东西. vue.js,要安装node.js环境,要nginx环境,要配置nginx跨域:要安装mysql数据库,要配置用户.体验地址: http://111.230.181.182:8080 有问题多多交流啊:qq504284 微信hotqin

记一次腾讯云MySQL数据库数据回滚

如题,因为操作人员的问题,需要对数据库数据进行回滚. 可以看到,设置了7天自动备份,且是物理冷备. 什么是物理冷备?科普一下: (1)热备:在数据库运行时,直接进行备份,对运行的数据库没有影响.(2)冷备:在数据库停止运行的时候进行备份,这种备份方式最为简单,只需要拷贝数据库物理文件即可.(3)温备:同样是在数据库运行的时候进行备份的,但对当前数据库的操作会产生影响. 热备份的缺点: 1.尽量不要出错,否则后果会很严重. 2.如果热备份不成功,所得结果不可用于时间点的数据恢复. 3.维护的工作比

[视频教程]利用SSH隧道进行远程腾讯云服务器项目xdebug调试

我的远程服务器是腾讯云的ubuntu系统机器,本地我的电脑系统是deepin的系统,使用的IDE是vscode.现在就来使用本地的IDE来调试腾讯云中为网站项目实现逻辑是访问网站域名后,请求被转发给腾讯云本地的9001端口,通过ssh隧道,会直接被转发给deepin本地系统的9001端口.vscode会监听9001端口接收到腾讯云传递过来的请求,进入断点调试模式,结束后会把请求返回给腾讯云,腾讯云继续处理请求 首先安装必须的扩展 1.IDE中安装扩展PHP Debug,直接安装就行 2.腾讯云中

腾讯云部署Django成功,本地无法访问网页的解决办法

一.服务器运行参数 python manage.py runserver 0.0.0.0:80 python manage.py runserver 0:80 #0是0.0.0.0的缩写 这里两个问题: 1. 使用0.0.0.0 才能在相同网段进行访问,否则只能通过本机(即服务器)进行访问. 2. 80为指定端口号,大小随意,不定. 同时,服务运行正常,服务器对localhost,127.0.0.1均可ping通. 二. 浏览器 浏览器中输入的网址为服务器的公网地址,不论服务器设置的IP是多少.

Weblogic部署项目过程中的一些问题

weblogic启动,最后一段出现的警告: <Warning> <Log Management> <BEA-170011> <The LogBroadcaster on this server failed to broadcast log messages to the admin server. The Admin server may not be running. Message broadcasts to the admin server will be

浅谈开源Kafka与腾讯云cKafka

今天下午参加了腾讯云+社区组织的kafka公开课,收获良多.正巧在工作中也遇到过kafka的问题,今天听完之后产生了非常多的感想.无奈篇幅有限,本人又文笔愚钝,所以今天的分享主要提及对我感触最深的内容.分享的顺序还是按照老形式来进行吧(提出疑问--解决疑问) [提出疑问] 1.为什么要设计kafka? 2.开源的kafka架构是怎么样的? 3.腾讯云的ckafka架构是怎样的? 4.腾讯云的ckafka架构解决了什么样的问题? 5.我对开源kafka的设想? 一.为什么要设计kafka? 扩容性