oneinstack卸载mysql_CentOS7.5利用OneinStack搭建环境(包括PostgreSQL、Kafka、RabbitMQ等)...

这篇博客详细介绍了如何在CentOS7.5上利用OneinStack卸载MySQL并搭建包括PostgreSQL、Kafka、RabbitMQ等在内的软件环境。首先检查并移除已有Apache、PHP和MySQL包,接着安装必要的依赖,并修改yum源。然后,挂载硬盘、安装OneinStack并添加附加组件。接下来,依次安装了Gearman、PostgreSQL、Redis_fdw扩展、MySQL UDF函数、RabbitMQ、Kafka以及相关配置。最后,为PHP添加了扩展,并安装了Composer与ThinkPHP 5.1框架。
摘要由CSDN通过智能技术生成

1、准备

# 安装之前先检查一下系统是否有默认安装的`apache`或者`php`

$ rpm -qa|grep httpd

$ rpm -qa|grep php

$ rpm -qa|grep mysql

# 把上面指令列出来的包删除

$ rpm -e ****(包名)

# 安装一些必备的包

$ yum -y install gcc gcc-c++ make screen wget net-tools curl python

$ screen -S bt

# 编译安装`hiredis`

$ git clone https://github.com/redis/hiredis.git

$ cd hiredis

$ make && make install

$ mkdir /usr/lib/hiredis

$ cp libhiredis.so /usr/lib/hiredis

$ mkdir /usr/include/hiredis

$ cp hiredis.h /usr/include/hiredis

$ echo '/usr/local/lib' >>/etc/ld.so.conf

$ ldconfig

2、修改CentOS默认yum源为国内yum镜像源

备份/etc/yum.repos.d/CentOS-Base.repo

$ mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup

下载163的yum源配置文件到上面那个文件夹内

$ wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.163.com/.help/CentOS7-Base-163.repo

运行yum makecache生成缓存

$ yum makecache

更新系统

$ yum -y update

3. 将已经挂载在 home 目录上的硬盘挂载到 data 目录上

$ df -h #(查看分区情况及数据盘名称)

$ mkdir /data #(如果没有data目录就创建,否则此步跳过)

$ umount /home #(卸载硬盘已挂载的home目录)

$ mount /dev/mapper/centos-home /data #(挂载到data目录)

$ vi /etc/fstab #(编辑fstab文件修改或添加,使重启后可以自动挂载)

$ mount /dev/mapper/centos-home /data ext3 auto 0 0

4. 交互式安装 OneinStack

安装 OneinStack

$ wget http://mirrors.linuxeye.com/oneinstack-full.tar.gz

$ tar xzf oneinstack-full.tar.gz

$ cd oneinstack

$ screen -S oneinstack

# 如果网路出现中断,可以执行命令`screen -R oneinstack`重新连接安装窗口

$ ./install.sh # 安装

$ ./addons.sh # 添加附加组件

$ ./vhost.sh # 添加虚拟主机

$ ./pureftpd_vhost.sh # 管理FTP账号

$ ./backup_setup.sh # 备份

$ ./upgrade.sh # 更新版本

$ ./uninstall.sh # 卸载

管理服务

# webmin

$ rpm -Uvh https://prdownloads.sourceforge.net/webadmin/webmin-1.881-1.noarch.rpm

# Nginx/Tengine/OpenResty

$ service nginx {start|stop|status|restart|reload|configtest}

# MySQL/MariaDB/Percona:

$ service mysqld {start|stop|restart|reload|status}

# PostgreSQL

$ service postgresql {start|stop|restart|status}

# MongoDB

$ service mongod {start|stop|status|restart|reload}

# PHP

$ service php-fpm {start|stop|restart|reload|status}

# HHVM

$ service supervisord {start|stop|status|restart|reload}

# Apache

$ service httpd {start|restart|stop}

# Tomcat

$ service tomcat {start|stop|status|restart}

# Pure-Ftpd

$ service pureftpd {start|stop|restart|status}

# Redis

$ service redis-server {start|stop|status|restart}

# Memcached

$ service memcached {start|stop|status|restart|reload}

5. 安装 Gearman

$ yum install -y uuid-devel libuuid libuuid-devel uuid boost-devel libevent libevent-devel gperf

$ wget https://launchpad.net/gearmand/1.2/1.1.12/+download/gearmand-1.1.12.tar.gz

$ tar zxvf gearmand-1.1.12.tar.gz

