1.安装 Git

sudo apt-get update
sudo apt-get install git Do you want to continue? [Y/n] Y git --version

2. 安装 UFW

sudo apt-get install ufw

sudo ufw enable
sudo ufw default deny sudo ufw allow 22/tcp
sudo ufw allow 80/tcp
sudo ufw allow 3306/tcp
sudo ufw allow 27017/tcp
sudo ufw allow 6379/tcp
sudo ufw allow 8000:9000/tcp

3.安装 Nginx

sudo apt-get install build-essential
sudo apt-get install libtool
sudo apt-get update
sudo apt-get install libpcre3 libpcre3-dev
sudo apt-get install zlib1g-dev
sudo apt-get install openssl wget http://nginx.org/download/nginx-1.14.2.tar.gz tar -zxvf nginx-1.14.2.tar.gz cd nginx-1.14.2 ./configure --prefix=/usr/local/nginx make sudo make install sudo /usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf ps -ef|grep nginx curl -L http://127.0.0.1/index.html vi ~/.profile INSERT >>>>>>> export PATH=$PATH:/usr/local/nginx/sbin source ~/.profile vi /etc/init.d/nginx.server COPY INSERT >>>>>>> sudo chmod +x /etc/init.d/nginx.server sudo sysv-rc-conf nginx.server on
  • unable to resolve host iZs3y2byjpi9oxZ 解决方案:
vi /etc/hosts

INSERT >>>>>>>

127.0.0.1       iZs3y2byjpi9oxZ
  • /etc/init.d/nginx.server
#!/bin/sh
set -e
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
DESC="nginx daemon"
NAME=nginx
DAEMON=/usr/local/nginx/sbin/$NAME
SCRIPTNAME=/etc/init.d/$NAME.server # If the daemon file is not found, terminate the script.
test -x $DAEMON || exit 0 d_start() {
$DAEMON || echo -n " already running"
} d_stop() {
$DAEMON –s quit || echo -n " not running"
} d_reload() {
$DAEMON –s reload || echo -n " could not reload"
} case "$1" in
start)
echo -n "Starting $DESC: $NAME"
d_start
echo "."
;;
stop)
echo -n "Stopping $DESC: $NAME"
d_stop
echo "."
;;
reload)
echo -n "Reloading $DESC configuration..."
d_reload
echo "reloaded."
;;
restart)
echo -n "Restarting $DESC: $NAME"
d_stop
# Sleep for two seconds before starting again, this should give the
# Nginx daemon some time to perform a graceful stop.
sleep 2
d_start
echo "."
;;
*)
echo "Usage: $SCRIPTNAME {start|stop|restart|reload}" >&2
exit 3
;;
esac exit 0

4.安装 NetCore

wget https://packages.microsoft.com/config/ubuntu/16.04/packages-microsoft-prod.deb -O packages-microsoft-prod.deb

sudo dpkg -i packages-microsoft-prod.deb

sudo apt-get update; \
sudo apt-get install -y apt-transport-https && \
sudo apt-get update && \
sudo apt-get install -y dotnet-sdk-3.1 dotnet --info

5.安装 MySQL

# wget https://downloads.mysql.com/archives/get/p/23/file/mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz

wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz

tar zxvf mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz

sudo mv mysql-5.7.24-linux-glibc2.12-x86_64 /usr/local/mysql

vi /etc/my.cnf

COPY INSERT >>>>>>>

cd /usr/local/mysql

groupadd mysql
useradd -r -g mysql mysql
chown -R mysql:mysql ./ sudo bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data # copy initial password [Note] A temporary password is generated for root@localhost: kiZI&a&kk6SQ sudo ./support-files/mysql.server start ps -ef|grep mysql ./bin/mysql -u root -p
Enter password: kiZI&a&kk6SQ ALTER USER 'root' @'localhost' IDENTIFIED BY '123456'; CREATE USER 'root' @'%' IDENTIFIED BY '123456'; GRANT ALL ON *.* TO 'root' @'%'; FLUSH privileges; sudo cp ./support-files/mysql.server /etc/init.d/mysql.server sudo sysv-rc-conf mysql.server on vi ~/.profile INSERT >>>>>>> export PATH=$PATH:/usr/local/mysql/bin source ~/.profile
  • /etc/my.cnf
[mysqld]
port = 3306
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
max_connections=200
max_connect_errors=10
character-set-server=utf8mb4
default-storage-engine=INNODB
default_authentication_plugin=mysql_native_password [mysql]
default-character-set=utf8mb4 [client]
port=3306
default-character-set=utf8mb4

6.安装 NodeJs

