如何在CentOS 7上安装DreamFactory开源

DreamFactory是一个开源程序,可以将任何数据库转换为RESTful API平台。

DreamFactory可以部署在各种平台上。在本文中,我们将在CentOS 7服务器上安装DreamFactory开源版。

先决条件

  • 一个CentOS 7 x64服​​务器实例。
  • 一个sudo的用户

步骤1:更新系统

从SSH终端以sudo用户身份登录到系统,然后按以下方式更新系统:

sudo yum install epel-release -y
sudo yum update -y
sudo shutdown -r now

步骤2:安装Apache

根据DreamFactory的要求,您需要使用YUM安装Apache Web服务器:

sudo yum install httpd -y

删除默认的Apache欢迎页面:

sudo sed -i 's/^/#&/g' /etc/httpd/conf.d/welcome.conf

禁用Apache的公共目录和文件列表:

sudo sed -i "s/Options Indexes FollowSymLinks/Options FollowSymLinks/" /etc/httpd/conf/httpd.conf

启动Apache服务并在系统启动时启用它:

sudo systemctl start httpd.service
sudo systemctl enable httpd.service

步骤3:安装MariaDB

在本教程中,我们将使用MariaDB 10.1作为DreamFactory将使用的数据库服务器。

3.1设置MariaDB 10.1 YUM存储库

使用以下代码段创建MariaDB 10.1 YUM存储库:

