常用开发环境搭建配置教程(OneStall)
最近想要做一个小东西,用到了下面几个中间件或者环境:
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的公众号
常用开发环境搭建配置教程(OneStall)的更多相关文章
- QT开发环境安装配置教程
QT开发环境安装配置教程 分类: QT2012-11-29 23:31 35366人阅读 评论(12) 收藏 举报 Linux版的直接在ubutnu软件中心输入QT,安装响应的Designer,Cre ...
- java开发环境搭建,配置
java开发环境搭建 下载jdk8的地址 是oracle的 安装JDK 下载电脑对应的版本 双击安装JDK 记住安装路径 配置环境变量 我的电脑/此电脑 右键属性 高级设置 环境变量 点击新建 变量名 ...
- 基于webpack的react开发环境搭建新手教程
最近学习react-webpack项目搭建,找到一篇我认为不错的博客,跟着学习了一番,写得很详细很好,本篇博客纯属记录总结,要看更详细的搭建过程及解析,请戳: 基于webpack的React项目搭建( ...
- Opencv2.4.13与Visual Studio2013环境搭建配置教程
转载:http://www.jb51.net/article/108943.htm 一.安装包的下载与安装 Opencv可免费到官网上去下载,opencv是国外软件,在下载是由于受资源的限制,可能会出 ...
- Android安卓开发环境搭建详细教程
安装目录:步骤1 安装JDK步骤2 安装 Android SDK ----http://www.androiddevtools.cn/ 步骤3 安装Tomcat步骤4 安装Ant步骤5 安装Eclip ...
- Linux CentOS Python开发环境搭建教程
CentOS安装Python 1.CentOS已经自带安装了2.x版本,先尝试python命令检查已安装的版本.如果你使用rpm.yum或deb命令安装过,请使用相对命令查询. 2.复制安装文件链 ...
- Android开发环境搭建篇详尽的教程实例汇
原文链接:http://android.eoe.cn/topic/android_sdk 一.android开发环境搭建图文教程整理篇: 1.Android开发环境搭建全程演示(jdk+eclip+a ...
- Android 开发环境搭建9传送帖)
---恢复内容开始--- 首先,得安装软件,感觉我所找到的一些课本上写的都比较简略,走过一些弯路后,决定按照这个百度经验来 Android安卓开发环境搭建详细教程 http://jingyan.bai ...
- android测试开发环境搭建
本文档针对未接触过android的0基础人员,在开始熟悉android之前,首先需要一个学习环境来支撑,在此简单介绍一下android环境搭建.(当然大家也可以百度.谷歌,类似的文档很多) 环境搭建: ...
随机推荐
- 从url中获得域名
import java.net.MalformedURLException; import java.net.URL; /** * * @author csh * */ public class AA ...
- XML语言1.简介和语法
一.什么是XML语言? XML 指可扩展标记语言(Extensible Markup Language) Xml是独立于软件和硬件的信息传输工具. XML 是一种很像HTML的标记语言. 但xml不是 ...
- Linux下如何查看定位当前正在运行的Nginx的配置文件
1. 查看nginx的PID,以常用的80端口为例: [root@xiaoyuer scripts]# netstat -lntup|grep 80 tcp 0 0 0.0.0.0:80 0.0.0. ...
- iptables实现--kafka限制ip地址访问
iptables -I INPUT -p tcp --dport 9092:9094 -j DROPiptables -I INPUT -s 10.144.137.32 -p tcp --dport ...
- ubuntu tensorflow install(Ubuntu16.04+CUDA9.0+cuDNN7.5+Python3.6+TensorFlow1.5)
在网上找了很多案例,踩了许多坑,感觉比较全面的是下面介绍的 http://www.cnblogs.com/xuliangxing/p/7575586.html 先说说我的步骤: 首先安装了Anacod ...
- MP3、MP4的文件选择及播放
项目主页网址如下: https://github.com/Judylalala/en ####技术问题1:如何播放音频(MP3).视频(MP4)? ####解决过程1:我首先想到了XMAL插件中的Me ...
- Mesos源码分析(2): Mesos Master的启动之一
Mesos Master的启动参数如下: /usr/sbin/mesos-master --zk=zk://127.0.0.1:2181/mesos --port=5050 --log_dir=/va ...
- jsplumb 中文教程
https://wdd.js.org/jsplumb-chinese-tutorial/#/ 1. jsplumb 中文基础教程 后续更新会在仓库:https://github.com/wangdua ...
- [Swift]LeetCode893. 特殊等价字符串组 | Groups of Special-Equivalent Strings
You are given an array A of strings. Two strings S and T are special-equivalent if after any number ...
- Can't connect to X11 window server using ':1.0' as the value of the DISPLAY variable.
安装oracle数据时需要用到图形界面安装,当我们用root用户登录后切换到oracle用户时运行./runInstaller提示报错: Can't connect to X11 window ser ...