LoginSignup
12
12

More than 5 years have passed since last update.

エンジニア初学生が仮想環境導入でやったこと

Last updated at Posted at 2016-01-28

目次

1.Vagrant + virtualboxでcentos7の環境構築
2.Vmware player + centos7の環境構築
3.Virtualbox + centos7の環境構築
4.SSH接続とcentos7のひとまずの初期準備
おまけ①
5.proxyのあれこれ
6.環境構築で使うコマンド一覧
7.言語毎の構築のLINK
おまけ②
参照したサイト一覧 
 
補足:近々画像も載せますのでお待ちください。
 
 

前提条件

-少しのコマンド操作
-少しのググる能力
-少しの負けん気
-少しの気合い

1.Vagrant + virtualboxでcentos7の環境構築

 
1.ひとまず使うものを揃える
自分の環境に合わせたものをダウンロードしてください
Vagrantダウンロード
VirtualBoxダウンロード
ダウンロードが終わったらインストールしてください
 
2.バージョン確認とか
windows >> コマンドプロントで
C:¥> vagrant -v
Mac >> ターミナル
~]$ vagrant -v
確認ができましたら適当な箇所にディレクトリを作成してください
コマンドプロント、ターミナル
mkdir vagrant

3.ひとまずbox作ってしまう
コマンドプロント、ターミナル
vagrant box add box名 URL
box用のURLが一覧になっているサイトでコピってください
box一覧サイト
結構時間かかるのでコーヒータイムです
一服しましょう
 
4.box addが終わったら!!!
作成したディレクトリで以下コマンドを実行
vagrant init box名
 
以下のように表示されたら問題ないです

A `Vagrantfile` has been place in this directory. You are now ready to `vagrant up` your first virtual environment! Please read the comments in the Vagrantfile as well as documentation on `vagrantup.com` for more information on using Vagrant.

  
 

1-1.起動するよー構築してくよー

1.vagrant up
これいっこでVirtualBox立ち上がっちゃいます
ちょこっと時間かかります
 
 
※補足:defaultのfolder mountエラーなんちゃらって起きた時
Vagrant自体は起動(run)してくれますがエラーが気持ち悪いので
対応方法を記載します

対策1
Vagrantfileがあるディレクトリで以下コマンドを実行する
vagrant plugin install vagrant-vbguest
エラーの理由:ゲストOS側のkernelバージョンが上がった際に起きるみたいです
上記はvagrant upの際に自動で必要なものをinstallしてくれます
 
 
対策2
一旦エラーを無視してSSHで接続、またはVMの側の画面にてyum updateを行う
※こちらは、未検証ですがupdateすることでkernelのバージョンも上がって板ましたのでおそらく大丈夫かなと
 
 
 
2.起動の確認
macご利用の方
vagrant ssh
でssh接続できます

windowsの方ゴメンなさい
ターミナルエミュレーターをご利用ください
ホスト 127.0.0.1
ポート 2222
ユーザー vagrant
password vagrant
で入れます。
※teratermで検証済みです
 
3.起動したまま
Vagrantfileの編集をします

config.vm.network "forwarded_port", guest: 80, host: 8080
config.vm.network "private_network", ip: "192.168.137.10"

の箇所のコメントを外します

3-1.ファイルを共有したいぞ
以下は最初コメントアウトされているので
それを外し、自分の環境に合わせて変更してください
config.vm.synced_folder "ローカルのディレクトリ", "VM側のディレクトリ"
 
4.よし再起動
vagrant reload

無事立ち上がったでしょうか?
これで問題なく環境導入が終わりました。 
 
 

2.VMware + centos7での環境構築

1.ひとまず使うものを揃える
VMware ダウンロード
isoファイルがあるミラーサイト(riken ftp)
※isoファイルのminimalをダウンロード
 
 
2.centosを起動させ、YESマンになる
VMwareを立ち上げたら
新規作成を選択、後でinstallにチェックを入れた後は、ひたすらOK
 
 
3.作成された仮想マシンを選択
仮想マシンの設定を行います
CD/DVDの箇所を選択
ダウンロードしたisoファイルを指定し完了
仮想マシンの再生を行います
 
 
4.VMwareが頑張ってくれる
install画面までVMwareががんばって働いてくれます
インターネットの接続を選択しONに変更
フォルダの箇所を一回選択し、そのままの状態で完了ボタンを押す
右下にある青いボタンを押してください
 
 
5.root権限
root権限のuserとpasswordを作成する
完了ボタンを二回押して完了となります
 
 
6.コーヒータイム、一服休憩
installが長いです
終わったら再起動ボタンを押して再起動してください
※centOSのinstallが始まります
 
 
7.最初の画面
root権限者を作成した際のuser名とpasswordを入れてください
これでcentosにログインし操作できるようになりました
 
※VMwareの画面から出るにはCtl + Altで抜けれます
 
 

3.Virtualbox + centos7の環境構築

1.VMwareとほとんど変わらないのですがひとまず使うものを揃える
VirtualBoxダウンロード
isoファイルがあるミラーサイト(riken ftp)
※isoファイルのminimalをダウンロード
 
 
2.virtualboxを起動し新規作成、YESマンになる
名前ー仮想マシンの名前になります
タイプー今回はlinux
バージョンー今回はcentos64bit(→ないのでredhat 64bit)
選択終わったらひたすらそのまま進めてください
 
 
3.さて仮想マシンができましたので設定を行います
作成した仮想マシンの箇所で右クリック
→ 設定を開く
→ ストレージを選択
→ コントローラー:IDE
の下のCDのロゴの箇所をクリック
→ 光学ドライブと書かれた箇所の右のアイコンをクリック
あらかじめ落としておいたisoファイルを読み込むことを確認し
OKボタンを押す
 
 
4.仮想マシンを起動
起動後はVMwareと同じ手順でcentosの立ち上げまで行います
初期画面のログインも同様となります