cat <<EOF | sudo tee -a /etc/yum.repos.d/MariaDB.repo
# MariaDB 10.1 CentOS repository list - created 2017-01-14 03:11 UTC
# http://downloads.mariadb.org/mariadb/repositories/
[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/10.1/centos7-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1
EOF

3.2使用YUM安装MariaDB 10.1

sudo yum install MariaDB-server MariaDB-client -y

3.3启动并启用MariaDB服务

sudo systemctl start mariadb.service
sudo systemctl enable mariadb.service

3.4确保MariaDB的安装

sudo /usr/bin/mysql_secure_installation

回答以下问题,并确保输入您自己的MariaDB根密码。

  • 输入root的当前密码(不输入密码):只需按下Enter按钮
  • 设置root密码?[是/否]:Y
  • 新密码: <your-password>
  • 重新输入新的密码: <your-password>
  • 删除匿名用户?[是/否]:Y
  • 禁止远程root登录?[是/否]:Y
  • 删除测试数据库并访问它?[是/否]:Y
  • 现在重新加载特权表?[是/否]:Y

3.5为DreamFactory创建MariaDB数据库

登录到MySQL shell root

mysql -u root -p

输入您在步骤3.4中设置的MariaDB超级用户密码以登录。

在MySQL Shell中,如下创建一个database dreamfactory,一个数据库用户dreamfactoryuser及其密码yourpassword

注意:为了安全起见,您必须用自己的参数替换上述三个示例参数。

CREATE DATABASE dreamfactory;
CREATE USER 'dreamfactoryuser'@'localhost' IDENTIFIED BY 'yourpassword';
GRANT ALL PRIVILEGES ON dreamfactory.* TO 'dreamfactoryuser'@'localhost' IDENTIFIED BY 'yourpassword' WITH GRANT OPTION;
FLUSH PRIVILEGES;
EXIT;

步骤4:安装PHP 7.x和Composer

4.1安装PHP 7.1和必要的扩展

在CentOS 7上,您可以使用Webtatic YUM存储库安装PHP 7.1和必要的PHP扩展:

sudo rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
sudo yum install mod_php71w php71w-common php71w-cli php71w-gd php71w-mbstring php71w-mcrypt php71w-xml php71w-mysqlnd php71w-pecl-mongodb -y

4.2安装Composer

如下所述,安装1.3.1撰写本文时的最新版本的Composer 。

注意:如果Composer更新其安装说明,则以上说明可能会更改。因此,您应该始终查看Composer官方下载页面,以获取最新的安装说明。

cd
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php -r "if (hash_file('SHA384', 'composer-setup.php') === '55d6ead61b29c7bdee5cccfb50076874187bd9f21f65d8991d46ec5cc90518f447387fb9f76ebae1fbbacf329e583e30') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
php composer-setup.php
php -r "unlink('composer-setup.php');"

4.3使Composer全局可用

sudo mv composer.phar /usr/local/bin/composer

步骤5:安装Git和DreamFactory

5.1安装Git

sudo yum install git -y

5.2安装DreamFactory

下载2.4.2撰写本文时,DreamFactory的最新稳定版本,然后按如下所示安装DreamFactory和依赖项:

cd
wget https://github.com/dreamfactorysoftware/dreamfactory/archive/2.4.2.tar.gz
tar -zxvf 2.4.2.tar.gz
cd dreamfactory-2.4.2
composer install --no-dev
sudo mv ~/dreamfactory-2.4.2 /opt
sudo chown -R root:root /opt/dreamfactory-2.4.2
sudo chown -R apache:apache /opt/dreamfactory-2.4.2/storage/ /opt/dreamfactory-2.4.2/bootstrap/cache/
sudo chmod -R 2775 /opt/dreamfactory-2.4.2/storage/ /opt/dreamfactory-2.4.2/bootstrap/cache/
cd /opt/dreamfactory-2.4.2

使用以下命令创建一个.env文件来存储DreamFactory配置:

sudo php artisan dreamfactory:setup

出现提示时,输入数据库设置,如下所示:

  Which database would you like to use for system tables? [sqlite]:
  [0] sqlite
  [1] mysql
  [2] pgsql
  [3] sqlsrv
 > 1

 Enter your mysql Host:
 > localhost

 Enter your database name:
 > dreamfactory

 Enter your database username:
 > dreamfactoryuser

 Enter your database password:
 > yourpassword

 Re-enter your database password:
 > yourpassword

 Enter your Database Port [3306]:
 > 3306

再次运行相同的命令以设置第一个管理员用户:

sudo php artisan dreamfactory:setup

出现提示时,输入凭据,如下所示:

Creating the first admin user...

 Enter your first name:
 > John

 Enter your last name:
 > Doe

 Enter display name:
 > John Doe

 Enter your email address?:
 > admin@example.com

 Choose a password:
 > <your-admin-password>

 Re-enter password:
  > <your-admin-password>

5.3准备访问网络

为DreamFactory设置虚拟主机。使用以下代码段设置虚拟主机。记得替换的值ServerAdminServerNameServerAliasErrorlog,并CustomLog用自己的人。

cat <<EOF | sudo tee -a /etc/httpd/conf.d/dreamfactory.conf
<VirtualHost *:80>
ServerAdmin admin@example.com
DocumentRoot /opt/dreamfactory-2.4.2/public/
ServerName dreamfactory.example.com
ServerAlias www.dreamfactory.example.com
<Directory /opt/dreamfactory-2.4.2/public/>
Options FollowSymLinks
AllowOverride All
AllowOverride None
Require all granted
RewriteEngine on
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^.*$ /index.php [L]
<LimitExcept GET HEAD PUT DELETE PATCH POST>
    Allow from all
</LimitExcept>
</Directory>
ErrorLog /var/log/httpd/dreamfactory.example.com-error_log
CustomLog /var/log/httpd/dreamfactory.example.com-access_log common
</VirtualHost>
EOF

通过重新启动Apache服务来使您的修改生效:

sudo systemctl restart httpd.service

修改防火墙规则以允许Web访问:

sudo firewall-cmd --zone=public --permanent --add-service=http
sudo firewall-cmd --reload

步骤6:访问DreamFactory

将您的Web浏览器指向http://203.0.113.1以访问DreamFactory,然后使用您之前设置的管理员电子邮件地址和密码登录。

到此结束我们的教程。谢谢阅读。

留下評論

在Arch Linux上使用Makepkg

在Arch Linux上使用Makepkg

在Arch Linux上使用Makepkg可以避免系统污染,确保仅安装必要的依赖关系。

如何在Ubuntu 16.04上安装OpenSIPS控制面板

如何在Ubuntu 16.04上安装OpenSIPS控制面板

快速学习如何在Ubuntu 16.04上安装OpenSIPS控制面板,为VoIP提供商提供支持的功能。

在Fedora 28上安装Akaunting

在Fedora 28上安装Akaunting

学习如何在Fedora 28上安装Akaunting,一款适合小型企业和自由职业者的开源会计软件。

如何在CentOS 7上安装Mailtrain新闻通讯应用程序

如何在CentOS 7上安装Mailtrain新闻通讯应用程序

使用其他系统?Mailtrain是一个基于Node.js和MySQL / MariaDB构建的开源自托管新闻通讯应用程序。

诊断Minecraft服务器延迟和低TPS

诊断Minecraft服务器延迟和低TPS

了解導致Minecraft延遲的原因和解決方案,包括優化伺服器性能和減少滯後的步驟。

AI 能否應對越來越多的勒索軟件攻擊?

AI 能否應對越來越多的勒索軟件攻擊?

勒索軟件攻擊呈上升趨勢,但人工智能能否幫助應對最新的計算機病毒?AI 是答案嗎?在這裡閱讀知道是 AI 布恩還是禍根

ReactOS:這是 Windows 的未來嗎?

ReactOS:這是 Windows 的未來嗎?

ReactOS,一個開源和免費的操作系統,這裡有最新版本。它能否滿足現代 Windows 用戶的需求並打倒微軟?讓我們更多地了解這種老式但更新的操作系統體驗。

通過 WhatsApp 桌面應用程序 24*7 保持聯繫

通過 WhatsApp 桌面應用程序 24*7 保持聯繫

Whatsapp 終於為 Mac 和 Windows 用戶推出了桌面應用程序。現在您可以輕鬆地從 Windows 或 Mac 訪問 Whatsapp。適用於 Windows 8+ 和 Mac OS 10.9+

人工智能如何將流程自動化提升到新的水平?

人工智能如何將流程自動化提升到新的水平?

閱讀本文以了解人工智能如何在小型公司中變得流行,以及它如何增加使它們成長並為競爭對手提供優勢的可能性。

macOS Catalina 10.15.4 補充更新引發的問題多於解決

macOS Catalina 10.15.4 補充更新引發的問題多於解決

最近,Apple 發布了 macOS Catalina 10.15.4 補充更新以修復問題,但似乎該更新引起了更多問題,導致 mac 機器變磚。閱讀這篇文章以了解更多信息