【tech】ubuntu18.04 Redmine4をNginxで動かす手順メモ



以前redmine4をインストールする手順のメモをblogに書き残していましたが、
最近nginxを触ってみたいと思っていたので、Nginxで動かしてみた手順のメモです!

動画作りました!

・環境


ubuntu18.04 (minimal) on VirtualBox
(IP:192.168.56.150)
WEB:Nginx
DB:MySQL
MySQLDB rootユーザPW:RootPW123!
Redmine用DB名:redmine
RedmineDB ユーザ:redmine
Redmineuser PW:Redmine123!


私が使っているPC(のメモリが8GBの物)です!
私は今このPCのメモリを現在では32GBにアップグレードして使っています!笑
安くなりましたよねメモリ。SSDも安くなってるので買い換えたいです!笑

それでは手順です!



・rootになる
sudo su

・アップデート
apt-get update

・Redmine関係のPKGインストール
apt-get install -y net-tools curl mysql-server mysql-client libmysqlclient-dev imagemagick libmagickwand-dev libcurl4-openssl-dev git-core subversion

・GPGキーのインポート
gpg --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2069D6956105BD0E739499BDB

・rvmのダウンロード
curl -sSL https://get.rvm.io | bash -s stable

・rvmの展開
source /etc/profile.d/rvm.sh

・rvmのインストール
rvm install 2.6.0

・rvmのリロード
source /usr/local/rvm/scripts/rvm

・.bashrcへ追記
echo '[[ -s "/usr/local/rvm/scripts/rvm" ]] && source "/usr/local/rvm/scripts/rvm"' >> ~/.bashrc

・./bashrcのリロード
source ~/.bashrc



・ver確認
ruby -v
rvm -v

・MySQLモードへ以降
mysql -u root -p
 →PW:Root123!

・Redmine用データベースの作成
create database redmine;
create user redmine@localhost identified by 'Redmine123!';
grant all privileges on redmine.* to redmine@localhost identified by 'Redmine123!';
flush privileges;
exit

・Passengerのインストール
gem install passenger -N

・Nginxのインストール
passenger-install-nginx-module

・ディレクトリの移動
cd /opt/nginx/

・ディレクトリの移動
cd conf/

・configファイルの作成
vi nginx.conf
→23行目に下記設定追加