$ cd gearmand-1.1.12

$ ./configure --prefix=/usr/local/gearmand

$ make && make install

$ vi /etc/init.d/gearmand

#!/bin/bash

# chkconfig: - 85 15

#descrīption: service(/usr/local/gearmand/sbin/gearmand)

. /etc/rc.d/init.d/functions

start() {

echo -n $"Starting $prog"

echo -e " gearman : [确定]"

/usr/local/gearmand/sbin/gearmand &

sleep 1

echo -e "running..."

}

stop() {

echo -n $"Stopping $prog"

echo -e " gearman : [确定]"

kill -9 `ps -ef | grep "/usr/local/gearmand/sbin/gearmand" | awk '{print $2}' | awk 'NR==1'`

sleep 1

echo -e "stoped"

}

case "$1" in

start)

start

;;

stop)

stop

;;

restart)

stop

start

;;

status)

ps -ef | grep "/usr/local/gearmand/sbin/gearmand"

;;

*)

echo $"Usage: $prog {start|stop|restart|status}" >&2

exit 1

;;

esac

exit 0

$ chkconfig --add gearmand

$ chkconfig gearmand on

$ chkconfig --list

6. 安装 PostgreSQL

安装

$ yum install https://download.postgresql.org/pub/repos/yum/9.6/redhat/rhel-7-x86_64/pgdg-centos96-9.6-3.noarch.rpm

$ yum install postgresql96 postgresql96-server postgresql96-contrib postgresql96-devel postgresql96-libs

初始化 PostgreSQL 数据库

$ mkdir /data/pgsql

$ chown -R postgres:postgres /data/pgsql

$ su postgres

$ /usr/pgsql-9.6/bin/initdb -D /data/pgsql/data

$ vi /usr/lib/systemd/system/postgresql-9.6.service

Environment=PGDATA=/data/pgsql/data

$ systemctl daemon-reload

$ systemctl enable postgresql-9.6

$ systemctl start postgresql-9.6

配置默认 postgres 用户及密码并创建新的用户和数据库

$ cd data

$ su postgres

$ createuser gadfly

$ createdb gadfly_db

$ psql

psql (9.6)

Type "help" for help.

Postgres=#

postgres=# \password postgres

Enter new password:

Enter it again:

postgres=# CREATE EXTENSION adminpack;

CREATE EXTENSION

postgres=# alter user gadfly with encrypted password 'centos';

ALTER ROLE

postgres=# grant all privileges on database gadfly_db to gadfly;

GRANT

postgres=# \q

$ exit

配置 PostgreSQL

配置 PostgreSQL-MD5 认证

$ vi /data/pgsql/data/pg_hba.conf

# "local" is for Unix domain socket connections only

local all all md5

# IPv4 local connections:

host all all 192.168.1.0/24 md5

host all all 127.0.0.1/32 md5

# IPv6 local connections:

host all all ::1/128 md5

配置 PostgreSQL-Configure TCP/IP

$ vi /data/pgsql/data/postgresql.conf

[...]

listen_addresses = '*’

[...]

port = 5432

[...]

安装 redis_fdw 外部表插件

$ git clone -b REL9_6_STABLE https://github.com/pg-redis-fdw/redis_fdw.git

$ cd redis_fdw

$ export PATH=/usr/pgsql-9.6//bin:$PATH

$ make USE_PGXS=1

$ make USE_PGXS=1 install

$ su postgres

bash-4.2$ psql -U postgres -d postgres

postgres=# create extension redis_fdw;

CREATE EXTENSION

postgres=# CREATE SERVER redis_server

postgres-# FOREIGN DATA WRAPPER redis_fdw

postgres-# OPTIONS (address '127.0.0.1', port '6379');

CREATE SERVER

postgres=# CREATE USER MAPPING FOR PUBLIC

postgres-# SERVER redis_server

postgres-# OPTIONS (password '');

CREATE USER MAPPING

redis_fdw 详细的用法介绍

1. CREATE SERVER 支持的 option(指定地址和端口)

address: The address or hostname of the Redis server. Default: 127.0.0.1 port: The port number on which the Redis server is listening. Default: 6379

2. CREATE USER MAPPING 支持的 option (指定密码)

password: The password to authenticate to the Redis server with. Default:

3. CREATE FOREIGN TABLE 支持的 option

* 指定数据库ID

* 表类型(hash,list,set,zset或scalar)

