安裝各種中間件到虛擬環境(以及使用方式)的步驟筆記
摘要
-
- 所用で各種ミドルウェアの入った環境をつくることになったので、そのメモ
-
- バージョンの指定とかは特にせず、一部を除き、yumで入るものをベースにインストールしています
-
- 最低限のことしかしないので、必要に応じて各種変更すること
- わけあって32bitのCentOS6を利用してますが、一部のコマンドを除いてさほど変化はないかと思います
CentOS6.7(32位)的安装
-
- インストールはminimalで良い
-
- ネットワーク設定時に、自動接続を有効にしておく
ホストオンリーアダプターを使ったホスト⇒仮想のssh接続を行う場合は、該当アダプタのIPv4設定でIPアドレスを手動にして入力しておく。
※ネットワーク設定を後で設定する場合は、以下のファイルを編集して、ネットワークを再読み込みすること。
/etc/sysconfig/network-scripts/ifcfg-eth0 = NAT
/etc/sysconfig/network-scripts/ifcfg-eth1 = ホストオンリーアダプタ
service network restart =ネットワーク再読み込み
インストール完了後に再起動
再起動後にrootでログイン
以後rootでの作業も良いが、新規に作業用のユーザーを作成する
パスワードは複数回入力を求められるので、必要回入力する
useradd [ユーザー名]
passwd [パスワード]
作成したユーザーでsudoを使えるようにする
『## Allow root to run any commands anywhere』に項目を追加する
visudo
[ユーザー名] ALL=(ALL) ALL
firewallを停止させる
sudo /etc/rc.d/init.d/iptables stop
chkconfig iptables off
chkconfig ip6tables off
selinuxを無効にする
SELINUX=enforcingをdisabledに変更する
sudo vi /etc/selinux/config
環境再起動
reboot
事前准备
-
- 作成したアカウントでログイン
yumのアップデート
sudo yum -y update
remiのリポジトリを追加
sudo rpm -Uvh http://download.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
sudo rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm
wgetをインストール
sudo yum -y install wget
Jenkins的安装
インストール
sudo yum -y install java
sudo wget -O /etc/yum.repos.d/jenkins.repo http://pkg.jenkins-ci.org/redhat/jenkins.repo
sudo rpm –import http://pkg.jenkins-ci.org/redhat/jenkins-ci.org.key
sudo yum -y install jenkins
起動と自動起動を設定
sudo /etc/init.d/jenkins start
sudo chkconfig jenkins on
アクセスして確認
http://[IPアドレス]:8080/
Apache – 阿帕奇
インストール
sudo yum -y install httpd httpd-devel
起動
sudo service httpd start
ホスト側ブラウザからアクセス確認
http://[IPアドレス]:80
ディレクトリの権限を変える
sudo chown [アカウント名]. /var/www/html/
indexファイル作成
内容は適当で良いです
vi /var/www/html/index.html
再度ブラウザからアクセス、上記入力した内容が表示されればOK
PHP是一种流行的服务器端脚本语言,它被广泛用于开发动态网页。
インストール
sudo yum -y install php php-mbstring php-pear php-mysql php-devel
インストール確認
php -v
Apache再起動
sudo service httpd restart
phpのインストール時にディレクトリの権限が変わってしまうので戻す
sudo chown [アカウント名]. /var/www/html/
ApacheからPHPの確認
vi /var/www/html/phpinfo.php
//以下記載
入力後該当ファイルにアクセスして、PHPの各種情報が表示されたらOK
MySQL (一种关系型数据库管理系统)
mysql インストール
sudo yum -y install mysql-server
文字コードを変更(追記)する
sudo vi /etc/my.cnf
[mysqld]
…
default-character-set = utf8
skip-character-set-client-handshake
character-set-server = utf8
collation-server = utf8_general_ci
init-connect = SET NAMES utf8
…
[client]
default-character-set=utf8
mysql起動
sudo /etc/rc.d/init.d/mysqld start
初期設定
sudo mysql_secure_installation
設定内容
パスワード設定以外はすべてEnterで良いです
Enter current password for root (enter for none):= 初期パスなしなのでそのまま
Set root password? = rootパスワードを設定するか
Remove anonymous users? = 匿名ユーザーの削除するか
Disallow root login remotely? = rootリモートログインを無効にするか
Remove test database and access to it? = testデータベースを削除するか
Reload privilege tables now?= ユーザーの情報リロードをするか
自動起動設定
sudo chkconfig mysqld on
接続して確認
mysql -uroot -p
[パスワード入力]
select user,host,password from mysql.user;
使用PHP连接到MySQL。
- 適当なデータを入れる
create database test;
use test;
create table testaccess( id int auto_increment, name varchar(255), index(id));
show tables;
insert into testaccess (name) values ('あああ');
insert into testaccess (name) values ('いいい');
select * from testaccess;
Apache再起動
sudo service httpd restart
PHPから繋げる
vi /var/www/html/mysqltest.php
<?php
$con = mysql_connect('localhost', '[ユーザー]', '[パスワード]') or die('error(connect)');
mysql_select_db('test', $con) or die('error(select_db)');
$sql = 'select * from testaccess';
$result = mysql_query($sql, $con);
while ($row = mysql_fetch_array($result)) {
echo $row['id'] . ' : ' . $row['name'] . '<br />';
}
mysql_close($con);
?>
- CIやブラウザからアクセスし、保存したデータが表示されたらOK
内存缓存
インストール
sudo yum -y install memcached memcached-devel
起動
sudo /etc/init.d/memcached start
Apache再起動
sudo service httpd restart
将PHP与连接
必要なライブラリをインストール
sudo yum -y install php-pecl-memcached
つなげてみる
vi /var/www/html/memcachedtest.php
<?php
$memcache = new Memcached();
$memcache->addServer('localhost', 11211);
$memcache->set('[キー名]', [保存データ], [保存秒数]);
echo $get_data = $memcache->get('key');
?>
-
- CIやブラウザからアクセスして、dataに保存されている内容が表示されていればOK
-
- 念のため、ツールから内容を確認
dumpはすべて表示されるので、運用中などは利用にお気を付け下さい
memcached-tool localhost dump
Redis
インストール
sudo yum –enablerepo=remi,remi-test -y install redis
起動と自動起動設定
sudo service redis start
sudo chkconfig –add redis
sudo chkconfig –level 345 redis on
redis-cliでの接続テスト
redis-cli
127.0.0.1:6379> set [キー] [保存データ]
OK
127.0.0.1:6379> get [キー]
“[保存データ]”
与PHP连接
ライブラリインストール
sudo yum -y install php-pecl-redis –enablerepo=epel
Apache再起動
sudo service httpd restart
PHPから繋げる
vi /var/www/html/redistest.php
<?php
$redis = new Redis();
$redis->connect("127.0.0.1",6379);
$redis->delete('[キー名]');
$redis->set('[キー名] ', '[セットデータ]');
$getdata = $redis->get('[キー名]');
echo $getdata;
exit;
?>
- CIやブラウザからアクセスして、セットデータが表示されればOK
Ruby on Rails (RoR), 简称Rails
rubyのインストール
以前書いたこの辺を参考に
railsをインストール
gem install rails
必要なライブラリをインストールする
sudo yum -y install sqlite-devel gcc-c++ mysql-devel
gem install mysql2
mysql接続オプションにてrails newする
rails new [プロジェクト名] –database mysql
Gemfileのtherubyracerをコメントアウトしてbundle install
cd [プロジェクト名]
vi Gemfile
# gem ‘therubyracer’, platforms: :ruby ←これのコメントを外す
bundle install
データベースの設定をする
vi config/database.yml
設定情報をもとにデータベースを作成する
bundle exec rake db:create
migration/modelファイルを生成する
bundle exec rails g model testaccess name:string
seedファイルを編集する
vi db/seed.rb
# coding: utf-8
Testaccess.create!( :name => ‘あああ’)
Testaccess.create!( :name => ‘いいい’)
migrationをかける
bundle exec rake db:migrate
bundle exec rake db:seed
controller/Actionを作る
bundle exec rails g controller [コントローラー名] [アクション名:1] [アクション名:2] …
controllerを編集する
一例:mysqlのデータを取得し、jsonで返す
class MysqltestController < ApplicationController
def list
@user = Testaccess.all
render :json => @user
end
end
-
- rails serverを立ち上げてアクセスしてみる
http://[IPアドレス]:3000/[コントローラー名]/[アクション名]
bundle exec rails s -b 0.0.0.0 -edevelopment
访问memcached
Gemfileに追記して、bundle install
gem ‘dalli’
bundle install
config/enviroments/xxxx.rbの各環境ファイルに追記
config.cache_store = :dalli_store
railsコンソールで確認(最低限)
rails c
書込:Rails.cache.write ‘[キー名]’, ‘[保存情報]’
読込:Rails.cache.read ‘[キー名]’
削除:Rails.cache.delete ‘[キー名]’
访问 Redis
Gemfileに追記して、bundle install
gem ‘redis’
gem ‘redis-rails’
bundle install
環境変数にredisのサーバー情報を追加
vi config/environments/xxxx.rbの各環境ファイルに追記
ENV[“REDIS”] = “localhost:6379”
config/initializers/redis.rbの作成
require 'redis'
uri = URI.parse(ENV["REDIS"])
RedisOBJ = Redis.new(host: uri.host, port: uri.port)
-
- railsコンソールで確認(最低限)
rails c
書込:RedisOBJ.set ‘[キー名]’, ‘[保存情報]’
読込:RedisOBJ.get ‘[キー名]’
削除:RedisOBJ.del ‘[キー名]’