include vhost/*.conf;




・ディレクトリの作成
mkdir -p /opt/nginx/conf/vhost

・ディレクトリの移動
cd /opt/nginx/conf/vhost/

・redmine用のconfig作成
vi redmine.conf

→下記設定の記述

 server {
        listen       80;
        server_name  www.kusomemo.tokyo;

        root /var/www/redmine/public;
        passenger_enabled on;
        client_max_body_size      10m; # Max attachemnt size

        \# redirect server error pages to the static page /50x.html
        \#
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
    }




・ディレクトリ移動
cd /lib/systemd/system/

・サービスの定義
vi nginx.service
→下記設定を記述


[Unit]
Description=The NGINX HTTP and reverse proxy server
After=syslog.target network.target remote-fs.target nss-lookup.target

[Service]
Type=forking
PIDFile=/opt/nginx/logs/nginx.pid
ExecStartPre=/opt/nginx/sbin/nginx -t
ExecStart=/opt/nginx/sbin/nginx
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/bin/kill -s QUIT $MAINPID
PrivateTmp=true

[Install]
WantedBy=multi-user.target


・systemdのリロード
systemctl daemon-reload

・Nginxの起動
systemctl start nginx

・Nginxの自動起動設定
systemctl enable nginx

・portの確認
netstat -plntu | grep nginx

Redmineのインストール




・ディレクトリの作成
mkdir -p /var/www/redmine

・ディレクトリの移動
cd /var/www

・Redmineのダウンロード
svn co https://svn.redmine.org/redmine/branches/4.0-stable redmine
→下記メッセージが表示されたら「T」→「Enter」
 ※まれにERRORになりましたが、もう一度同じコマンドを
  入力したら何故かダウンロードできました。


Error validating server certificate for 'https://svn.redmine.org:443':
- The certificate is not issued by a trusted authority. Use the
fingerprint to validate the certificate manually!
Certificate information:
- Hostname: svn.redmine.org
- Valid: from Sun, 08 Jan 2017 00:00:00 GMT until Wed, 08 Jan 2020 23:59:59 GMT
- Issuer: Gandi, Paris, Paris, FR
- Fingerprint: ab:f1:c8:b7:69:a6:99:bd:20:c1:59:a4:5f:60:9e:27:2d:81:82:b7
(R)eject, accept (t)emporarily or accept (p)ermanently?


・ディレクトリの移動
cd redmine

・サンプルファイルのコピー
cp config/configuration.yml.example config/configuration.yml
cp config/database.yml.example config/database.yml

・ymlファイルの編集
vi config/database.yml
→DB「redmine」のユーザ名・パスワードを編集

production:
  adapter: mysql2
  database: redmine
  host: localhost
  username: redmine
  password: "Redmine123!"
  encoding: utf8




・ディレクトリの作成
mkdir -p tmp tmp/pdf public/plugin_assets

sudo chown -R www-data:www-data files log tmp public/plugin_assets

sudo chmod -R 775 files log tmp public/plugin_assets

・bundlerのインストール
gem install bundler
bundle install --without development test

・トークンの作成
bundle exec rake generate_secret_token

・DBの作成
RAILS_ENV=production bundle exec rake db:migrate
RAILS_ENV=production bundle exec rake redmine:load_default_data

「en」→「Enter」
jaだとエラーになりました。。

・Nginxのリスタート
systemctl restart nginx

・firewallの許可
firewall-cmd --add-service=http --permanent

・firewallの再起動
firewall-cmd --reload

ブラウザを立ち上げ「192.168.56.150」へアクセス
画面右上の「ログイン」をクリック。

Login:admin
Password:admin



楽天トラベル

皆さん既にやってると思いますが、 AmazonPrimeだとAmazon Music Unlimitedが月額780円でできるんですね!
最近知ってapple musicから乗り換えました。(200円ですが安い方がいいに越したことはないです笑)

下のRedmineの本は kindle unlimitedで無料で読めますのでお勧めです!(30日無料期間に読んで解約もアリだと思います。笑)



【tech】WordPressをNginxで動かす手順メモ(CentOS7 PHP7.2 MariaDB)



このblogはGCP上のWordPressで動かしているのですが、いずれはサーバから構築して、Nginxで動かしてみたいと思いやり方を調べたのでメモして残しておきます。
もしわからないところがあればお問い合わせください!!

・環境


CentOS7.5 (minimal) on VirtualBox
(IP:192.168.56.150)
サイト名:kusomemo ※任意の値に置き換えてください
WEB:Nginx
DB:MariaDB
MariaDB rootユーザPW:Root123!!
WordPress用DB名:wordpressDB
WordPress ユーザ:wordpressDBuser
WordPressDBuser PW:Wordpress123!

それでは手順です!



・epelのインストール
rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm

・remiリポジトリの追加
rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-7.rpm

・remiのインストール
yum install -y --enablerepo=epel,remi-php72 php php-mbstring php-pear php-fpm php-mcrypt php-mysql

・Nginxのインストール
rpm -Uvh https://nginx.org/packages/rhel/7/x86_64/RPMS/nginx-1.14.2-1.el7_4.ngx.x86_64.rpm



・MariaDBのインストール
yum install -y mariadb mariadb-server

・firewallの許可設定
firewall-cmd --add-service=http --permanent

・firewallの再起動
firewall-cmd --reload

・wordpress用ディレクトリ作成
mkdir -p /usr/share/nginx/wordpress

・wordpress用ディレクトリの所有者をnginxへ変更
chown nginx:nginx /usr/share/nginx/wordpress/

・wordpress用ディレクトリへ移動
cd /usr/share/nginx/wordpress

・最新版wordpressをDL
curl -O https://ja.wordpress.org/latest-ja.tar.gz

・DLしてきたWPを展開
tar xzfv latest-ja.tar.gz

・展開したWPの所有者を変更
chown -R nginx:nginx wordpress

・展開したWPをサイト名(任意)へリネーム
mv wordpress kusomemo

・Nginxのconfファイルディレクトリへ移動
cd /etc/nginx/conf.d

・デフォルトconfをリネーム(※残していると、このconfが優先されるようです)
mv default.conf default.conf.org

・サイト用のconfファイルを作成
vi kusomemo.conf
→下記設定を記述


server {
  listen 80;
  server_name kusomemo.tokyo;
  root /usr/share/nginx/wordpress/kusomemo;
  index index.php;

  charset utf-8;

# wordpress パーマネントリンク設定
  try_files $uri $uri/ /index.php?q=$uri&$args;

# wp-config.phpへのアクセス拒否設定
  location ~* /wp-config.php {
    deny all;
  }

# php-fpm用設定
  location ~ \.php$ {
    fastcgi_pass 127.0.0.1:9000;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    fastcgi_param PATH_INFO $fastcgi_script_name;
    include fastcgi_params;
  }
}

・Nginxが使用するpidのファイルを作成
vi /var/run/nginx.pid
→ファイル作成のみで保存

・Nginxの自動起動設定
systemctl enable nginx

・Nginxの起動
systemctl start nginx
※ここで一度エラーが出る事がありますが、
 もう一度startかければ起動します。

・PHP-FPMのディレクトリへ移動
cd /etc/php-fpm.d/

・confファイルのバックアップ
cp -p www.conf www.conf.org

・confファイルの編集
vi www.conf
→apacheをnginxに変更します。
 :%s/apache/nginx/cg
 で対象を確認しながら置換できます



・約24行目
user = apache
→user = nginx
・約24行目
group = apache
→group = nginx


・php-fpmの自動起動
systemctl enable php-fpm

・php-fpmの起動
systemctl start php-fpm

・MariaDBの自動起動設定
systemctl enable mariadb

・MariaDBの起動
systemctl start mariadb

・MariaDBの初期設定
mysql_secure_installation
初期PWを変更して、rootPWも変更しておく。
そのほかはすべてyでOK

Enter current password for root (enter for none):
→enter

Change the root password? [Y/n] y
→rootのPW:Root123!
 以降は全て「y」でOKです

・MariaDBのconfファイルディレクトリへ移動
cd /etc/my.cnf.d/

・confファイルのバックアップ
cp -p server.cnf server.cnf.org


・confファイルの編集
vi server.cnf
約13行目の[mysqld]に下記設定項目を追加


character-set-server = utf8


・MariaDBを再起動
systemctl restart mariadb

・MySQLモードへ移行
mysql -u root -p
→Root123!

・DBの作成
CREATE DATABASE wordpressDB;

・DBへユーザと権限、PWの設定
GRANT ALL PRIVILEGES ON wordpressDB.* TO "wordpressDBuser"@"localhost" IDENTIFIED BY "Wordpress123!";

・保存
FLUSH PRIVILEGES;

・exit
exit

・サイトのディレクトリへ移動
cd /usr/share/nginx/wordpress/kusomemo/


・サイトのconfファイルのバックアップ
cp -p wp-config-sample.php wp-config.php

https://api.wordpress.org/secret-key/1.1/salt/
にアクセスしてキーを作成しておきましょう

・サイトconfの編集
vi wp-config.php


各パラメータを置換
:%s/database_name_here/wordpressDB/g

:%s/username_here/wordpressDBuser/g

:%s/password_here/Wordpress123!/g

WEBで作成したキーを約55行目から62行目に貼り付けて保存

<?php
/**
 * WordPress の基本設定
 *
 * このファイルは、インストール時に wp-config.php 作成ウィザードが利用します。
 * ウィザードを介さずにこのファイルを "wp-config.php" という名前でコピーして
 * 直接編集して値を入力してもかまいません。
 *
 * このファイルは、以下の設定を含みます。
 *
 * * MySQL 設定
 * * 秘密鍵
 * * データベーステーブル接頭辞
 * * ABSPATH
 *
 * @link http://wpdocs.sourceforge.jp/wp-config.php_%E3%81%AE%E7%B7%A8%E9%9B%86
 *
 * @package WordPress
 */

