[原创: 云服务器实战系列3] 基础软件安装&环境配置

上一篇: [原创: 云服务器实战系列2] 禁用root以及经过远程接入html

基础软件包含:python

  • python3
  • nginx
  • git
  • mysql
  • redis
  • supervisor(守护进程)
  • etc...

云服务器安装的是 Centos 6.9 x86-64版本mysql

python3

centos系统初始化时会安装有python2.6.x版本, 此处咱们使用python3linux

注意: 若是本机安装了python2,尽可能不要管它,使用python3运行python脚本就好,由于可能有程序依赖目前的python2环境,nginx

1. 安装依赖

sudo yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel gcc
复制代码

2. 下载python3

最新的tgz安装包请参考官网 www.python.org/downloads/git

sudo wget http://www.python.org/ftp/python/3.7.5/Python-3.7.5.tgz
复制代码

3. 安装python3

我的习惯安装在/usr/local/python3 建立目录github

mkdir -p /usr/local/python3
复制代码

解压下载好的Python-3.x.x.tgz包web

sudo tar -zxvf Python-3.7.5.tgz
复制代码

4. 编译安装。

进入解压后的目录 && 编译安装redis

cd Python-3.7.5.tgz
sudo ./configure --prefix=/usr/local/python3
sudo make && make install
复制代码

5.创建python3的软链

[account@yunServer Python-3.7.5]$ sudo ln -s /usr/local/python3/bin/python3 /usr/bin/python3
[account@yunServer Python-3.7.5]$ python3
Python 3.7.5 (default, Nov  5 2019, 23:53:13) 
[GCC 4.4.7 20120313 (Red Hat 4.4.7-23)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> 
复制代码

6. 配置环境变量

vi ~/.bash_profile 
复制代码

修改倒数第二行, 将/usr/local/python3/bin加入PATHsql

# .bash_profile

# Get the aliases and functions
if [ -f ~/.bashrc ]; then
        . ~/.bashrc
fi

# User specific environment and startup programs

PATH=$PATH:$HOME/bin:/usr/local/python3/bin

export PATH
复制代码

按ESC,输入:wq回车退出。

修改完记得执行行下面的命令,让上一步的修改生效:

source ~/.bash_profile
复制代码

检查Python3及pip3是否正常可用:

[account@yunServer Python-3.7.5]$ python3 -V
Python 3.7.5
[account@yunServer Python-3.7.5]$ pip3 -V
pip 19.2.3 from /usr/local/python3/lib/python3.7/site-packages/pip (python 3.7)
复制代码

nginx

安装依赖

在编译安装以前,须要安装nginx依赖包pcre-devel

sudo yum -y install pcre-devel
复制代码

新建安装目录

这里,将会把nginx安装到/usr/local/下, 故在此下新建目录:

sudo mkdir /usr/local/nginx
复制代码

下载nginx源码包

nginx官网寻找合适的nginx源码包,经过wget下载,这里下载的是1.15.0版本

sudo wget http://nginx.org/download/nginx-1.15.0.tar.gz
复制代码

下载完成以后,解压源码包

tar -zxvf nginx-1.15.0.tar.gz
复制代码

进入刚解压出来的目录

cd nginx-1.15.0
复制代码

编译

sudo ./configure --prefix=/usr/local/nginx
复制代码

安装

sudo make && make install
复制代码

配置环境变量

用vim打开/etc/profile文件

sudo vim /etc/profile
复制代码

在文件的末尾添加一行代码,冒号后边是我nginx的安装路径,若是你是在其余路径,则将冒号后边的路径改成你的nginx安装路径

PATH=$PATH:/usr/local/nginx/sbin
复制代码

让profile生效

sudo source /etc/profile
复制代码

进入nginx安装路径,并将nginx权限更改成775

cd /usr/local/nginx/sbin
sudo chmod -R 775 nginx
复制代码

添加nginx到系统服务(service)

nginx源码安装完成后默认不会注册为系统服务,因此须要手工添加系统服务脚本。在/etc/init.d目录下新建nginx文件,并更改权限其便可。

1. 新建nginx文件

sudo vim /etc/init.d/nginx 
复制代码

并添加如下内容

#!/bin/bash
# nginx Startup script for the Nginx HTTP Server
# this script create it by caffreyxin at 2007.10.15.
# it is v.0.0.1 version.
# if you find any errors on this scripts, please contact caffreyxin.
# and send mail to xinyflove at sina dot com.
#
# chkconfig: - 85 15
# description: Nginx is a high-performance web and proxy server.
# It has a lot of features, but it's not for everyone.
# processname: nginx
# pidfile: /var/run/nginx.pid
# config: /usr/local/nginx/conf/nginx.conf

nginxd=/usr/local/nginx/sbin/nginx
nginx_config=/usr/local/nginx/conf/nginx.conf
nginx_pid=/var/run/nginx.pid

RETVAL=0
prog="nginx"

# Source function library.
. /etc/rc.d/init.d/functions

# Source networking configuration.
. /etc/sysconfig/network

# Check that networking is up.
[ ${NETWORKING} = "no" ] && exit 0

[ -x $nginxd ] || exit 0


# Start nginx daemons functions.
start() {

    if [ -e $nginx_pid ];then
        echo "nginx already running...."
        exit 1
    fi

    echo -n $"Starting $prog: "
    daemon $nginxd -c ${nginx_config}
    RETVAL=$?
    echo
    [ $RETVAL = 0 ] && touch /var/lock/subsys/nginx
    return $RETVAL
}


# Stop nginx daemons functions.
stop() {
    echo -n $"Stopping $prog: "
    killproc $nginxd
    RETVAL=$?
    echo
    [ $RETVAL = 0 ] && rm -f /var/lock/subsys/nginx /var/run/nginx.pid
}


# reload nginx service functions.
reload() {

    echo -n $"Reloading $prog: "
    #kill -HUP `cat ${nginx_pid}`
    killproc $nginxd -HUP
    RETVAL=$?
    echo

}

# See how we were called.
case "$1" in
start)
        start
        ;;

stop)
        stop
        ;;

reload)
        reload
        ;;

restart)
        stop
        start
        ;;

status)
        status $prog
        RETVAL=$?
        ;;
*)
        echo $"Usage: $prog {start|stop|restart|reload|status|help}"
        exit 1
esac

exit $RETVAL
复制代码

也能够参考: github.com/xinyflove/M…

注意: 根据本身实际安装目录,修改这两行:

nginxd=/usr/local/nginx/sbin/nginx
nginx_config=/usr/local/nginx/conf/nginx.conf
复制代码

2. 修改文件权限

sudo chmod 755 /etc/init.d/nginx
复制代码

3. 设置开机启动

sudo chkconfig nginx on
复制代码

4. 查看开机启动的服务

chkconfig --list
复制代码

5. 相关命令

  • 启动服务:service nginx start
  • 中止服务:service nginx stop
  • 重启服务:service nginx reload

6. 验证

配置好以后, 启动nginx: service nginx start. 经过浏览器直接访问公网IP, 发现没法链接?

查询资料, 原来阿里云默认有一个安全组, 在控制端口的出入. 在阿里云实例的控制界面中, 找到 "更多" -> "网络和安全组" -> "安全组配置", 以下图所示

以后进入到:

选择"配置规则"

同时在"入方向"和"出方向"添加这个端口的安全规则便可, 这里个人配置是:

配置好规则之, 便可在浏览器经过访问公网IP或与公网IP绑定的域名了, 以下图所示:

git

未完, 待续!

相关文章
相关标签/搜索