必要要件
PHP | 7.3以降 |
Laravel | 7.x(8.xは未確認、次期バージョンでは確認予定) |
ダウンロード
下記から最新のFreeGroupをダウンロード可能です。
インストール手順
FreeGroup Zipファイル解凍
> unzip freegroup-master.zip
> ls
freegroup-master freegroup-master.zip
Laravelのインストール
> cd freegroup-master
> composer update
> composer require "laravelcollective/html"
> composer require doctrine/dbal
.envファイルの設定
ご自身のサーバ環境によって.evnファイルを編集してください。
> cp .env.example .env
> php artisan key:generate
> vi .envAPP_NAME=FreeGroup
APP_ENV=local
APP_KEY=generated app key phrase to excute php artisan key:generate
APP_DEBUG=false
APP_URL=https://www.your.domainLOG_CHANNEL=stack
DB_CONNECTION=mysql
DB_HOST=address.to.your.db.server
DB_PORT=3306
DB_DATABASE=db_name
DB_USERNAME=db_user
DB_PASSWORD=db_password#QUEUE_CONNECTION=sync
QUEUE_CONNECTION=database
SESSION_DRIVER=file
SESSION_LIFETIME=120MAIL_DRIVER=smtp
MAIL_HOST=mx.your.server
MAIL_PORT=465
MAIL_USERNAME=mail@your.domain
MAIL_PASSWORD=password_to_mail
MAIL_ENCRYPTION=ssl
MAIL_FROM_ADDRESS=mail@your.domain
MAIL_FROM_NAME=mail_your_domain
※ QUEUE_CONNECTIONをsyncからdatabaseへ変更する時は、必ずQueue Workerの設定をしてから行ってください。
データベースのマイグレーション・初期データ投入
init.sql を編集して、管理者、ユーザ、部署のデータを自組織にあった形で初期データの投入が可能です。
> php artisan migrate
> mysql db_name < init.sql
サーバの起動 & ウェブ接続確認
ウェブサーバのpublic_html上にLaravelのpublicディレクトリのシンボリックリンクを作成。
ウェブサーバを立ち上げて、FreeGroupホーム画面にアクセスしてウェルカム画面 & ログイン画面が表示されればOK。
> ln -s /path/to/freegroup/public /your/public_html/freegroup
> php artisan serve &ブラウザで https:://www.your.domain/freegroup へアクセス
Cronの設定
Cronでは、Googleカレンダーの双方向同期や各種定期処理を実行します。
> crontab -e
* * * * * cd /path/to/freegroup && php artisan schedule:run
Queue Workerの設定・起動
> php artisan queue:work
FreeGroupは、Googleカレンダー同期処理や各種イベント処理にキューを利用します。Queue Workerを起動して、Supervisorを起動することをオススメします。設定についてはLaravelホームページで確認して設定してください。
FreeGroupに管理者でログイン
- 管理者パスワードをパスワードリセットフォームで再設定する。管理者IDは「初期データ投入」で直接SQLにインポートしているはず。
- 管理者IDでログインする。
データベースの初期化
- 管理者でFreeGroupにログインする。
- 「社員管理」画面でユーザが登録されていることを確認する。
- 「ロール設定」画面で初期値として設定されているロールグループがあることを確認。
初期値ロールグループがなければ作成する。 - 「社員管理」画面の上部メニューボタンの横にある「▼」ボタンを押すと「DB初期化」ボタンが表示される
「DB初期化」ボタンを押す - 「DB初期化」画面の確認事項にチェックを入れ、「初期化実行」を行う
この初期化処理をすることで、下記が行われます。
・全ユーザに初期値ロールグループを割り当てる
・各ユーザのみが管理者のアクセスリストが生成される(管理アクセスリストがない場合)
・各ユーザのみが追加可能な公開カレンダーを生成する(追加可能なカレンダーが存在しない場合) - DBを確認して、各データが正しく生成されていることを確認する。