// 注意:
// Windows の "メモ帳" でこのファイルを編集しないでください !
// 問題なく使えるテキストエディタ
// (http://wpdocs.sourceforge.jp/Codex:%E8%AB%87%E8%A9%B1%E5%AE%A4 参照)
// を使用し、必ず UTF-8 の BOM なし (UTF-8N) で保存してください。

// ** MySQL 設定 - この情報はホスティング先から入手してください。 ** //
/** WordPress のためのデータベース名 */
define('DB_NAME', 'wordpressDB');

/** MySQL データベースのユーザー名 */
define('DB_USER', 'wordpressDBuser');

/** MySQL データベースのパスワード */
define('DB_PASSWORD', 'Wordpress123!');

/** MySQL のホスト名 */
define('DB_HOST', 'localhost');

/** データベースのテーブルを作成する際のデータベースの文字セット */
define('DB_CHARSET', 'utf8');

/** データベースの照合順序 (ほとんどの場合変更する必要はありません) */
define('DB_COLLATE', '');

/**#@+
 * 認証用ユニークキー
 *
 * それぞれを異なるユニーク (一意) な文字列に変更してください。
 * {@link https://api.wordpress.org/secret-key/1.1/salt/ WordPress.org の秘密鍵サービス} で自動生成することもできます。
 * 後でいつでも変更して、既存のすべての cookie を無効にできます。これにより、すべてのユーザーを強制的に再ログインさせることになります。
 *
 * @since 2.6.0
 */