以上となります。
 
※virtualboxの画面からの抜け方は、↓ + Ctlです 
 
 
 

3.9その前に

 
0.windowsの方へ
自分はRLoginというターミナルエミュレーターを使用してSSH接続を行っています。

 
1.Vagrantでの接続方法は先にご説明した通りとなっております
ただprivate_networkを設定した際は、windowsに関しましては、振ったIPを入力後
user名 -vagrant
password -vagrant
で接続が可能です 
 

4.SSh接続とcentos7のひとまずの初期準備 

 
1.まずVirtualbox自体の設定を行います
ファイル > ネットワーク > ホストオンリーネットワーク
Virtualbox Host-Only Ethernet Adapter
(環境で名前が違うかも?)
の詳細を開き
DHCPサーバーのタブを開きます
①サーバーを有効化(E)にチェックをする
②サーバーアドレス、サーバマスク、下限、上限を入力
→サーバマスクにはIPvネットマスクと同じものを入れてください
最後にOKボタンを押し設定を保存します

例)
アダプター
IPv4:192.168.56.1
IPvネットマスク:255.255.255.0

DHCPサーバ
サーバー有効化
サーバーアドレス:192.168.56.100
サーバマスク:255.255.255.0
下限:192.168.56.101
上限:192.168.56.254

 
 
2.仮想マシンの設定
ネットワーク > アダプター2
ネットワークアダプターを有効化
にチェック入れます
割り当て -ホストオンリーアダプター
名前 - Virtualbox Host-Only Ethernet Adapter
(環境で名前が違うかも?)
OKボタンを押します
設定が保存されたかと思います。
ひとまずこの時点で状態が見たいので
Virtualboxからcentosの画面に入ります
centosを再起動してください
reboot
 
3.centos6系とは違う接続名
起動後画面に入りログインしましたら
ip a
コマンドを実行します
lo:~
enp0s3:~
enp0s8:~
の一覧が表示されたら問題ないです。
 
4.接続
Rloginの場合
プロトコル:ssh
オプション
server address
作成したuser名:作成したpassword
デフォルト文字セット:UTF-8
OKボタンを押す
Serverselectウィンドウが開くのでOKを押す
無事繋がったらSSH接続完了です
 

 
5.何かと使うGitをいれる 
~]$ sudo yum install -y git
ひとまずこれでgit cloneができるようになります

 
 

5.Proxyのあれこれ

proxy環境下ってめんどくさいですよね
ってことでひとまず書きます。

1.windows
一時的にproxyを通過する
コマンドプロントにて
set http_proxy=http://proxy:port
を入力すればひとまずは問題ないです
コントロールパネルから
環境変数設定で新規で追加します
proxy
http://proxy:port
で問題ないです

2.Linux(仮想環境のゲストOS)
.bash_profileに
export "http_proxy=http://proxy:port"
を記述してください
しかしこれではgitでcloneできません
git config --global http.proxy http://proxy:port
Enterで問題なくcloneできます
 
 
3.Mac
未検証
ターミナルから.bash_profileに記載すれば問題ないかと思います
 
 
 

6.環境構築で使うコマンド一覧(頻出度高め)

 
1.vagrant

vagrant -v バージョン確認
vagrant init box名 初期化
vagrant up 起動
vagrant reload 再起動
vagrant halt 停止
vagrant destroy VMから削除※boxは消えません
vagrant box add 名前 URL box作成
vagrant box remove box名 boxの削除

 
2.Centos7(仮想環境のゲストOS)

cd  階層移動 
cd /  最上階層移動
cat (ディレクトリ)ファイル名 ファイル閲覧
ip a  ネットワークの一覧 
ここから下のコマンドは、root権限時のコマンドになります
なので一般ユーザーの場合は、``sudo コマンド``の様に先頭に``sudo``つけましょー
``vi (ディレクトリ)ファイル名`` ファイルの編集
INSERTモード※編集可能状態
編集開始 → i
カーソルの次の行から編集 → o
INSESRTモードを抜ける → Escキー
保存 → :w
保存&終了 → :wq
破棄 → :q!
rm ファイルorディレクトリ  削除
mv ファイル1 ファイル2  ファイル名を1から2へ変更
touch ファイル名  ファイルの作成
mkdir フォルダ名  フォルダの作成
sysytemctl start システム名  システムの始動
sysytemctl restart システム名  システムの再始動
sysytemctl stop システム名  システムの停止
sysytemctl status システム名  システムの稼働状況確認
yum install パッケージ名  パッケージのinstall
※複数指定、バージョン指定が可能
→install中に[y/n]を聞かれるのがメンドーだわって人↓
yum install -y パッケージ名
yum remove パッケージ名  パッケージのアンインストール
yum info パッケージ名  パッケージ情報
yum downgrade パッケージ名  バージョンのダウングレード
reboot OSの再起動
usersdd ユーザー名 ユーザーの作成
passwd 作成したユーザー名 passwordの設定
→SSHでの接続は基本こっちから接続することを勧めます

 

まだまだあるのですが
検索方法等と合わせて随時追記します
 
 
 

7.言語毎の構築のLINK

作成中
-言語
centos7 + rbenv + ruby環境構築
ruby on rails 
php(各FW、wordpressの導入等)
-Webサーバ
nginx、apache
-RDBMS
mysql、maria、posgre
を予定してます。

12
12
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
12
12