最近想要做一个小东西,用到了下面几个中间件或者环境:

Java

Tomcat

Maven

MongoDB

ZooKeeper

Node

  并且恰好碰到腾讯云打折,云主机原价100多一个月,花了30块钱买了三个月。买下后立即动手准备开始环境配置。

  说到环境,少则2小时,多则两三天可能都要整蒙蔽,环境好了,写代码都顺溜,环境整不好,觉都睡不好。

  在公司里都是有专门的运维准备好了Java、MongoDB、MySQL、ZooKeeper等等,有问题也是直接找运维,除了在本机上安装Java、Maven少数几个编程必备的环境,其余基本上不用亲自动手。

  这好久没碰Linux,无奈一上来就只好百度“Linux Java环境配置”、“Linux Tomcat环境配置”、“CentOS如何开启防火墙”等等等等。

  做一个“通用”的一键安装程序(准确来说一个shell脚本)的想法就产生了。

  OneStall,应该叫“One Install”,去掉了In,“Stall”也表示摊位的意思,“OneStall”一个摊位,也符合对这个一键安装程序的预期。目前OneStall做的比较定制化,上面提到的环境也是固定的版本,有时间我会逐渐完善OneStall,详细的shell脚本可通过我的GitHub仓库查看(OneStall),获取OneStall完整安装包请关注博客下方的公众号(CoderBuff)并回复“onestall”关键字获取。这篇博客不对shell脚本进行解读,主要记录以上环境在Linux下的配置命令步骤,这实际上也就解开了OneStall脚本的“核心秘密”。

【Java】

  Java环境的安装在Linux的重点是将Java写入环境变量中,这里以jdk-8u191为例。