* key 前缀 key 集合 singleton_key 指定 KEY

conf database: The numeric ID of the Redis database to query. Default: 0 tabletype: can be 'hash', 'list', 'set' or 'zset' Default: none, meaning only look at scalar values. tablekeyprefix: only get items whose names start with the prefix Default: none tablekeyset: fetch item names from the named set Default: none singleton_key: get all the values in the table from a single named object. Default: none, meaning don't just use a single object.

7. 安装MySQL 5.7的UDF函数

在 CentOS7 系统上安装 mysql-udf-http

$ export PKG_CONFIG=/usr/bin/pkg-config

$ export PKG_CONFIG_PATH=/usr/share/pkgconfig:/usr/lib/pkgconfig

$ echo "/usr/local/mysql/lib" > /etc/ld.so.conf.d/mysql.conf

$ /sbin/ldconfig

$ git clone https://github.com/y-ken/mysql-udf-http.git

$ cd mysql-udf-http

$ chmod +x ./configure

$ ./configure --with-mysql=/usr/local/mysql/bin/mysql_config --prefix=/usr --libdir=/usr/local/mysql/lib/plugin

$ make && make install

$ cd ../

在 CentOS7 系统上安装 mysql-udf-sys

$ git clone https://github.com/mysqludf/lib_mysqludf_sys.git

$ cd lib_mysqludf_sys

$ gcc -DMYSQL_DYNAMIC_PLUGIN -fPIC -Wall -I/usr/local/mysql/include -I. -shared lib_mysqludf_sys.c -o lib_mysqludf_sys.so

$ cp lib_mysqludf_sys.so /usr/local/mysql/lib/plugin

在 CentOS7 系统上安装 gearman-mysql-udf

$ wget https://launchpad.net/gearman-mysql-udf/trunk/0.6/+download/gearman-mysql-udf-0.6.tar.gz

$ tar xf gearman-mysql-udf-0.6.tar.gz -C ./

$ cd gearman-mysql-udf-0.6

$ ./configure --with-mysql=/usr/local/mysql/bin/mysql_config --libdir=/usr/local/mysql/lib/plugin

$ make && make install

创建 MySQL 自定义函数

mysql> DROP FUNCTION IF EXISTS http_get;

mysql> DROP FUNCTION IF EXISTS http_post;

mysql> DROP FUNCTION IF EXISTS http_put;

mysql> DROP FUNCTION IF EXISTS http_delete;

mysql> create function http_get returns string soname 'mysql-udf-http.so';

mysql> create function http_post returns string soname 'mysql-udf-http.so';

mysql> create function http_put returns string soname 'mysql-udf-http.so';

mysql> create function http_delete returns string soname 'mysql-udf-http.so';

mysql> DROP FUNCTION IF EXISTS lib_mysqludf_sys_info;

mysql> DROP FUNCTION IF EXISTS lib_mysqludf_sys_info;

mysql> DROP FUNCTION IF EXISTS sys_set;

mysql> DROP FUNCTION IF EXISTS sys_exec;

mysql> DROP FUNCTION IF EXISTS sys_eval;

mysql> CREATE FUNCTION lib_mysqludf_sys_info RETURNS string SONAME 'lib_mysqludf_sys.so';

mysql> CREATE FUNCTION sys_get RETURNS string SONAME 'lib_mysqludf_sys.so';

mysql> CREATE FUNCTION sys_set RETURNS int SONAME 'lib_mysqludf_sys.so';

mysql> CREATE FUNCTION sys_exec RETURNS int SONAME 'lib_mysqludf_sys.so';

mysql> CREATE FUNCTION sys_eval RETURNS string SONAME 'lib_mysqludf_sys.so';

mysql> DROP FUNCTION IF EXISTS gman_do_background;

mysql> DROP FUNCTION IF EXISTS gman_servers_set;

mysql> CREATE FUNCTION gman_do_background RETURNS STRING SONAME 'libgearman_mysql_udf.so';

mysql> CREATE FUNCTION gman_servers_set RETURNS STRING SONAME 'libgearman_mysql_udf.so';

8. 安装RabbitMQ

安装Erlang

$ rpm --import https://packages.erlang-solutions.com/rpm/erlang_solutions.asc

$ rpm -Uvh https://bintray.com/rabbitmq/rpm/download_file?file_path=erlang%2F21%2Fel%2F7%2Fx86_64%2Ferlang-21.0.2-1.el7.centos.x86_64.rpm