wget https://nodejs.org/dist/v14.15.1/node-v14.15.1-linux-x64.tar.xz

tar xf node-v14.15.1-linux-x64.tar.xz

sudo mv node-v14.15.1-linux-x64 /usr/local/nodejs

cd /usr/local/nodejs

ln -s /usr/local/nodejs/bin/node  /usr/local/bin/
node -v ln -s /usr/local/nodejs/bin/npm /usr/local/bin/
npm -v npm config set registry https://registry.npm.taobao.org # install pm2
npm install pm2@latest -g
ln -s /usr/local/nodejs/bin/pm2 /usr/local/bin/ sudo pm2 status

7.安装 MongoDB

wget -qO - https://www.mongodb.org/static/pgp/server-3.4.asc | sudo apt-key add -

echo "deb [ arch=amd64,arm64 ] http://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/3.4 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.4.list

sudo apt-get update

sudo apt-get install -y mongodb-org

sudo service mongod start

sudo service mongod status

sudo service mongod stop

vi /etc/mongod.conf

EDIT >>>>>>>

# network interfaces
net:
port: 27017
#bindIp: 127.0.0.1
bindIp: 0.0.0.0 #security:
security:
authorization: enabled sudo service mongod restart ps -ef | grep mongod # 进入数据库
mongo
# 用admin身份
use admin
# 创建超级管理员账号
db.createUser( {user: "admin",pwd: "admin",roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]})
# 测试授权
db.auth("admin","admin")
# 建库授权
use testdb
# 创建数据库管理账号
db.createUser( {user: "root",pwd: "123456",roles: [ { role: "readWrite", db: "testdb" } ]})
# 授权用户
db.auth("root","123456")
# 数据测试
db.log.insert({"created":"db","name":"testdb"})
db.log.insert({"created":"user","name":"root"})
exit # 开机自启
sudo systemctl enable mongod
  • /etc/mongod.conf
# mongod.conf

# for documentation of all options, see:
# https://docs.mongodb.com/v3.4/reference/configuration-options/ # systemLog Options:
systemLog:
destination: file
path: "/usr/local/mongodb/log/mongod.log"
logAppend: true # processManagement Options:
processManagement:
fork: true # net Options:
net:
port: 27017
#bindIp: 127.0.0.1
bindIp: 0.0.0.0 # security Options:
#security:
security:
authorization: enabled # setParameter Options:
setParameter:
enableLocalhostAuthBypass: false # storage Options:
storage:
dbPath: "/usr/local/mongodb/data"
journal:
enabled: true # operationProfiling Options: # replication Options: # sharding Options: # auditLog Options: # snmp Options:

MongDB数据库角色对应如下:

  • Read:允许用户读取指定数据库
  • readWrite:允许用户读写指定数据库
  • dbAdmin:允许用户在指定数据库中执行管理函数,如索引创建、删除,查看统计或访问system.profile
  • userAdmin:允许用户向system.users集合写入,可以找指定数据库里创建、删除和管理用户
  • clusterAdmin:只在admin数据库中可用,赋予用户所有分片和复制集相关函数的管理权限。
  • readAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的读权限
  • readWriteAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的读写权限
  • userAdminAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的userAdmin权限
  • dbAdminAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的dbAdmin权限。
  • root:只在admin数据库中可用。超级账号,超级权限

7.安装 Redis

sudo apt-get install redis-server

Do you want to continue? [Y/n] Y

ps -ef|grep redis

vi /ect/redis/redis.conf

EDIT >>>>>>>

#bind 127.0.0.1
requirepass 123456 service redis-server restart

服务自启配置

sudo apt-get install sysv-rc-conf

# redis-server
sudo sysv-rc-conf redis-server on # nginx.server
sudo sysv-rc-conf nginx.server on # mysql.server
sudo sysv-rc-conf mysql.server on # mongo
sudo systemctl enable mongod

实例软件的版本:

  • nginx-1.14.2.tar.gz

  • packages-microsoft-prod.deb

  • mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz

  • node-v14.15.1-linux-x64.tar.xz

