ubuntu18.04 下 安装 LNMP环境

转载请注明,谢谢。

0.更新软件列表(非必要)

sudo apt-get update

1.安装Nginx

sudo apt-get install nginx
#1:使用dpkg -S nginx来搜索nginx的相关文件
#2:nginx的默认网站目录是/var/www/html/
#3:默认的nginx网站配置文件为/etc/nginx/sites-available/default
#4:日志文件在/var/log/nginx/

启用nginx服务器: sudo /etc/init.d/nginx start或者sudo service nginx start

使用netstat -anp则可以看到80端口已经处于LISTEN状态了。
直接查看80端口可以使用命令:sudo lsof -i:80

查看进程 ps aux | grep nginx

2.安装MySql(使用云数据库非必要)

sudo apt-get install mysql-server mysql-client
# 在ubuntu18.04中apt安装mysql并没有提示设置密码,用户名默认的不是root,而是debian-sys-maint
# 查看的路径在/etc/mysql/debian.cnf 
# Automatically generated for Debian scripts. DO NOT TOUCH!
[client]
host     = localhost
user     = debian-sys-maint
password = l9iU7T2QILPjNzeH
socket   = /var/run/mysqld/mysqld.sock
[mysql_upgrade]
host     = localhost
user     = debian-sys-maint
password = l9iU7T2QILPjNzeH
socket   = /var/run/mysqld/mysqld.sock
#我们可以使用该用户登录mysql,修改root可以直接登录
update mysql.user set authentication_string=password('123456'),plugin='mysql_native_password' where User='root' and Host = 'localhost';
#重启mysql服务
sudo service mysql restart

3.安装PHP

sudo apt-get install php7.2-fpm php7.2-mbstring php7.2-xml php7.2-mysql php7.2-common php7.2-gd php7.2-json php7.2-cli php7.2-curl
# 查看php版本
php -v

4.安装Redis

# 由于我购买的阿里云禁止了ipv6的访问(似乎是),无法通过
sudo apt-get install redis-server
安装,采用以下编译安装方式:
# 1.下载安装包
wget http://download.redis.io/releases/redis-5.0.7.tar.gz
# 2.解压
tar xvzf redis-5.0.7.tar.gz
# 3.进入目录并编译
cd redis-5.0.7/ && make
# 4.将相关文件复制到指定目录
sudo cp src/redis-server /usr/local/bin/
sudo cp src/redis-cli /usr/local/bin/
sudo mkdir /etc/redis
sudo mkdir /var/redis
sudo cp utils/redis_init_script /etc/init.d/redis
sudo cp redis.conf /etc/redis/6379.conf
# 5.修改配置文件 
vim /etc/redis/6379.conf
找到 daemonize no
改成 daemonize yes
# 6.设置redis自启动和运行
sudo update-rc.d redis defaults
sudo /etc/init.d/redis start

# 编译安装的redis启动命令
redis-server [configfile]

5.安装Composer

sudo apt-get install composer
# 切换composer国内阿里云镜像
composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/

# 取消配置
composer config -g --unset repos.packagist
# 因缺少zip包导致waring
sudo apt-get install zip unzip

6.安装git

sudo apt-get install git
# 设置免密pull/push
cd ~
touch .git-credentials
vim .git-credentials
    https://[username]:[password]@github.com
在终端下输入:
git config --global credential.helper store

7.安装beanstalkd

sudo apt-get install beanstalkd

8.安装Supervisor

sudo apt-get install supervisor
配置 Supervisor

Supervisor 的配置文件通常位于 /etc/supervisor/conf.d 目录下。在该目录中,可以创建任意数量的配置文件,用来控制 supervisor 将如何监控进程。
例如,创建一个 laravel-worker.conf 文件使之启动和监控一个 queue:work 进程: [program:laravel-worker] process_name=%(program_name)s_%(process_num)02d command=php /home/forge/app.com/artisan queue:work sqs --sleep=3 --tries=3 autostart=true autorestart=true user=forge numprocs=8 redirect_stderr=true stdout_logfile=/home/forge/app.com/worker.log 在这个例子中,numprocs 指令将指定 Supervisor 运行 8 个 queue:work 进程并对其进行监控,如果它们挂掉就自动重启它们。更改 command 选项中的 queue:work sqs 部分以表示所需的队列连接。 启动 Supervisor 配置文件创建完毕后,使用如下命令更新 Supervisor 配置并启动进程: sudo supervisorctl reread sudo supervisorctl update sudo supervisorctl start laravel-worker:*