define('AUTH_KEY',         'L xv>t<S$6|a+OHwxq5`C8S.!2;z|P^T:&u^blaa|*uY5 a}x:Y>pWJVN!M$_wZ@');
define('SECURE_AUTH_KEY',  '4B!l[$Aiz zEGu(|=h6dYIDJR;eNeUgCaGoIy4i(.N@YO6A=P;^EIh|T!sCS9x1X');
define('LOGGED_IN_KEY',    ' z/1j8<l wE1eBZ(@+0`yr(BK0&&zPp8$3pyJn.-{W^qoj)Z+GG-0 r%^C65m8iY');
define('NONCE_KEY',        '*4-:5wjE9VL4JK=3GG/Dw:/VEl-vdnmHn[kJe{@X3AujV}rqXYjoIrVs-},|;_z|');
define('AUTH_SALT',        'Gh_YZrAIa<, +2P7jTVEisx4(@2#5pIw~X5+FiO^/q8=<4^%*wLkYBT#%l0b/y{g');
define('SECURE_AUTH_SALT', 'm$V1,lNWo<z] lAAm1mj6k*^P`;q^WVc76<I{E`WXlGgD8>Edo%d#qK9%8DxTzp[');
define('LOGGED_IN_SALT',   '-JS@,8_u0Qt}}+PZ1-v4]% [7(9|(2Mpw*{6)>BlQ+]|GOf8PwRxTJ)/P~R3u?Ve');
define('NONCE_SALT',       '+%*z+YyLHVQd!)Hg?^QL90|B?5c|Yx_dD~OwxZH!cg0OF[-NA4~rm) XPn+!{y^Y');
/**#@-*/

/**
 * WordPress データベーステーブルの接頭辞
 *
 * それぞれにユニーク (一意) な接頭辞を与えることで一つのデータベースに複数の WordPress を
 * インストールすることができます。半角英数字と下線のみを使用してください。
 */
$table_prefix  = 'wp_';

/**
 * 開発者へ: WordPress デバッグモード
 *
 * この値を true にすると、開発中に注意 (notice) を表示します。
 * テーマおよびプラグインの開発者には、その開発環境においてこの WP_DEBUG を使用することを強く推奨します。
 *
 * その他のデバッグに利用できる定数については Codex をご覧ください。
 *
 * @link http://wpdocs.osdn.jp/WordPress%E3%81%A7%E3%81%AE%E3%83%87%E3%83%90%E3%83%83%E3%82%B0
 */
define('WP_DEBUG', false);

/* 編集が必要なのはここまでです ! WordPress でブログをお楽しみください。 */

/** Absolute path to the WordPress directory. */
if ( !defined('ABSPATH') )
        define('ABSPATH', dirname(__FILE__) . '/');

/** Sets up WordPress vars and included files. */
require_once(ABSPATH . 'wp-settings.php');



これで設定完了です。
ブラウザを立ち上げて下記ディレクトリにアクセスしてください。

・Nginxの再起動
systemctl restart nginx

http://192.168.56.150/wp-admin/install.php

以上でアクセスできると思いますが、できなかった時は
Nginxの再起動を試してみたりしてみてください。
→systemctl restart nginx

にアクセスして初期設定をする。
ユーザ・PWの設定後、改めて「192.168.56.150」にアクセスすると、nginxの画面が出ることがありますが、「更新」をすると、wordpressの画面が表示されると思います。

以上です!無事構築できましたか?
わからないところがあればコメントお願いいたします!



久しぶりにみてみると、モバイルバッテリーもずいぶん安くなってるんですね!

皆さん既にやってると思いますが、 AmazonPrimeだとAmazon Music Unlimitedが月額780円でできるんですね!
最近知ってapple musicから乗り換えました。(200円ですが安い方がいいに越したことはないです笑)

下のPythonの本は kindle unlimitedで無料で読めますのでお勧めです!(30日無料期間に読んで解約もアリだと思います。笑)



【tech】nginx起動時にエラーが出た時のメモ



最近F5に買収や日本に本格進出と話題の絶えないnginxを私も触ってみたいとおもっていまして、最近ようやく触りだしたのですが、apacheほど優しくなく苦戦しています。笑

今日はnginxを起動させようとしたときにエラーが出てしまって調査した結果と解決策をメモしておきます。

・環境
OS:CentOS7.5
Nginx:version: nginx/1.14.2

・エラー
[root@localhost run]# systemctl start nginx
Job for nginx.service failed because a configured resource limit was exceeded. See "systemctl status nginx.service" and "journalctl -xe" for details.
(よく出るやつですよね・・もう見飽きました。笑)


・解決策
vi /var/run/nginx.pid
でファイルをつくって適当に数値「1」でOKでした。
を入れて保存して終了。

もう一度「systemctl start nginx」を打ったら起動しました!

・トラブルシュート
→journalctl -ex
journalログ確認
Apr 13 09:14:27 localhost.localdomain nginx[17831]: nginx: [emerg] open() "/var/run/nginx.pid" failed (13: Permission denied)
Apr 13 09:14:27 localhost.localdomain systemd[1]: Failed to read PID from file /var/run/nginx.pid: Invalid argument
Apr 13 09:14:27 localhost.localdomain systemd[1]: Failed to start nginx - high performance web server.

permission deniedって出てるけど今rootで実行中だしな~と思って、とりあえずこの「/var/run/nginx.pid」にアクセスしてみました。


