GNU/Linux >> Linux の 問題 >  >> Ubuntu

Ubuntu16.04にInvoiceNinjaをインストールする方法

Invoice Ninjaは、請求、支払い、時間追跡などを行うためのWebベースのオープンソースソフトウェアです。オンラインで数秒で請求書を作成し、Stripe、PayPal、WePayなどの支払いゲートウェイとやり取りできます。請求書忍者は、PDF形式でライブの請求書プレビューを表示できます。テンプレートの会社のロゴは自分で簡単に変更できます。 Invoice NinjaはPHPに基づいており、Laravel Frameworkでビルドされ、LinuxとWindowsにインストールできます。

このチュートリアルでは、Ubuntu16.04にInvoiceNinjaをインストールする方法を紹介します。 WebサーバーとしてNginxを使用し、データベースシステムとしてMariaDBを使用します。

前提条件

  • Ubuntu16.04サーバー。
  • root権限。
ステップ1-Nginxをインストールします

このステップでは、NginxWebサーバーをインストールします。 ssh rootアカウントでサーバーに接続し(または別のユーザーでログインし、「sudo -s」を使用してrootになります)、リポジトリを更新します。

ssh [email protected]
apt-get update

以下のaptコマンドを使用してNginxをインストールします:

apt-get install -y nginx

nginxのインストールが完了したら、Nginxを起動し、起動時に開始するように追加します。

systemctl start nginx
systemctl enable nginx

nginxが実行されていることを確認してください。 nginxが使用するポートを確認してください。デフォルトのWebサーバーポートは80です。

netstat -plntu

ステップ2-MariaDBサーバーをインストールして構成する

Nginxをインストールした後、パッケージmariadb-serverをシステムにインストールする必要があります。 Ubuntuリポジトリで入手できます。以下のコマンドを使用して、mariadb-serverとその依存関係をインストールします。

apt-get install -y mariadb-server

インストールが完了したら、mariadbサービスを開始し、これらのsystemctlコマンドを使用して起動時に開始できるようにします。

systemctl restart mysql
systemctl enable mysql

MariaDBが起動し、以下のコマンドでmariadbのrootパスワードを設定できるようになりました。

mysql_secure_installation

新しいMariaDBルートパスワードを設定します。

Set root password? [Y/n] Y
New password:
Re-enter new password:

Remove anonymous users? [Y/n] Y
Disallow root login remotely? [Y/n] Y
Remove test database and access to it? [Y/n] Y
Reload privilege tables now? [Y/n] Y

次に、rootユーザーとしてmysqlシェルに接続してみます。

mysql -u root -p
TYPE YOUR ROOT PASSWORD

すべてが正しく機能すると、MySQLシェルが表示されます。

次に、InvoiceNinjaの新しいデータベースと新しいユーザーを作成する必要があります。 ' ninjadbという名前の新しいデータベースを作成します '、新規ユーザー'忍者 'パスワード付き'aqwe123 '。インストール用に別の安全なパスワードを選択してください!

以下のmysqlクエリを使用してそれらを作成します。新しいデータベースを作成し、新しいユーザーとパスワードを作成し、パスワードを使用して新しいユーザーにデータベースを付与します。

create database ninjadb;
create user [email protected] identified by 'aqwe123';
grant all privileges on ninjadb.* to [email protected] identified by 'aqwe123';
flush privileges;

MariaDBがインストールされ、InvoiceNinjaの新しいデータベースとユーザーが作成されました。

ステップ3-PHP7.0-FPMのインストールと構成

Invoice NinjaはPHPに基づいているため、システムにPHPをインストールする必要があります。この請求書忍者のインストールにはPHP7.0-FPMを使用します。

以下のコマンドを使用して、InvoiceNinjaに必要なPHP7.0-FPMおよびその他のPHP拡張機能をインストールします。

apt-get install -y php7.0-fpm php7.0-gd php7.0-xml php7.0-mysql php7.0-zip php7.0-mbstring php7.0-mcrypt php7.0-curl php7.0-gmp

インストール後、PHP構成ディレクトリに移動し、php.iniファイルを編集します。