安装RabbitMQ

$ rpm --import https://www.rabbitmq.com/rabbitmq-release-signing-key.asc

$ wget https://dl.bintray.com/rabbitmq/all/rabbitmq-server/3.7.7/rabbitmq-server-3.7.7-1.el7.noarch.rpm

$ yum install rabbitmq-server-3.7.7-1.el7.noarch.rpm

关于RabbitMQ的一些基本操作

$ chkconfig rabbitmq-server on # 添加开机启动RabbitMQ服务

$ service rabbitmq-server start # 启动服务

$ service rabbitmq-server status # 查看服务状态

$ service rabbitmq-server stop # 停止服务

# 查看当前所有用户

$ rabbitmqctl list_users

# 查看默认guest用户的权限

$ rabbitmqctl list_user_permissions guest

# 由于RabbitMQ默认的账号用户名和密码都是guest。为了安全起见, 先删掉默认用户

$ rabbitmqctl delete_user guest

# 添加新用户

$ rabbitmqctl add_user username password

# 设置用户tag

$ rabbitmqctl set_user_tags username administrator

# 赋予用户默认vhost的全部操作权限

$ rabbitmqctl set_permissions -p / username ".*" ".*" ".*"

# 查看用户的权限

$ rabbitmqctl list_user_permissions username

查看RabbitMQ日志

日志中给出了 rabbitmq 启动的重要信息,如 node 名,$home 目录,cookie hash 值,日志文件,数据存储目录等;

给出的信息会指出无配置文件(如下图),默认安装没有此文件

$ cat /var/log/rabbitmq/rabbit@rmq-node1.log

开启web管理接口

通过浏览器访问 http://localhost:15672

shell $ rabbitmq-plugins enable rabbitmq_management

rabbitmq.conf

手工建目录,将配置样例文件拷贝到配置目录并改名

$ mkdir -p /etc/rabbitmq

$ cp /usr/share/doc/rabbitmq-server-3.6.10/rabbitmq.config.example /etc/rabbitmq/rabbitmq.config

配置重启生效

$ systemctl restart rabbitmq-server

另外还可以建环境配置文件:/etc/rabbitmq/rabbitmq-env.conf

设置iptables

tcp4369 端口用于集群邻居发现;

tcp5671,5672 端口用于 AMQP 0.9.1 and 1.0 clients 使用;

tcp15672 端口用于 http api 与 rabbitadmin 访问,后者仅限在 management plugin 开启时;

tcp25672 端口用于 erlang 分布式节点/工具通信

$ vi /etc/sysconfig/iptables

-A INPUT -p tcp -m state --state NEW -m tcp --dport 4369 -j ACCEPT

-A INPUT -p tcp -m state --state NEW -m tcp --dport 5671 -j ACCEPT

-A INPUT -p tcp -m state --state NEW -m tcp --dport 5672 -j ACCEPT

-A INPUT -p tcp -m state --state NEW -m tcp --dport 15672 -j ACCEPT

-A INPUT -p tcp -m state --state NEW -m tcp --dport 25672 -j ACCEPT

$ service iptables restart

9、安装 kafka

安装 JDK

$ yum install java-1.8.0-openjdk java-1.8.0-openjdk-devel java-1.8.0-openjdk-javadoc

$ vi /etc/profile

export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.171-8.b10.el7_5.x86_64

export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

export PATH=$PATH:$JAVA_HOME/bin

$ source /etc/profile #使配置文件立即生效

安装 zookeeper

$ cd /www/software

$ wget https://archive.apache.org/dist/zookeeper/zookeeper-3.4.9/zookeeper-3.4.9.tar.gz

$ tar -zxvf zookeeper-3.4.9.tar.gz

$ mv /www/software/zookeeper-3.4.9 /www/server/zookeeper

$ vi /etc/profile

export ZOOKEEPER_HOME=/www/server/zookeeper

export PATH=$ZOOKEEPER_HOME/bin:$PATH

export PATH

$ source /etc/profile

$ cd /www/server/zookeeper/conf

$ cp zoo_sample.cfg zoo.cfg

$ vi /www/server/zookeeper/conf/zoo.cfg

# zookeeper 定义的基准时间间隔,单位:毫秒

tickTime=2000

# 数据文件夹

dataDir=/www/server/zookeeper/data

# 日志文件夹