cd /var/run
ll | grep nginx

でない...ファイルそのものがなかったみたいだったので上記のファイルをつくってみたら解決できました!

以上です!!



久しぶりにみてみると、モバイルバッテリーもずいぶん安くなってるんですね!

皆さん既にやってると思いますが、 AmazonPrimeだとAmazon Music Unlimitedが月額780円でできるんですね!
最近知ってapple musicから乗り換えました。(200円ですが安い方がいいに越したことはないです笑)

下のPythonの本は kindle unlimitedで無料で読めますのでお勧めです!(30日無料期間に読んで解約もアリだと思います。笑)



【tech】【動画あり】Nginxでredmine4を動かすメモ(CentOS7 Ruby-2.6.0 MySQL5.7)



CentOS8にRedmine4をインストールしてみました!(webrick)

https://kusomemo.tokyo/tech/centos8-redmine4-webrick/

以前redmine4をインストールする手順のメモをblogに書き残していましたが、
最近nginxを触ってみたいと思っていたので、Nginxで動かしてみた手順のメモです!

動画作りました!

・環境


CentOS7.5 (minimal) on VirtualBox
(IP:192.168.56.150)
WEB:Nginx
DB:MySQL
MariaDB rootユーザPW:RootPW123!
Redmine用DB名:redmine
RedmineDB ユーザ:redmine
Redmineuser PW:Redmine123!


私が使っているPC(のメモリが8GBの物)です!
私は今このPCのメモリを現在では32GBにアップグレードして使っています!笑
安くなりましたよねメモリ。SSDも安くなってるので買い換えたいです!笑

それでは手順です!

・Redmine関連PKGのインストール
yum install -y zlib-devel patch curl-devel ImageMagick-devel openssl-devel httpd-devel libtool apr-devel apr-util-devel bzip2 mysql-devel ftp wget gcc-c++ autoconf readline readline-devel zlib libyaml-devel libffi-devel make automake bison iconv-devel subversion

・GPGキーのインポート
gpg --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2069D6956105BD0E739499BDB

・rvmのダウンロード
\curl -sSL https://get.rvm.io | bash -s stable

・rvmの展開
source /etc/profile.d/rvm.sh

・rvmのインストール
rvm install 2.6.0

・rvmのリロード
source /usr/local/rvm/scripts/rvm

・.bashrcへ追記
echo '[[ -s "/usr/local/rvm/scripts/rvm" ]] && source "/usr/local/rvm/scripts/rvm"' >> ~/.bashrc

・./bashrcのリロード
source ~/.bashrc

・ver確認
ruby -v
rvm -v

・MySQLのリポジトリ追加
rpm -Uvh https://dev.mysql.com/get/mysql57-community-release-el7-9.noarch.rpm

・リポジトリの確認
yum repolist

・MySQLをインストール
yum install -y mysql-server

・MySQLを起動
systemctl start mysqld

・MySQLの自動起動
systemctl enable mysqld

・初期PWの確認
grep 'temporary password' /var/log/mysqld.log


2019-04-12T15:04:04.771898Z 1 [Note] A temporary password is generated for root@localhost: (%lD:&;o=7eu


※この場合「(%lD:&;o=7eu」です

・MySQLモードへ以降
mysql -u root -p

・ユーザの作成
ALTER USER 'root'@'localhost' IDENTIFIED BY 'RootPW123!';

・DBの作成
create database redmine;
create user redmine@localhost identified by 'Redmine123!';
grant all privileges on redmine.* to redmine@localhost identified by 'Redmine123!';
flush privileges;
exit

・Passengerのインストール
gem install passenger -N

・Nginxのインストール
passenger-install-nginx-module

→下記メッセージが表示されたら「Enter」


Welcome to the Phusion Passenger Nginx module installer, v6.0.2.

This installer will guide you through the entire installation process. It
shouldn't take more than 5 minutes in total.

Here's what you can expect from the installation process:

  1. This installer will compile and install Nginx with Passenger support.
  2. You'll learn how to configure Passenger in Nginx.
  3. You'll learn how to deploy a Ruby on Rails application.

Don't worry if anything goes wrong. This installer will advise you on how to
solve any problems.

Press Enter to continue, or Ctrl-C to abort.


→下記メッセージが表示されたら「!」を入力。
Ruby・Pythonにスペースキーでチェックをつけて「Enter」


Which languages are you interested in?

Use < space > to select.
If the menu doesn't display correctly, press '!'

(*) Ruby
> (*) Python
( ) Node.js
( ) Meteor


上記メッセージが表示されたら「1」→「Enter」
→ダウンロードが始まります。


Automatically download and install Nginx?

Nginx doesn't support loadable modules such as some other web servers do,
so in order to install Nginx with Passenger support, it must be recompiled.

Do you want this installer to download, compile and install Nginx for you?

  1. Yes: download, compile and install Nginx for me. (recommended)
    The easiest way to get started. A stock Nginx 1.15.8 with Passenger
    support, but with no other additional third party modules, will be
    installed for you to a directory of your choice.

  2. No: I want to customize my Nginx installation. (for advanced users)
    Choose this if you want to compile Nginx with more third party modules
    besides Passenger, or if you need to pass additional options to Nginx's
    'configure' script. This installer will 1) ask you for the location of
    the Nginx source code, 2) run the 'configure' script according to your
    instructions, and 3) run 'make install'.