cd /etc/php/7.0/
vim fpm/php.ini

以下のCGI行のコメントを解除し、値を0に変更します。

cgi.fix_pathinfo=0

保存して終了します。

cliディレクトリのphp.iniファイルを編集します。

vim cli/php.ini

以下のCGI行のコメントを解除し、値を0に変更します。

cgi.fix_pathinfo=0

保存して終了します。

次に、PHP7.0-FPMを起動し、起動時に起動できるようにします。

systemctl restart php7.0-fpm
systemctl enable php7.0-fpm

デフォルトでは、PHP7.0-FPMはソケットファイルで実行されています。以下のコマンドで確認すると、スクリーンショットに示すようなPHPソケットファイルが表示されます。

netstat -pl

PHP7.0-FPMおよびInvoiceNinjaに必要なすべての拡張機能がインストールされています。

ステップ4-請求書忍者のインストールと構成

このステップでは、InvoiceNinjaをダウンロードして構成します。まず、unzipをシステムにインストールします。

apt-get install -y unzip

' / var / www'に移動します ディレクトリを作成し、wgetコマンドを使用してInvoiceNinjaソースコードをダウンロードします。

cd /var/www/
wget https://download.invoiceninja.com/ninja-v3.1.0.zip

Invoice Ninja zipファイルを抽出し、「ninja」ディレクトリに移動します。

unzip ninja-v3.1.0.zip
cd ninja/

Laravelプロジェクトでは、PHP用のcomposer依存関係マネージャーをインストールする必要があります。 Ubuntuリポジトリで利用できるので、aptコマンドでインストールできます。

apt-get install -y composer

次に、以下のcomposerコマンドを使用してInvoiceNinjaの依存関係をインストールします。

composer install --no-dev -o
  • -no-dev :require-devパッケージのインストールを無効にします
  • -o :オートローダーダンプ中にオートローダーを最適化する

依存関係のインストールが完了したら、.envファイルをコピーしてvimで編集します。

cp .env.example .env
vim .env

以下のデータベース設定の値を変更してください。

DB_DATABASE=ninjadb
DB_USERNAME=ninja
DB_PASSWORD=aqwe123

保存して終了します。

次に、configディレクトリのデータベース構成を編集します。

vim config/database.php

MariaDB /MySQLデータベースを使用しています。MySQLの55行目に移動します。

'database'  => env('DB_DATABASE', 'ninjadb'),
'username'  => env('DB_USERNAME', 'ninja'),
'password'  => env('DB_PASSWORD', 'aqwe123'),

パスワードを忍者ユーザー用に設定したものに置き換えてください!

保存して終了します。

すべての構成ファイルが編集されます。次に、以下のコマンドを使用してデータベースを移行します。

php artisan migrate

コマンドを実行するように求められます。「はい」と入力します。 'そしてEnterキーを押します。

次に、すべてのレコードをデータベースにシードします。

php artisan db:seed

はい」と入力します 'そしてEnterキーを押して確認します。

LaravelプロジェクトのInvoiceNinjaの新しいアプリケーションキーを生成します。

php artisan key:generate

アプリケーションキーが表示されます。

app.phpファイルをvimで編集します。

vim config/app.php

APP_KEYの85行目に移動し、生成したキーを貼り付けます。

'key' => env('APP_KEY', 'base64:0o5QLWbNeDCNer064+600Hl8oJ20OPCIymadKJQ1RGo='),

保存して終了します。

最後に、' / var / www / ninjaの所有者を変更します 'ディレクトリから'www-data 'ユーザーとグループ。

cd /var/www/
chown -R www-data:www-data ninja/

Invoice Ninjaが構成され、インストールの準備ができています。

ステップ5-SSLと仮想ホストを構成する

このステップでは、OpenSSLコマンドを使用してSSL証明書ファイルを生成し、InvoiceNinjaの新しい仮想ホスト構成を作成します。ライブサーバーを使用している場合は、OpenSSLで自己署名SSL証明書を生成する代わりに、Let'sEncryptの無料のSSLを使用できます。

新しい'証明書を作成します 'SSLファイルのディレクトリ。

