CentOSに phpMyAdminインストール利用するまで
概要
CentOSにphpMyAdminを設定
環境
- CentOS release 5.11 (Final)
- PHP 5.3.6
- MySQL 5.5.41
- phpMyAdmin 5.3.6
CentOSにphpMyAdminを設定
ローカル開発環境にMemcacheをインストールしたい。
MacOSX Yosemite 10.10.1
MAMP3.0.7.3
インストールするのはMemcacheです。Memcachedではないです。
以上
以下コマンドでpythonのバージョン確認しようとしたら掲題のエラーが発生。
トラブルシューティングします。
エラーが消えました。
以上
pysftp利用としたらgmp5以上にしてくれと怒られている。
pysftpを利用するのに必要なparamiko、
そのparamikoに必要なpycryptoがエラー出力している。
gmp5 インストール
python リビルド
pycrypto アンインストール&インストール
以上
pysftp を利用したかったが
元々インストール済みの 2.4 系が古く、動作しなかったため、
動作可能なバージョンを 2.7 系にアップする
CentOS5.8(Final)
Python2.7.6
yum でインストールすると他の不要なモジュールまでインストールしてしまい
依存関係を上書いてしまうので、ソースからビルドします。
Apache の再起動なし。既存 Python バージョンも残しで出来ました。
Ansible でLAMP環境を構築する
Chefでサーバ環境構築していましたが、
設定ファイルが多い印象を持っていた為、
より敷居が低いという噂のAnsibleでの構築を考えました。
徐々に設定していく項目を増やしていく、
という方針で進めます。
個人的経験上ですが、
gitやQiitaでplaybookを見ていてもどの記述で何を実現しているか
を理解するのはとっつきにくく、理解せず実現させてしまう可能性もあるからです。
1 | --- |
以下サイトが大変参考になりました。
http://yteraoka.github.io/ansible-tutorial/
参考サイトを手順通り実行しても出来ない!
ということがよくあるので、
その際はサイトURLとできなかったことをまとめておくと
良いと思いました。
できないできない、と色々ネットサーフィンしてたら
また同じサイトを見てたりということもあるので。
Key Value Storeを構築できるツール
Redisインストール準備
1 | $ sudo su |
Redisインストール
※圧縮ファイルをダウンロード→解凍→コンパイル
1 | # cd /usr/local/src |
圧縮ファイルの解凍/ビルド
1 | # tar xzvf redis-2.2.12.tar.gz |
設定ファイルバックアップ
1 | # cp -p redis.conf redis.conf.org |
redis.conf 編集
1 | # vi redis.conf |
redis.conf変更内容
1 | # daemon |
redisサーバ起動
1 | # redis-server redis.conf |
クライアント起動
1 | # src/redis-cli |
redis設定の簡易テスト
データ設定
1 | # set tanaka test |
データ取得
1 | # get tanaka |
起動スクリプト作成 (init.dに作成)
1 | sudo cp /usr/local/src/redis-2.2.12/utils/redis_init_script /etc/init.d/redis |
設定ファイルをコピー
1 | sudo mkdir /etc/redis |
設定ファイル編集
1 | sudo vim /etc/redis/6379.conf |
1 | #daemonize no デーモン化の設定を有効化。 |
後々仕様するディレクトリを作成しておく
1 | sudo mkdir /usr/local/redis/ |
起動時に起動する様、chkconfigリストに登録
1 | /sbin/chkconfig --add redis |
service redis does not support chkconfig
「#」のすぐ後にスペースが入っていると上記エラーが出力されるので、スペースを削除する。
1 | cat /etc/init.d/redis |
一行目の # as it does use of the /proc filesystem. が原因です。
この行を削除しましょう。
上記設定後、再度chkconfigリストに登録設定してください。
※可能であればrebootして起動確認
1 | reboot |
phpredisインストール
//gitでソースを取得
** php.ini編集
1 | [redis] |
redisがphpのモジュールとして追加されているか確認
1 | php -m | grep redis |
php.iniの更新を反映する為、apache 再起動
1 | service httpd restart |
以下例文で表示されるか確認
1 | <?php |
[f:id:kenzo0107:20140620233131p:plain]
以下SonarQube公式サイトより
SonarQube, SonarRunnerをダウンロードして下さい。
※フォルダはどこに配置しても構いません。
http://www.sonarqube.org/downloads/
※2014.06.20現在、SonarQube4.2, MySQL5.6 では起動しないことを確認しています。
Homebrewでのインストールはバージョンが古いアプリケーションをDLする可能性があり、
動作保証が取れない場合があります。
以下ブログが非常にわかりやすかったです。
http://blog.hyec.jp/2014/02/mac-os-x-mavericksmysql.html
念の為、懸念箇所はここ!
1 | ... |
上記で入力したパスワードを元にパスワードファイルが作成されます。
※ちなみに「seaside99」(九十九里浜)と入力しました。
ファイルを開くと「seaside99」でなく文字化け?という文字列が並んでいますが、
これがrootアカウントのパスワードです。
[f:id:kenzo0107:20140621002405p:plain]
MySQLインストールが完了できたでしょうか?
以下実行し、MySQLを起動しましょう。
1 | sudo /usr/local/mysql/support-files/mysql.server start |
1 | /usr/local/mysql/bin/mysql -u root -p(MYSQL_PASSWORD記載のパスワード) |
1 | CREATE DATABASE sonar; |
以下実行し、Databaseに「sonar」が追加されていることを確認する。
1 | SHOW databases; |
実行結果
1 | mysql> SHOW databases; |
1 | CREATE USER 'sonar'@'localhost' IDENTIFIED BY 'sonar'; |
・sonarユーザに全権限付与
1 | GRANT ALL PRIVILEGES ON sonar.* TO 'sonar'@'localhost'; |
・権限反映
1 | FLUSH PRIVILEGES; |
・設定完了したので終わり
1 | mysql> exit; |
1 | vim (SonarQubeのパス)/conf/sonar.properties |
※「4.2」ディレクトリはバージョンなのでバージョンアップ時は変更してください。
以下Sonarが参照するMySQLのDB設定の為、「sonar.jdbc.url」のコメントアウトを外して有効化してください。
1 | # Comment the embedded database and uncomment the following line to use MySQL |
1 | vi (Sonar-Runnerのパス)/conf/sonar-runner.properties |
以下SonarRunnerが参照するDB設定、アカウント情報についてコメントアウトを外し有効化してください。
1 | #Configure here general information about the environment, such as SonarQube DB details for example |
上記設定完了後、
SonarQubeを起動します。
1 | $ (SonarQubeパス)/bin/macosx-universal-64/sonar.sh console |
以上で MySQL, SonarQube が起動している状態になりました。
以下のようなページが表示されます。
右上のLoginリンク押下します。
設定ページが表示されます。
Pluginをインストールします。
・C#
・ReSharper
・StyleCop
・Japanese Pack
各リンクを押下し、installボタン押下
上記全Pluginをインストールすると以下のように表示されます。
この状態では、まだインストールが完了していません。
一度、SonarQubeを再起動させる必要があります。
「sonar.sh console」を実行したターミナルで
一度Ctr+CでSonarQubeをストップさせると以下結果が出力されます。
1 | wrapper | INT trapped. Shutting down. |
再度「sonar.sh console」を実行させ
SonarQubeにアクセス
アップデートセンター>Installed Plugins
先ほどのPluginがインストール済みであることが確認できます。
※日本語化されてます。
[f:id:kenzo0107:20140622015442p:plain]
例として、以下にUnityプロジェクトを配置しているとします。
~/Desktop/UnityProject/
同階層に「sonar-project.properties」作成します。
1 | $ vim sonar-project.properties |
内容は以下を入力してください。
※sonar.sources=(Unityのcsファイル格納パスを指定してください)
1 | # Project identification |
例として、以下にSonarRunnerを配置しているとします。
~/Desktop/sonar-runner-dist-2.4/
sonar-project.properties作成した同階層で
sonar-runnerを実行
1 | ~/Desktop/sonar-runner-dist-2.4/bin/sonar-runner |
ターミナルに以下が表示されると成功
1 | INFO - 37/37 source files analyzed |
SonarQubeにアクセスするとProjects項目に
sonar-project.propertiesで指定した
sonar.projectNameリンクが表示されているので
リンク押下
コーディング規約のチェックが表示されます。
まずここまで出来たらあとは規約のカスタマイズになります。
本件は以上までとします。
カスタマイズはメニューの
品質プロファイル> Sonar Way
と進み、設定変更してみましょう。
元々UnityのC#コーディング規約チェック実施する為に導入を試みましたが、
C#だけでなくJava, PHP, Python等かなり守備範囲が広いです。
他ブログではWindowsが多く、推奨環境としてはWindowsですが
MacOS Xで利用したい場合を本記事はまとめました。
Jenkins用Plugin [Sonar Plugin]も用意されており
定期チェックや他Jobと組み合わせてキックが可能です。
ターミナルから以下実行
curl -Oオプション 出力をオリジナルのシステムと同名のファイルに保存する
1 | sudo curl -O http://ftp.gnu.org/pub/gnu/wget/wget-1.13.4.tar.gz |
1 | sudo tar zxvf wget-1.13.4.tar.gz |
1 | cd wget-1.13.4 |
Makefile … インストール対象となるシステム特有の機能/情報のチェック状況を記述している
1 | sudo ./configure –with-ssl=openssl |
–with-ssl=openssl
のオプションを付けないと以下のようなエラーが出てインストールできない
configure: error: –with-ssl was given, but GNUTLS is not available.
1 | sudo make |
1 | sudo make install |
試しに以下実行して、「index.html」がDLされていればOK !
1 | wget http://yahoo.co.jp |
2014.05.30時点でリリース前のドラフト版での課金テストができない仕様になりました。
その為、今までのようにテスト課金しようとすると
「購入しようとしたアイテムが見つかりませんでした」
と表示されるようになりました。
ドラフト版 or ベータ版にapkをアップロードし
テスターにのみ公開する
2015/02/20 追記
apkをアップロードする場合はVersionに注意してください。
Version 1 (1.0) であとは課金テストが完了すればリリースする、
というアプリに対してapkアップロードすることが前提です。
ちょっと直したいなぁといって、
直して同じバージョンをアップロードしようとしても
アップロードできないので注意してください。
※2015/02 追記 ベータ版公開でないと課金テストはできなくなったようです。
↓
製品版にAPKファイルをアップロードしているとアプリが公開されてしまう!
アルファベータ版として公開され、テスターだけにアプリが公開される。
無事購入テスト完了♪