dataLogDir=/www/server/zookeeper/logs

# 客户端访问 zookeeper 的端口号

clientPort=2181

$ /www/server/zookeeper/bin/zkServer.sh start

ZooKeeper JMX enabled by default

Using config: /www/server/zookeeper/bin/../conf/zoo.cfg

Starting zookeeper ... STARTED

# 安装 `zookeeper c client`

$ cd /www/server/zookeeper/src/c

$ ./configure

$ make && make install

安装 kafka

$ cd /www/software

$ wget https://archive.apache.org/dist/kafka/1.1.0/kafka_2.12-1.1.0.tgz

$ tar -xzvf kafka_2.12-1.1.0.tgz

$ mv /www/software/kafka_2.12-1.1.0 /www/server/kafka

配置 kafka,修改 server.properties

$ mkdir /www/wwwlogs/kafka #创建kafka日志目录

$ cd /www/server/kafka/config #进入配置目录

$ vi server.properties #编辑修改相应的参数

broker.id=0

port=9092 #端口号

host.name=192.168.137.254 #服务器IP地址,修改为自己的服务器IP

log.dirs=/www/wwwlogs/kafka #日志存放路径,上面创建的目录

zookeeper.connect=localhost:2181 #zookeeper地址和端口,单机配置部署,localhost:2181

配置 kafka 下的 zookeeper

$ mkdir /www/server/zookeeper #创建zookeeper目录

$ mkdir /www/wwwlogs/zookeeper #创建zookeeper日志目录

$ cd /www/server/kafka/config #进入配置目录

$ vi zookeeper.properties #编辑修改相应的参数

dataDir=/www/server/kafka/zookeeper #zookeeper数据目录

dataLogDir=/www/server/kafka/log/zookeeper #zookeeper日志目录

clientPort=2181

maxClientCnxns=100

tickTime=2000

initLimit=10

创建启动 kafka 脚本

$ vi kafkastart.sh

#!/bin/bash

#启动zookeeper

/www/server/kafka/bin/zookeeper-server-start.sh /www/server/kafka/config/zookeeper.properties &

sleep 3 #等3秒后执行

#启动kafka

/www/server/kafka/bin/kafka-server-start.sh /www/server/kafka/config/server.properties &

创建关闭 kafka 脚本

$ vi kafkastop.sh

#!/bin/bash

#关闭zookeeper

/www/server/kafka/bin/zookeeper-server-stop.sh /www/server/kafka/config/zookeeper.properties &

sleep 3 #等3秒后执行

$ /www/server/kafka/bin/kafka-server-stop.sh /www/server/kafka/config/server.properties &

添加脚本执行权限

$ chmod +x kafkastart.sh

$ chmod +x kafkastop.sh

设置脚本开机自动执行

$ vi /etc/rc.d/rc.local # 编辑,在最后添加一行

$ sh /www/server/kafka/kafkastart.sh & # 设置开机自动在后台运行脚本

$ sh /www/server/kafka/kafkastart.sh # 启动kafka

$ sh /www/server/kafka/kafkastop.sh # 关闭kafka

测试 kafka

步骤1:启动 zookeeper

$ /www/server/zookeeper/bin/zkServer.sh start

JMX enabled by default

Using config: /home/laoyang/zookeeper/bin/../conf/zoo.cfg

grep: /home/laoyang/zookeeper/bin/../conf/zoo.cfg: No such file or directory

Starting zookeeper ... STARTED

步骤2:启动 kafka

$ ./kafkastart.sh

步骤3:测试创建 topic

$ cd /www/server/kafka/bin

$ ./kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test

步骤4:通过 list命令查看创建的 topic

$ cd /www/server/kafka/bin

$ ./kafka-topics.sh –list –zookeeper localhost:2181

步骤5:生产消息测试

$ ./kafka-console-producer.sh --broker-list localhost:9092 --topic test

laoyang I love you!

步骤6:消费消息测试

$ ./kafka-console-consumer.sh --zookeeper localhost:2181 --topic test --from-beginning

I'm laoyang #之前测试输入的内容

laoyang I love you!

经过以上6步,代表kafka安装成功。

停止 kafka

步骤1:停止 Kafka

$ cd /usr/local/kafka

$ ./kafkastop.sh

步骤2:停止 Zookeeper server

$ /www/server/zookeeper/bin/zkServer.sh stop

10. 为 PHP 添加扩展

添加 PostgreSQL 扩展

