[原创] Go语言在Centos上的部署
序言
Golang是个好东西啊。部署非常简单,对于运维人员来说太爽了。
传统的Nginx啊Apache啊,外加PHP以及各个插件啊搞得头晕。
用了Go之后就什么都不需要了。只要把生成好的文件向服务器上一丢就ok。
目录
一、准备工作
1.1 安装或更新gcc gcc-c++
因为我安装的Centos是绝对纯洁滴。啥也没有。没辙了。只有先安装个编译器了。
# yum install gcc gcc-c++
1.2 创建需要使用的目录
source 是用来存放源码的文件夹。package是用来存放编译后的库文件。lnmp是我们真正需要的东西才放里面。(nginx+mysql+memcached+php)
# mkdir /source/# mkdir /package/# mkdir /lnmp/
二、开始安装(nginx篇)
2.1 解压pcre
[官方网站] http://www.pcre.org/
命令流程:
# cd /source/# wget http://jaist.dl.sourceforge.net/project/pcre/pcre/8.38/pcre-8.38.tar.gz # tar -zxvf pcre-8.38.tar.gz
说明:不需要编译,只需要解压就行。
2.2 解压zlib
[官方网站] http://zlib.net/
命令流程:
# cd /source/# wget http://zlib.net/zlib-1.2.8.tar.gz # tar -zxvf zlib-1.2.8.tar.gz
说明:不需要编译,只需要解压就行。
2.3 安装nginx
[官方网站] http://nginx.org/
命令流程:
# cd /source/# wget http://nginx.org/download/nginx-1.8.0.tar.gz # .tar.gz # # ./configure --prefix=/lnmp/nginx --with-pcre=/source/pcre-8.38 --with-zlib=/source/zlib-1.2.8 # make # make install
--with-pcre:用来设置pcre的源码目录。
--with-zlib:用来设置zlib的源码目录。
因为编译nginx需要用到这两个库的源码。
小章总结:
此处告一段落,nginx安装完成。我们可以先满足下自己的欲望心。打开nginx服务看看Hello World吧。
启动nginx
# /lnmp/nginx/sbin/nginx
启动后可以再浏览器中打开页面,会显示nginx默认页面。
三、开始安装(php篇)
3.1 安装libxml2
[官方网站] http://xmlsoft.org/
命令流程:
# cd /source/# wget ftp://xmlsoft.org/libxml2/libxml2-2.9.3.tar.gz # .tar.gz # # ./configure \ # --prefix=/package/libxml2 --with-python=no # make # make install
这里--with-python=no是
3.2 安装php
[官方网站] http://php.net/
命令流程:
# cd /source/ # wget http://cn2.php.net/distributions/php-7.0.2.tar.gz # tar -zxvf php-.tar.gz # cd php- # ./configure \ # --prefix=/lnmp/php \ # --with-libxml-dir=/package/libxml2 \ //打开libxml2库的支持 # --with-config-file-path=/lnmp/php/etc \ //配置文件所在目录 # --enable-mbstring \ //支持mbstring库 # --enable-fpm \ //支持php-fpm(推荐打开) # --with-mysqli //打开mysqli模块 # make # make install
四、开始安装(mysql篇)
4.1 安装cmake
[官方网站] https://cmake.org/
命令流程:
# wget https://cmake.org/files/v3.4/cmake-3.4.1.tar.gz # tar -zxvf cmake-3.4.1.tar.gz # cd cmake-3.4.1 # ./configure --prefix=/package/cmake # make # make install # export PATH=/package/cmake/bin:$PATH //设置环境变量。可忽略,只是为了你以后使用cmake方便点。
4.2 安装ncurses
[官方网站] http://ftp.gnu.org/gnu/ncurses/
命令流程:
# wget http://ftp.gnu.org/gnu/ncurses/ncurses-6.0.tar.gz # tar -zxvf ncurses-6.0.tar.gz # cd ncurses-6.0 # ./configure --prefix=/package/ncurese # make # make install
4.3 安装mysql
[官方网站] http://www.mysql.com/
命令流程:
不带boost安装方式
// 这个是不带boost版本的mysql源码。你可以使用以下的参数在编译过程中自动下载boost // -DDOWNLOAD_BOOST=1 -DWITH_BOOST=/package/boost # wget http://cdn.mysql.com/Downloads/MySQL-5.7/mysql-5.7.10.tar.gz # tar -zxvf mysql-.tar.gz # cd mysql- # cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \ # -DDOWNLOAD_BOOST= -DWITH_BOOST=/package/boost \ //设置自动下载boost库,并放到-DWITH_BOOST指定的路径里。 # -DCURSES_LIBRARY=/package/ncurses/lib/libncurses.a \ //ncurses库libncurses.a # -DCURSES_INCLUDE_PATH=/package/ncurses/include //ncurses库头文件 # make # make install
自带boost安装方式
# wget http://cdn.mysql.com/Downloads/MySQL-5.7/mysql-boost-5.7.10.tar.gz # tar -zxvf mysql-boost-.tar.gz # cd mysql- # cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \ # -DWITH_BOOST=/boost/boost_1_59_0 //boost库的路径 # -DCURSES_LIBRARY=/package/ncurese/lib/libncurses.a \ //ncurses库libncurses.a # -DCURSES_INCLUDE_PATH=/package/ncurses/include //ncurses库头文件 # make # make install
说明:mysql从5.7版本后就需要boost库的支持了。并且非常恶心的是mysql需要指定的boost版本号,高了或低了都有可能导致编译不通过。
到此,使用CentOS7上常用的、全新的Web模块基本已经完成了,剩下的就是对这些软件进行配置咯。哈哈,其实代码多,但是了解后真的挺简单,就那几个命令。怎么样?是不是蛮简单的。
[原创] Go语言在Centos上的部署的更多相关文章
- centos上发布部署python的tornado网站项目完整流程
先说下大体上的做法,开发环境上要新弄一个 virtualenv的环境,在这个里面放你的开发调试,当然这个其实也不是必须的,但是这样会方便管理一些. 再在centos上也弄一个 virtualenv虚拟 ...
- CentOS上手工部署kubernetes集群
本文完全是根据二进制部署kubernets集群的所有步骤,同时开启了集群的TLS安全认证. 环境说明 在下面的步骤中,我们将在三台CentOS系统的物理机上部署具有三个节点的kubernetes1.7 ...
- RAP在centos上的部署
在centos7上部署RAP(非官方) 作者批注:该部署文档为网友贡献,仅供参考.war请参考主页README.md下载最新版本哟~~~ 感谢热情网友的Wiki整理!万分感谢! 系统: centos7 ...
- 在CentOS上安装部署MooseFS分布式文件系统
参考资料: http://www.moosefs.org/tl_files/manpageszip/moosefs-step-by-step-tutorial-cn-v.1.1.pdf 环境介绍:OS ...
- 使用虚拟机在CentOS上安装部署数据库使用
镜像下载.域名解析.时间同步请点击 阿里云开源镜像站 本节描述使用数据库的基本操作.通过此节您可以完成创建数据库.创建表及向表中插入数据和查询表中数据等操作. 2.1 前提条件 ●openGauss正 ...
- CentOS Mono Nginx 部署 MVC4+WebApi
CentOS Mono Nginx 部署 MVC4+WebApi 经过几天的折磨,终于在CentOS上成功部署了MVC4+WebApi.Mono上的服务器推荐两种:Jexus(国产高人写的一款很牛的服 ...
- 在CentOS上部署基于dnx/coreclr的ASP.NET 5应用程序
在Ubuntu上写好了一个简单的ASP.NET 5应用程序,尝试将这个程序部署在没有mono环境的CentOS服务器上. 部署步骤如下: 1)安装libuv(KestrelHttpServer需要它) ...
- Centos 上部署 tomcat7
在 Centos 上部署 tomcat7 搜索tomcat,选下面红色框框的官网 选箭头指着的版本7, 选 tar.gz 格式, 下载完压缩包,使用 ftpx 工具,放在 centos 的 /opt ...
- 在CentOS 上搭建nginx来部署静态页面网站
在centOs 上搭建nginx来部署静态页面网站 一.部署服务器环境 nginx:轻量级.高性能的HTTP及反向代理服务器,占用内存少,并发能力强,相比老牌的apache作为web服务器,性能更加卓 ...
随机推荐
- 耗时两月,NHibernate系列出炉
写在前面 这篇总结本来是昨天要写的,可昨天大学班长来视察工作,多喝了点,回来就倒头就睡了,也就把这篇总结的文章拖到了今天. nhibernate系列从开始着手写,到现在前后耗费大概两个月的时间,通过总 ...
- Sublime Text3 BracketHighlighter高亮色彩配置
今天玩Sublime ,结果安装了BracketHighlighter插件后,没效果,郁闷,度娘后总结如下: BracketHighlighter插件能为Sublime Text提供括号,引号这类高亮 ...
- 补发:用Meal Prep+模块化饮食来减肥之实操
自从上次读到仰望尾迹云 老师的模块化饮食的帖子,再了解了一些Meal Prep的内容,结合着做Meal Prep健康餐至今已经快一个半月了.整体感觉还可以,所以在这里讲一下自己的心得体会. 分为三个部 ...
- 5 Hbase
# 大纲: * 认识 HBase * HBase 架构 * HBase读写流程 定义: * HBase是一个高可靠性.高性能.面向列.可伸缩的分布式存储系统,利用Hbase 技术可在廉价PC S ...
- 基于ZK构建统一配置中心的方案和实践
背景: 近期使用Zk实现了一个简单的配置管理的小东西,在此开源出来,有兴趣的希望提出您的宝贵意见.如果恰巧您也使用或者接触过类似的东西, 也希望您可以分享下您觉得现在这个项目可以优化和改进的地方. 项 ...
- ubuntu系统theano和keras的安装
说明:系统是unbuntu14.04LTS,32位的操作系统,以前安装了python3.4,现在想要安装theano和keras.步骤如下: 1,安装pip sudo apt-get install ...
- Tomcat7配置及其servlet调用详解
Tomcat 1 Tomcat简介 Tomcat是一个免费的开源的Serlvet容器,它是Apache基金会的Jakarta项目中的一个核心项目,由Apache,Sun和其它一些公司及个人共同开发而成 ...
- 分布式的Id生成器
项目中需要一个分布式的Id生成器,twitter的Snowflake中这个既简单又高效,网上找的Java版本 package com.cqfc.id; import org.slf4j.Logger; ...
- css3 FlexBox 弹性布局
Flex 弹性布局 这个是css3中新添加的内容,现在已经支持所有的浏览器,利用Flex布局,可以简便.完整.响应式地实现各种页面布局. 注意:在设置 flex 后,子元素的flaot ,clear, ...
- Android Studio 快捷键
1.显示注解:F2 2.显示大括号包含范围:Ctrl 3.显示当前文档结构:Ctrl+F12 4.快速打开类:Ctrl+N 5.格式化代码:Ctrl+Alt+L 6.折叠代码:Ctrl+[+/-] 7 ...