Ubuntu 16.04 系统基础开发环境搭建的更多相关文章

  1. ubuntu 16.04 android studio 开发环境搭建

    安装步骤: 1. 安装 Java developer kit 2.安装 Android developer kit 3.安装 Android studio 4.真机调试 第一次用Linux,命令基本不 ...

  2. Ubuntu 16.04 以太坊开发环境搭建

    今天我们来一步一步从搭建以太坊智能合约开发环境. Ubuntu16.04 安装ubuntu16.04.下载链接 //先update一下(或者换国内源再update) sudo apt-get upda ...

  3. [eShopOnContainers 学习系列] - 03 - 在远程 Ubuntu 16.04 上配置开发环境

    直接把 md 粘出来了,博客园的富文本编辑器换成 markdown,没啥效果呀 ,先凑合吧.实在不行换地方   # 在远程 Ubuntu 16.04 上配置开发环境 ## 零.因 为什么要用这么麻烦的 ...

  4. Ubuntu 14.04.5 imx6 开发环境搭建

    1,下载VMware Workstation虚拟机 地址:http://1.xp510.com:801/xp2011/VMware10.7z 2,下载Ubuntu 14.04.5 LTS 32位Ubu ...

  5. Ubuntu 14.04下java开发环境的搭建--3--Tomcat及MySQL的安装

    前面两篇文章,已经说明了JDK和Eclipse 的安装方法,下面简单说一下,Tomcat及MySQL的安装方法. Tomcat的安装. 在合适的地方解压apache-tomcat-6.0.39.tar ...

  6. Centos 基础开发环境搭建之Maven私服nexus

    hmaster 安装nexus及启动方式 /usr/local/nexus-2.6.3-01/bin ./nexus status Centos 基础开发环境搭建之Maven私服nexus . 软件  ...

  7. 在Ubuntu 16.04 安装python3.6 环境并设置为默认

    在Ubuntu 16.04 安装python3.6 环境并设置为默认 1.添加python3.6安装包,并且安装 sudo apt-get install software-properties-co ...

  8. unbuntu16.04上python开发环境搭建建议

    unbuntu16.04上python开发环境搭建建议  2017-12-20  10:39:27 推荐列表: pycharm: 可以自行破解,但是不推荐,另外也不稳定 pydev+eclipse: ...

  9. Ubuntu 16.04下的LAMP环境配置

    在学习开发过程中,每当遇到新的问题时,通常都能在网上搜到解决的方法,但是网上的方法千千万,有些是已经过时了的,有些是跟自己开发环境不同的,总是不能第一时间能找到答案. 而当时遇到的问题可能在今后的开发 ...

随机推荐

  1. table表格标签的属性

    table标签目前前端主流推荐HTML.CSS.JS三者分离,实际使用table标签的CSS样式代码还是采用table的style的属性和值来进行外观样式控制. 习惯样式: 1 table { 2 d ...

  2. 在Linux深度系统deepin下安装docker

    wget -qO- https://get.docker.com/ | sh wget -qO- https://get.docker.com/ | sh

  3. HTTP 抓包 ---复习一下

    1.connection 字段 2.accept 字段 3.user-agent 字段 4.host字段 等字段需要注意: HTTP事务的延时主要有以下:1).解析时延   DNS解析与DNS缓存 客 ...

  4. 快速熟悉 Oracle AWR 报告解读

    目录 AWR报告简介 AWR报告结构 基本信息 Report Summary Main Report RAC statistics Wait Event Statistics 参考资料 本文面向没有太 ...

  5. JAVA学习准备

    Java学习准备 MarkDown语法学习 字体 hello,world! hello,world! hello,world! 引用 即使最小的帆也能远航 分割线 图片 超链接 点击跳转到我的邮箱 列 ...

  6. Java从后端下载文件到浏览器

    // 注: // 获取项目下文件或者文件流 // File file = new File(this.getClass().getResource("/xls/adminImportUser ...

  7. 【鸿蒙应用开发】使用确切位置布局(PositionLayout)实现登录页面

    上一节我们了解了PositionLayout(确切位置布局,我更倾向于称为绝对布局),虽然应用场景稀少.维护不方便,但是该有的示例还是不能少. UI图拆解及代码实现 这个界面我们是不是很熟悉,打开浏览 ...

  8. 源码分析:Semaphore之信号量

    简介 Semaphore 又名计数信号量,从概念上来讲,信号量初始并维护一定数量的许可证,使用之前先要先获得一个许可,用完之后再释放一个许可.信号量通常用于限制线程的数量来控制访问某些资源,从而达到单 ...

  9. 还不懂spring中的bean的话,你一定得好好看看这篇文章

    bean的作用域 bean的生命周期 bean的装配 代码 实体类 package com; import java.util.List; public class User { private St ...

  10. 在线思维导图Ayoa共享功能使用教程

    Ayoa是一个制作思维导图的软件,除了导图制作,小编在使用过程中还发现了一些令人惊喜的功能,这些功能使得Ayoa有了更大的亮点以吸引用户. 下面就为大家简单介绍几个小编认为Ayoa中较为实用的共享功能 ...