$ cd ~/oneinstack/src

$ tar zxvf php-7.2.6.tar.gz

$ cd php-7.2.6/ext/pgsql

$ /usr/local/php/bin/phpize

$ ./configure --with-php-config=/usr/local/php/bin/php-config --with-pgsql=/usr/pgsql-9.6

$ make && make install

添加 PDO-PostgreSQL 扩展

$ cd ~/oneinstack/src/php-7.2.6/ext/pdo_pgsql

$ /usr/local/php/bin/phpize

$ ./configure --with-php-config=/usr/local/php/bin/php-config --with-pdo-pgsql=/usr/pgsql-9.6

$ make && make install

添加 Gearman 扩展

$ git clone https://github.com/wcgallego/pecl-gearman.git

$ cd pecl-gearman

$ /usr/local/php/bin/phpize

$ ./configure --with-php-config=/usr/local/php/bin/php-config --with-gearman=/usr/local/gearmand/

$ make && make install

添加rabbitmq扩展

安装rabbitmq-c

$ yum install libtool autoconf

$ wget https://github.com/alanxz/rabbitmq-c/archive/v0.9.0.tar.gz

$ tar zxvf v0.9.0.tar.gz

$ cd rabbitmq-c-0.9.0/

$ autoreconf -i

#这一步是在rabbitmq-c的根目录下创建一个build子目录

$ mkdir build && cd build

# 这一步是让cmake根据../CMakeList.txt,即rabbitmq-c的根目录下的CMakeList.txt创建Makefile文件

# Makefile文件会被创建到build目录中

$ cmake -DCMAKE_INSTALL_PREFIX=/usr/local/rabbitmq-c ..

# 这一步是真正的build rabbitmq-c库的,注意,不要漏掉点 ‘.‘

$ cmake --build . --target install

$ ln -s /usr/local/rabbitmq-c/lib64 /usr/local/rabbitmq-c/lib

安装amqp扩展

$ wget http://pecl.php.net/get/amqp-1.9.3.tgz

$ tar zxvf amqp-1.9.3.tgz

$ cd amqp-1.9.3

$ phpize

$ ./configure --with-php-config=/usr/local/php/bin/php-config --with-amqp --with-librabbitmq-dir=/usr/local/rabbitmq-c

$ make

$ make install

为 PHP 添加 zookeeper 扩展

为 PHP 添加 libzookeeper 扩展

$ git clone https://github.com/Timandes/libzookeeper.git

$ cd libzookeeper

$ /www/server/php/72/bin/phpize

$ ./configure --with-php-config=/www/server/php/72/bin/php-config --with-libzookeeper=/usr/local/bin/cli_mt

$ make && make install

为 PHP 添加 zookeeper 扩展

$ git clone -b php7 https://github.com/jbboehr/php-zookeeper.git

$ cd /www/server/php-zookeeper

$ /www/server/php/72/bin/phpize

$ ./configure --with-php-config=/www/server/php/72/bin/php-config

$ make && make install

配置 PHP 支持自定义扩展

$ vi /usr/local/php/etc/php.d/90-pgsql.ini

extension=pgsql.so

extension=pdo_pgsql.so

extension=gearman.so

extension=amqp.so

$ service httpd restart

11. Composer安装和使用

安装 Composer

# 下载composer.phar

$ wget https://dl.laravel-china.org/composer.phar -O /usr/local/bin/composer

# 把composer.phar移动到环境下让其变成可执行

$ chmod a+x /usr/local/bin/composer

$ composer config -g repo.packagist composer https://packagist.phpcomposer.com

# 测试

$ composer -V

使用 Composer 安装 ThinkPHP 5.1

$ composer create-project topthink/think thinkphp5.1 --prefer-dist

$ cd thinkphp5.1

$ composer require topthink/think-swoole

$ composer require flc/alidayu

$ composer require topthink/think-helper

$ composer require topthink/think-image

$ composer require topthink/think-captcha

$ composer require nmred/kafka-php

$ composer require adodb/adodb-php

$ composer require phpoffice/phpspreadsheet

$ composer require phpoffice/phpexcel

$ composer require phpoffice/phpword

$ composer require tecnickcom/tcpdf

$ composer require mpdf/mpdf

$ composer require gmars/tp5-qiniu

$ composer require apache/log4php

$ composer require ccampbell/chromephp

$ composer require php-amqplib/php-amqplib

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值