Whichever you choose, if you already have an existing Nginx configuration file,
then it will be preserved.

Enter your choice (1 or 2) or press Ctrl-C to abort: 1


下記メッセージが表示されたら「Enter」


Downloading Nginx...
Verifying Nginx checksum...
Extracting Nginx source tarball...
# tar xzvf /tmp/passenger.1u3rsgk/nginx.tar.gz
nginx-1.15.8/
////////////////////////////
nginx-1.15.8/auto/cc/name
nginx-1.15.8/auto/cc/owc
nginx-1.15.8/auto/cc/sunc


Where do you want to install Nginx to?

Please specify a prefix directory [/opt/nginx]:


下記メッセージが表示されたら「Enter」で完了です。


--------------------------------------------

Nginx with Passenger support was successfully installed.

The Nginx configuration file (/opt/nginx/conf/nginx.conf)
must contain the correct configuration options in order for Phusion Passenger
to function correctly.

This installer has already modified the configuration file for you! The
following configuration snippet was inserted:

http {
...
passenger_root /usr/local/rvm/gems/ruby-2.6.0/gems/passenger-6.0.2;
passenger_ruby /usr/local/rvm/gems/ruby-2.6.0/wrappers/ruby;
...
}

After you start Nginx, you are ready to deploy any number of Ruby on Rails
applications on Nginx.

Press ENTER to continue.


・ディレクトリの移動
cd /opt/nginx/

・ディレクトリの移動
cd conf/

・configファイルの作成
vi nginx.conf
→23行目に下記設定追加