1. 【/home/】下载Linux版本的JDK(jdk-8u191-linux-x64.tar.gz)至Linux系统中的/home/中(文件目录任意,这里直接在home目录下)。
2. 【/home/】执行tar -zxvf jdk-8u191-linux-x64.tar.gz解压至当前目录
3. 【/home/】执行mkdir /usr/local/jdk,在/usr/local目录下创建存放JDK的目录
4. 【/home/】执行mv ./jdk1.8.0_191/* /usr/loca/jdk,将JDK移至/usr/local/jdk下
5. 【/home/】执行vim /etc/profile修改全局变量
6. 【/etc/profile】,将以下配置放到/etc/profile文件的最末尾:

export JAVA_HOME=/usr/local/jdk"
export PATH=\$JAVA_HOME/bin:\$PATH"
export CLASSPATH=.:\$JAVA_HOME/lib/dt.jar:\$JAVA_HOME/lib/tools.jar"

7. 【/etc/profile】在vim中保存并退出
8. 【/home/】执行source /etc/profile命令使全局变量生效
9. 【/home/】执行java -version查看Java环境是否配置成功

【Tomcat】

  Tomcat安装比Java安装要简单一点,不需要配置环境变量,只需要知道在哪个目录下启动Tomcat就行,如果遇到开启了防火墙,把Tomcat默认的8080端口开了就行,这里的Tomcat版本以8.5.37为例。
1. 【/home/】下载Linux版本的Tomcat(apache-tomcat-8.5.37.tar.gz)至Linux系统中的/home/中(文件目录任意,这里直接在home目录下)
2. 【/home/】执行tar -zxvf apache-tomcat-8.5.37.tar.gz解压至当前目录
3. 【/home/】执行mkdir /usr/local/tomcat,在/usr/local目录下创建存放Tomcat的目录
4. 【/home/】执行mv ./apache-tomcat-8.5.37/* /usr/loca/tomcat,将Tomcat移至/usr/local/tomcat下
5. 【/usr/local/tomcat/bin】执行cd /usr/local/tomcat/bin命令,进入Tomcat的启动目录下
6. 【/usr/local/tomcat/bin】执行./startup.sh命令,启动Tomcat
7. 浏览器访问localhost:8080,如果页面出现Tomat页,则启动成功,未成功查看是否开启防火墙,并打开8080端口
8. 【/usr/local/tomcat/bin】执行firewall-cmd --zone=public --add-port=8080/tcp --permanent命令,开启8080端口
9. 【/usr/local/tomcat/bin】执行firewall-cmd --reload命令,刷新防火墙

【 Maven】

有时候会通过Maven命令来构建一些从网上下载的应用,所以在这里我把Maven的配置方法也列了出来。同Java环境配置类似,主要是配置/etc/profile环境变量。
1. 【/home/】下载Linux版本的Maven(apache-maven-3.6.0-bin.tar.gz)至Linux系统中的/home/中(文件目录任意,这里直接在home目录下)。
2. 【/home/】执行tar -zxvf apache-maven-3.6.0-bin.tar.gz解压至当前目录
3. 【/home/】执行mkdir /usr/local/maven,在/usr/local目录下创建存放Maven的目录
4. 【/home/】执行mv ./apache-maven-3.6.0/* /usr/loca/maven,将Maven移至/usr/local/maven下
5. 【/home/】执行vim /etc/profile修改全局变量,将以下配置放到/etc/profile文件的最末尾:

export M2_HOME=/usr/local/maven
export PATH=$M2_HOME/bin:$PATH

保存并退出
6. 【/home/】执行source /etc/profile命令使全局变量生效
7. 【/home/】执行mvn -v查看Java环境是否配置成功

【MongoDB】

  单纯的MongoDB安装并不复杂,其核心要义无非也是解压、配置等。真正麻烦的是MongoDB的权限配置,只有了解MongoDB的基础知识,用户权限的问题,才能更好的上手MongoDB。
1. 【/home/】下载Linux版本的MongoDB(mongodb-linux-x86_64-4.0.5.tgz)至Linux系统中的/home/中(文件目录任意,这里直接在home目录下)。
2. 【/home/】执行tar -zxvf mongodb-linux-x86_64-4.0.5.tgz解压至当前目录
3. 【/home/】执行mkdir /usr/local/mongodb,在/usr/local目录下创建存放MongoDB的目录
4. 【/home/】执行mv ./mongodb-linux-x86_64-4.0.5/* /usr/loca/mongodb,将MongoDB移至/usr/local/MongoDB下
5. 【/usr/local/mongodb】执行cd /usr/local/mongodb进入MongoDB目录,执行vim mongod.conf创建启动MongoDB的配置文件,如下所示:

dbpath=/home/mongo/data #数据文件存储地址
logpath=/home/mongo/mongod.log #mongo日志存储地址
logappend=true #写日志的模式为“追加模式”,true-追加
fork=true #是否后台运行,true-后台运行
auth=true #是否开启认证

保存并退出。
6. 【/usr/local/mongodb/bin】进入MongoDB的bin目录,执行启动命令./mongod --config ../mongod.conf回显以下信息表示启动成功:

about to fork child process, waiting until server is ready for connections.
forked process: 15704
child process started successfully, parent exiting

7. 【/usr/local/mongodb/bin】继续在/usr/local/mongodb/bin目录下执行./mongo进入MongoDB命令行交互模式,回显如下所示:

MongoDB shell version v4.0.5
connecting to: mongodb://127.0.0.1:27017/?gssapiServiceName=mongodb
Implicit session: session { "id" : UUID("5673e588-75ca-4cf8-897c-71a8e31415f3") }
MongoDB server version: 4.0.5
>

8. 接下来就是在MongoDB中配置用户,以及测试MongoDB是否成功安装并启动:
由于在配置文件中配置了auth=true,也就是开启了认证,现在需要在admin数据库中创建一个超级账号,创建过程如下(“<-”表示回车):

use admin <- //切换至admin数据库
回显:switched to db admin
db.createUser({user: "root",pwd: "root",roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]}) <- //创建超级用户
回显:
Successfully added user: {
"user" : "root",
"roles" : [
{
"role" : "userAdminAnyDatabase",
"db" : "admin"
}
]
}
db.auth('root','root') <- //root认证
回显:1
db.createUser({user: "okevin",pwd: "123456",roles: [ { role: "readWrite", db: "mydb" } ]}) <- //创建一个普通账号,对应的数据库是“mydb”,MongoDB的数据库和账号是对应的,就算是超级账号也不能对其他数据库进行写入
回显:
Successfully added user: {
"user" : "okevin",
"roles" : [
{
"role" : "readWrite",
"db" : "mydb"
}
]
}
db.auth('okevin','123456') <- //使用“okevin”账号认证
回显:1
use mydb <- //切换至mydb数据库
回显:switched to db mydb
db.repo.insert({"name":"kevin"}) <- //向数据库插入一条数据,collection为repo
回显:WriteResult({ "nInserted" : 1 })
show collections <- //查看mydb下的collection,验证是否创建repo
回显:repo
db.repo.find().pretty() <- //查看repo下的数据
回显:{ "_id" : ObjectId("5c3f48ad259c266fbe1f1051"), "name" : "kevin" }

以上就配置好了MongoDB

【ZooKeeper】

  ZooKeeper在互联网、分布式应用中也是用得非常多的应用,它可以做**注册中心**,用于实现**分布式锁**等等,下面就是zookeeper-3.4.13单机安装配置。
1. 【/home/】下载Linux版本的ZooKeeper(zookeeper-3.4.13.tar.gz)至Linux系统中的/home/中(文件目录任意,这里直接在home目录下)。
2. 【/home/】执行tar -zxvf zookeeper-3.4.13.tar.gz解压至当前目录
3. 【/home/】执行mkdir /usr/local/zookeeper,在/usr/local目录下创建存放ZooKeeper的目录
4. 【/home/】执行mv ./zookeeper-3.4.13/* /usr/loca/zookeeper,将ZooKeeper移至/usr/local/zookeeper下
5. 【/usr/local/zookeeper/conf】进入ZooKeeper目录,执行mv zoo_sample.cfg zoo.cfg命令,拷贝一份ZooKeeper配置文件。
6. vim zoo.cfg修改ZooKeeper配置文件,将数据文件存储路径修改如下:

dataDir=/home/zk

7. mkdir /home/zk创建ZooKeeper的数据文件路径。
8. 【/home/local/zookeeper/bin】,进入ZooKeeper的启动文件路径,进入/usr/local/zookeeper/bin,执行./zkServer.sh start,如下回显:

Using config: /usr/local/zookeeper/bin/../conf/zoo.cfg
Starting zookeeper ... STARTED

9. 命令./zkServer.sh status,回显以下,表示ZooKeeper启动成功

ZooKeeper JMX enabled by default
Using config: /usr/local/zookeeper/bin/../conf/zoo.cfg
Mode: standalone

【 Node】

  考虑到有时候想用Vue启动前端程序,Node就不可获取,这使用node-v10.15.0-linux-x64.tar.xz版本做演示,大体和JDK配置类似,也是解压、配置环境变量。
1. 【/home/】下载Linux版本的Node(node-v10.15.0-linux-x64.tar.xz)至Linux系统中的/home/中(文件目录任意,这里直接在home目录下)。
2. 【/home/】执行tar -xvf -v10.15.0-linux-x64.tar.xz解压至当前目录
3. 【/home/】执行mkdir /usr/local/node,在/usr/local目录下创建存放Node的目录
4. 【/home/】执行mv ./node-v10.15.0-linux-x64/* /usr/loca/node,将JDK移至/usr/local/node下
5. 【/home/】执行vim /etc/profile修改全局变量
6. 【/etc/profile】,将以下配置放到/etc/profile文件的最末尾:

export NODE_HOME=/usr/local/node
export PATH=\$NODE_HOME/bin:\$PATH

在vim中保存并退出
7. 【/home/】执行source /etc/profile命令使全局变量生效
8. 【/home/】执行node -v和npm -v查看Java环境是否配置成功

获取OneStall完整安装包,请关注下方公众号,并回复“onestall”。

这是一个能给程序员加buff的公众号 

转载于:https://www.cnblogs.com/yulinfeng/p/10293090.html

常用开发环境搭建配置教程(OneStall)相关推荐

  1. 1 Go语言开发环境搭建详细教程+go常见bug合集【Go语言教程】

    Go语言开发环境搭建[Win.Linux.Mac] 1 SDK下载 官网地址:golang.org,因为一些原因国内可能无法访问.可以使用下面第二个链接. 国内地址访问:https://golang. ...

  2. 安卓python3开发环境搭建,Python3开发环境搭建简明教程

    Python3开发环境建立简明教程 ★ 「锐玩道」原文链接 " 剁手得很决绝的今日 那就来份平平无奇的教程吧 (作为 Scrapy 系列的开篇) Python 环境设备 下载 Python ...

  3. PHP开发环境搭建详细教程

    首先你需要安装Apache Server,这里以当前最新版Apache Server2.4为例进行说明,可惜官网并没有提供最新版的msi安装包,连编译后的binary二进制压缩包都没提供,不过我已经编 ...

  4. Rust语言开发环境搭建详细教程

    目录 一.Rust简介 1.rust历史 2.rust吉祥物 二.Rust开发环境搭建 1.C++环境安装 2.Rust下载 3.rust安装 4.rust环境检测 查看rust版本 查看cargo版 ...

  5. android 教程 最新版,Android最新版本开发环境搭建图文教程

    本文只是写了如何配置jdk,以及adt-bundle的配置.对于以前的adt-bundle的版本,会自带cpu/abi系统镜像,经过本文所描述的两个步骤后可以直接创建avd,但是从官网下载的最新的ad ...

  6. 【Win10】Java开发环境搭建新手教程(图文)

    前言 因为网络上java环境搭建的文章多数过旧,或者并不详细,对大部分新手不太友好.为了使一些对计算机不太敏感的学生用户也能成功搭建java环境,特此记录此过程.其中专业内容只为非计算机专业但是需要学 ...

  7. ESP32+CAM Linux 环境搭建配置教程

    本文参考博客: https://blog.csdn.net/xh870189248/article/details/80208099 https://blog.csdn.net/solar_lan/a ...

  8. Windows下Python开发环境搭建简单教程

    Python下载 首先访问Python官方网站:https://www.python.org 如图示选择最新版本点击 Python安装 1.双击执行下载下来的可执行文件 2.在第一个安装界面需要勾选A ...

  9. Udig开发环境搭建/入门教程

    老师让我画地图符号,就一句,把这些符号做出来,看网上说可以用udig,很简单的,你看看 百度百科关于uDig的解释 uDig是一个 open source (EPL and BSD) 桌面应用程序框架 ...

最新文章

  1. (转)WCF光芒下的Web Service
  2. atitit. 浏览器插件 控件 applet 的部署,签名总结 浏览器 插件 控件 的签名安全机制o9o...
  3. 推荐9款优秀的 HTML5 音乐播放器
  4. Shift Dot_JAVA
  5. Tomcat系列之Java技术详解
  6. SQL Server 性能调优(方法论)
  7. html5中单选框被选中把值传给后台_HTML5的表单设计
  8. Qt文档阅读笔记|Qt实践| HTTPS知识点-获取某站点SSL证书
  9. 今年后,再见Excel,你好python
  10. matlab混叠现象与频率分辨率,连续时间信号频谱分析研究及MATLAB实现
  11. SQL锁机制和事务隔离级别
  12. python截屏截图
  13. 主流强化学习算法论文综述:DQN、DDPG、TRPO、A3C、PPO、SAC、TD3
  14. 手机视频水印去不掉有马赛克
  15. LaTex制作中文简历模板_PART 1
  16. 实验中常用光纤接头型号
  17. 2021年最值得推荐的10款数据可视化工具,看完我收藏了
  18. 世外桃源六python_中土世界的世外桃源——新西兰霍比特人小镇全攻略
  19. Swift学习笔记笔记(七) UIKit常用组件的使用
  20. bugtraq mysql,Oracle MySQL Server远程安全漏洞(CVE-2017-3459)

热门文章

  1. java学习(1):学生管理系统1
  2. Jenkins安装(Maven安装)(4)
  3. ajax success function_Django:AJAX(二)
  4. asp.net mvc 自定义全局过滤器 验证用户是否登录
  5. c++中基本的语法问题
  6. 我的github地址
  7. C# 繁体,简体 互转
  8. RESTORE DATABASE命令还原SQLServer 2005 数据库
  9. matlab可以使用词云分析吗,利用豆瓣短评数据生成词云
  10. uoni扫地机器人好用吗_扫地机器人好用吗?了解性能看这篇