mkdir -p /etc/nginx/cert/

以下のopensslコマンドを実行して、証明書ファイルを生成します。

openssl req -new -x509 -days 365 -nodes -out /etc/nginx/cert/ninja.crt -keyout /etc/nginx/cert/ninja.key

証明書ファイルのアクセス許可を「600」に変更します。

chmod 600 /etc/nginx/cert/*

次に、Nginxディレクトリに移動し、「 ninja」という名前の新しい仮想ホスト構成ファイルを作成します。 '。

cd /etc/nginx/
vim sites-available/ninja

以下に仮想ホスト構成を貼り付けます。

server {
    # Your Domain Name - hakase-labs.co
    listen      80;
    server_name ninja.co www.ninja.co;

    # Rewrite redirect to https
    add_header Strict-Transport-Security max-age=2592000;
    rewrite ^ https://$server_name$request_uri? permanent;
}

server {
    # Your Domain Name - hakase-labs.co
    listen      443 default;
    server_name ninja.co www.ninja.co;

    # Enable SSL for Invoice Ninja
    ssl on;
    ssl_certificate     /etc/nginx/cert/ninja.crt;
    ssl_certificate_key /etc/nginx/cert/ninja.key;
    ssl_session_timeout 5m;

    ssl_ciphers               'AES128+EECDH:AES128+EDH:!aNULL';
    ssl_protocols              TLSv1 TLSv1.1 TLSv1.2;
    ssl_prefer_server_ciphers on;

    # Invoice Ninja web root files
    root /var/www/ninja/public;

    index index.html index.htm index.php;

    charset utf-8;

    location / {
        try_files $uri $uri/ /index.php?$query_string;
    }

    location = /favicon.ico { access_log off; log_not_found off; }
    location = /robots.txt  { access_log off; log_not_found off; }

    # Access and Error Log for Invoice Ninja
    access_log  /var/log/nginx/ininja.access.log;
    error_log   /var/log/nginx/ininja.error.log;

    sendfile off;

    # Handle PHP Applications
    location ~ \.php$ {
        fastcgi_split_path_info ^(.+\.php)(/.+)$;
        fastcgi_pass unix:/run/php/php7.0-fpm.sock;
        fastcgi_index index.php;
        include fastcgi_params;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        fastcgi_intercept_errors off;
        fastcgi_buffer_size 16k;
        fastcgi_buffers 4 16k;
    }

    location ~ /\.ht {
        deny all;
    }
}

保存して終了します。

忍者仮想ホストを有効にして、Nginx構成をテストし、エラーがないことを確認します。

ln -s /etc/nginx/sites-available/ninja /etc/nginx/sites-enabled/
nginx -t

次に、nginxWebサーバーを再起動します。

systemctl restart nginx

InvoiceNinja仮想ホストの構成が完了しました。

ステップ6-インストールとテストの終了

Webブラウザーを開き、請求書忍者URL:ninja.coと入力します。 https接続とセットアップページにリダイレクトされます。

アプリケーション設定、データベース接続、電子メール設定、ユーザーの詳細を入力し、請求書忍刀を確認します。

[送信]をクリックします 'そして、請求書忍者のログインページにリダイレクトされます。

メールアドレスとパスワードを入力し、[ログイン]を押します '。

請求書忍者ダッシュボードが表示されます。

請求書忍者設定ページ。

Ubuntu16.04にNginxとMariaDBをインストールしたInvoiceNinja。


Ubuntu
  1. Ubuntu14.04にPHP7をインストールする方法

  2. Ubuntu15.04にPHP7をインストールする方法

  3. Ubuntu18.04にInvoiceNinjaをインストールする方法

  1. Ubuntu 18.04 /Ubuntu16.04にPHP7.4/ 7.3/7.2をインストールする方法

  2. Ubuntu18.04にPHP7.3をインストールする方法

  3. Debian9にInvoiceNinjaをインストールする方法

  1. Ubuntu20.04にRをインストールする方法

  2. Ubuntu18.04にGoをインストールする方法

  3. Ubuntu18.04にMagento2をインストールする方法