include vhost/*.conf;


・ディレクトリの作成
mkdir -p /opt/nginx/conf/vhost

・ディレクトリの移動
cd /opt/nginx/conf/vhost/

・redmine用のconfig作成
vi redmine.conf

→下記設定の記述

server {
listen 80;
server_name www.kusomemo.tokyo;

root /var/www/redmine/public;
passenger_enabled on;
client_max_body_size 10m; # Max attachemnt size

# redirect server error pages to the static page /50x.html
#
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}

・ディレクトリ移動
cd /lib/systemd/system/

・サービスの定義
vi nginx.service
→下記設定を記述


[Unit]
Description=The NGINX HTTP and reverse proxy server
After=syslog.target network.target remote-fs.target nss-lookup.target

[Service]
Type=forking
PIDFile=/opt/nginx/logs/nginx.pid
ExecStartPre=/opt/nginx/sbin/nginx -t
ExecStart=/opt/nginx/sbin/nginx
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/bin/kill -s QUIT $MAINPID
PrivateTmp=true

[Install]
WantedBy=multi-user.target


・systemdのリロード
systemctl daemon-reload

・Nginxの起動
systemctl start nginx

・Nginxの自動起動設定
systemctl enable nginx

・portの確認
netstat -plntu | grep nginx

・ディレクトリの作成
mkdir -p /var/www/redmine

・ディレクトリの移動
cd /var/www

・Redmineのダウンロード
svn co https://svn.redmine.org/redmine/branches/4.0-stable redmine
→下記メッセージが表示されたら「T」→「Enter」
※まれにERRORになりましたが、もう一度同じコマンドを
入力したら何故かダウンロードできました。


Error validating server certificate for 'https://svn.redmine.org:443':
- The certificate is not issued by a trusted authority. Use the
fingerprint to validate the certificate manually!
Certificate information:
- Hostname: svn.redmine.org
- Valid: from Sun, 08 Jan 2017 00:00:00 GMT until Wed, 08 Jan 2020 23:59:59 GMT
- Issuer: Gandi, Paris, Paris, FR
- Fingerprint: ab:f1:c8:b7:69:a6:99:bd:20:c1:59:a4:5f:60:9e:27:2d:81:82:b7
(R)eject, accept (t)emporarily or accept (p)ermanently?


・ディレクトリの移動
cd redmine

・サンプルファイルのコピー
cp config/configuration.yml.example config/configuration.yml
cp config/database.yml.example config/database.yml

・ymlファイルの編集
vi config/database.yml
→DB「redmine」のユーザ名・パスワードを編集

production:
  adapter: mysql2
  database: redmine
  host: localhost
  username: redmine
  password: "Redmine123!"
  encoding: utf8

・ディレクトリの作成
mkdir -p tmp tmp/pdf public/plugin_assets

・所有者の変更
sudo chown -R nobody:nobody files log tmp public/plugin_assets

・権限の変更
sudo chmod -R 775 files log tmp public/plugin_assets

・bundlerのインストール
gem install bundler
bundle install --without development test

・トークンの作成
bundle exec rake generate_secret_token

・DBの作成
RAILS_ENV=production bundle exec rake db:migrate
RAILS_ENV=production bundle exec rake redmine:load_default_data

「en」→「Enter」
jaだとエラーになりました。。

・Nginxのリスタート
systemctl restart nginx

・firewallの許可
firewall-cmd --add-service=http --permanent

・firewallの再起動
firewall-cmd --reload

ブラウザを立ち上げ「192.168.56.150」へアクセス

画面右上の「ログイン」をクリック。

Login:admin
Password:admin

※初回のログインはパスワードの変更を求められます。

以上です、無事インストールできましたか?できなかった方はコメントください!

下のRedmineの本は kindle unlimitedで無料で読めますのでお勧めです!(30日無料期間に読んで解約もアリだと思います。笑)



【tech】【動画あり】Zabbix4.2をNginxで動かすメモ(CentOS7 on Virtualbox)




※2019/11/4更新!
CentOS8にZabbix4.4をインストールしてみました!

【tech】【Movie】KVM上のCentOS8 にNginxをインストールしてZabbix4.4を動かすメモ

Zabbix4.2をVirtualBox上のCentOS7へインストールして、
Nginxで動かした手順のメモです。
うまくいかないところがあればお問い合わせください

ひとまず手順のみのメモです!
!!質問があればお気軽にコメントください!!
(わたし自身も成長の為に質問頂きたいので、ぜひご質問ください!)

動画upしました!(install movie)

インストールできたらNW機器を追加する手順もblogに書いたので是非見てくださいっ!

zabbix4.0からNW機器(vyos)を監視する(Add NW Device)

・環境
CentOS7.5 (minimal) on VirtualBox
(IP:192.168.56.150)
WEB:Nginx
DB:MariaDB
MariaDB rootユーザPW:RootRoot123!!
zabbix用DB名:zabbixDB
zabbixDB ユーザ:zabbixuser
zabbixuser PW:ZabbixPW123!!


私が使っているPC(のメモリが8GBの物)です!
私は今このPCのメモリを現在では32GBにアップグレードして使っています!笑
安くなりましたよねメモリ。SSDも安くなってるので買い換えたいです!笑

※teratermを使用してCentOSへアクセス


zabbix・mariadbのインストール

1.zabbix keyのインストール
rpm -Uvh https://repo.zabbix.com/zabbix/4.2/rhel/7/x86_64/zabbix-release-4.2-1.el7.noarch.rpm

2.epelのインストール
rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm

3.remiのインストール
rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-7.rpm

4.Nginxのインストール
rpm -Uvh https://nginx.org/packages/rhel/7/x86_64/RPMS/nginx-1.14.2-1.el7_4.ngx.x86_64.rpm

5.デフォルトcfgの退避
mv /etc/nginx/conf.d/default.conf /etc/nginx/conf.d/default.conf.org

6.Zabbix用cfgファイルの作成
vi /etc/nginx/conf.d/zabbix.conf

server {
    listen       80;
    server_name  kusomemo;

    access_log  /var/log/nginx/zabbix_access.log  main;
    error_log  /var/log/nginx/zabbix_error.log  warn;

    root   /usr/share/zabbix;
    index  index.html index.php;

    location ~ \.php {
        fastcgi_pass    127.0.0.1:9000;
        fastcgi_index   index.php;
        fastcgi_param   SCRIPT_FILENAME $document_root$fastcgi_script_name;
        include         fastcgi_params;
    }
}




7.PHPのインストール
yum -y install php56 php56-php-devel php56-php-mbstring php56-php-pdo php56-php-fpm php56-php-mysqlnd php56-php-bcmath php56-php-gd

8.php.iniの設定
vi /opt/remi/php56/root/etc/php.ini
 下記の通りに値を編集


約889行目
;date.timezone =
→date.timezone = "Asia/Tokyo"
 ※:%s/;date.timezone =/date.timezone = "Asia\/Tokyo"/gc
  で置換できます。

約375行目
max_execution_time = 30
→max_execution_time = 300
 ※:%s/max_execution_time = 30/max_execution_time = 300/gc
  で置換できます

約385行目
max_input_time = 60
→max_input_time = 300
 ※:%s/max_input_time = 60/max_input_time = 300/gc
  で置換できます

約663行目
post_max_size = 8M
→post_max_size = 16M
 ※:%s/post_max_size = 8M/post_max_size = 16M/gc
  で置換できます

705行目
;always_populate_raw_post_data = -1
→always_populate_raw_post_data = -1
 ※:%s/;always_populate_raw_post_data = -1/always_populate_raw_post_data = -1/gc
  で置換できます。





9.php-fpmの設定を編集
vi /opt/remi/php56/root/etc/php-fpm.d/www.conf


23行目
user = apache
→user = nginx
 ※:%s/apache/nginx/gc
  で置換できます。(置換するべきでないところは飛ばしてください)

25行目
group = apache
→group = nginx


10.パーミッション変更前の確認
ls -l /opt/remi/php56/root/var/lib/php/

11.パーミッション修正
chown -R nginx.nginx /opt/remi/php56/root/var/lib/php/session/

12.zabbix関連PKGのインストール
yum -y install zabbix-server-mysql zabbix-web-mysql zabbix-agent

13.mariadbのダウンロード
yum -y install mariadb mariadb-server

14.selinuxのステータスを確認
getenforce
:Enforcing

15.selinuxをdisabledにする
vi /etc/sysconfig/selinux
→SELINUX=disabled

16.MariaDBステータスの確認
systemctl status mariadb

17.MariaDBの自動起動設定
systemctl enable mariadb

18.MariaDBの自動起動設定
systemctl start mariadb

19.MariaDBのステータス確認
systemctl status mariadb


データベースの作成

20.初期設定
mysql_secure_installation

初期PWを変更して、rootPWも変更しておく。
そのほかはすべてyでOK

Enter current password for root (enter for none):
→enter

Change the root password? [Y/n] y
→rootPWを入力
RootRoot123!!

21.mysqlモードへ移行
mysql -uroot -p
→Enter passwod:RootRoot123!!

22.zabbix用データベースの作成
create database zabbixDB character set utf8 collate utf8_bin;

23.データベースへユーザ/PWの作成
grant all privileges on zabbixDB.* to zabbixuser@localhost identified by 'ZabbixPW123!!';

24.mysqlモードを終了
exit

25.データベース「zabbix」のテーブル作成用のsql文を実行
zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzabbixuser -p zabbixDB
:Enter password: ZabbixPW123!!

26.作成後の確認
mysql -uroot -p zabbixDB
PW:RootRoot123!!

27.databaseの確認
show databases;

28.mysqlモードを終了
exit

29.Nginxのステータス確認
systemctl status nginx



30.Nginxの起動
systemctl start nginx

31.Nginxの自動起動
systemctl enable nginx

32.phpステータス確認
systemctl status php56-php-fpm

33.phpの起動
systemctl start php56-php-fpm

34.phpの自動起動
systemctl enable php56-php-fpm

35.zabbixのステータスの確認
systemctl status zabbix-server

36.zabbixの自動起動設定
systemctl enable zabbix-server

37.zabbixサーバの起動
systemctl start zabbix-server

38.zabbixのステータスの確認
systemctl status zabbix-server

39.zabbixフロントの設定
vi /etc/zabbix/zabbix_server.conf
DBパスワードを記載
100行目付近の
・DBName=zabbixDB
・DBUser=zabbixuser
・DBPassword=ZabbixPW123!!

40.PHPのtimezoneの編集
vi /etc/httpd/conf.d/zabbix.conf

20行目の
# php_value date.timezone Europe/Riga
→php_value date.timezone Asia/Tokyo
(「#」コメントアウトを削除して「Asia/Tokyo」へ編集)
 ※:%s/# php_value date.timezone Europe\/Riga/php_value date.timezone Asia\/Tokyo/gc
  で置換できます

41.firewall追加
firewall-cmd --add-service=http --permanent

42.所有者の変更
chown -R nginx. /etc/zabbix/web

43.selinux、firewalld等の変更を反映させるために再起動
reboot



ブラウザから「IPアドレス」へアクセス
(firefoxなどを立ち上げて、「192.168.56.150」へアクセス)

※ダメだったら
httpd、mariadb、zabbix-serverの再起動を試してみましょう
→mariadbの再起動
systemctl restart zabbix-server

ブラウザアクセスが成功したら、初期設定する。

Welcome to zabbixの画面
→Next step

Check of pre-requisites
→Next step

Configure DB connection
下記の通りにそれぞれ入力
・DBName=zabbixDB
・DBUser=zabbixuser
・DBPassword=ZabbixPW123!!
→Next step

Zabbix server details
→Nameに任意のサーバ名記入

Pre-installation summary
→Next step

Install
Congratulations! You have successfully installed Zabbix frontend.
→Finish

ZabbixのTOP画面※下記は初期ユーザ/パスワード
Username:Admin
Password:zabbix

以上です。


楽天トラベル

下のRedmineとZabbixの本は kindle unlimitedで無料で読めますのでお勧めです!(30日無料期間に読んで解約もアリだと思います。笑)