6
Help us understand the problem. What are the problem?

More than 3 years have passed since last update.

posted at

updated at

Vagrantで開発環境を構築(2.仮想環境設定編)

目的

  • 勉強の一貫で記事をまとめる.
  • VagrantとVirtualBoxで仮想環境を作成できるようになる.

前回:Vagrantで開発環境を構築(1.仮想マシン作成編)
今回:Vagrantで開発環境を構築(2.仮想環境設定編)
次回:Vagrantで開発環境を構築(3.PHP開発環境編)

yumの更新

CentOSでは,パッケージをインストールしたり管理したりするために,yumというパッケージ管理ソフトを利用する.
まず最初に,既にインストールされているyumを最新版にアップデートする.

1. ターミナル(仮想マシン)で下記のコマンドを実行.

ターミナル(仮想マシン)
$ sudo yum update # yumパッケージを更新

yum のアップデートをする際に,下記のエラーが発生する場合がある.

エラーメッセージ
The GPG keys listed for the "Puppet Labs PC1 Repository el 7 - x86_64" repository are already installed but they are not correct for this package. Check that the correct key URLs are configured for this repository.   Failing package is: puppet-agent-1.8.2-1.el7.x86_64 GPG Keys are configured as: file:///etc/pki/rpm-gpg/RPM-GPG-KEY-puppetlabs-PC1

その場合は、

ターミナル(仮想マシン)
$ curl -L https://yum.puppetlabs.com/RPM-GPG-KEY-puppet -o /tmp/RPM-GPG-KEY-puppet

$ gpg --with-fingerprint "/tmp/RPM-GPG-KEY-puppet"

$ sudo cp /tmp/RPM-GPG-KEY-puppet /etc/pki/rpm-gpg/RPM-GPG-KEY-puppetlabs-PC1

を実行して$ sudo yum updateをやり直す.

参考:Solution for CentOS 7.2 GPG Key Issue while updating yum

firewallの無効化

1. ターミナル(仮想マシン)で下記のコマンドを実行.

ターミナル(仮想マシン)
$ sudo systemctl stop firewalld # firewallを無効化

$ sudo systemctl disable firewalld # firewallの自動起動を無効化

$ systemctl status firewalled # 確認

SELinux の無効化

1. 以下の設定ファイルを修正する.

/etc/selinux/config
# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
#     enforcing - SELinux security policy is enforced.
#     permissive - SELinux prints warnings instead of enforcing.
#     disabled - No SELinux policy is loaded.
### Disalbe SELINUX begin
##SELINUX=enforcing
SELINUX=disabled # ココ
### Disalbe SELINUX end
# SELINUXTYPE= can take one of three two values:
#     targeted - Targeted processes are protected,
#     minimum - Modification of targeted policy. Only selected processes are protected.
#     mls - Multi Level Security protection.
SELINUXTYPE=targeted

2. ターミナル(仮想マシン)で下記のコマンドを実行.

ターミナル(仮想マシン)
$ sudo shutdown -r now # OSを再起動する.

git, vimのインストール

開発には必需なgitと何かと便利なvimをインストールする.

1. ターミナル(仮想マシン)で下記のコマンドを実行.

ターミナル(仮想マシン)
$ sudo yum install git # gitのインストール

$ sudo yum install vim # vimのインストール

$ sudo yum install zip unzip # zip,unzipのインストール

2. ターミナル(仮想マシン)で下記のコマンドを実行

ターミナル(仮想マシン)
# ユーザ名とメールアドレスを設定
$ git config --global user.name "<ユーザ名>"
$ git config --global user.email "<メールアドレス>"

# gitで使用するデフォルトのエディタをvimに変更
$ git config --global core.editor 'vim -c "set fenc=utf-8"'

# gitコマンドの結果に色をつける
$ git config --global color.ui true

# push方法を指定する(Git 1.8系以降の場合)
$ git config --global push.default simple

$ git config --list # 確認

参考:git push時に表示されるwarning: push.default is unset...の意味と解決方法

3. vimのカスタマイズ

~/配下に.vimrcを作成(これだけでvim の使い勝手が抜群に良くなる).

.vimrc
"文字コードをUFT-8に設定
set fenc=utf-8
" バックアップファイルを作らない
set nobackup
" スワップファイルを作らない
set noswapfile
" 編集中のファイルが変更されたら自動で読み直す
set autoread
" バッファが編集中でもその他のファイルを開けるように
set hidden
" 入力中のコマンドをステータスに表示する
set showcmd

" 行番号を表示
hi Comment ctermfg=gray
set number
" 現在の行を強調表示
set cursorline
" 行末の1文字先までカーソルを移動できるように
set virtualedit=onemore
" インデントはスマートインデント
set smartindent
" ビープ音を可視化
set visualbell
" 括弧入力時の対応する括弧を表示
set showmatch
" ステータスラインを常に表示
set laststatus=2
" コマンドラインの補完
set wildmode=list:longest
" 折り返し時に表示行単位での移動できるようにする
nnoremap j gj
nnoremap k gk

" 不可視文字を可視化(タブが「▸-」と表示される)
set list listchars=tab:\▸\-
" Tab文字を半角スペースにする
set expandtab
" 行頭以外のTab文字の表示幅(スペースいくつ分)
set tabstop=2
" 行頭でのTab文字の表示幅
set shiftwidth=2

" 検索文字列が小文字の場合は大文字小文字を区別なく検索する
set ignorecase
" 検索文字列に大文字が含まれている場合は区別して検索する
set smartcase
" 検索文字列入力時に順次対象文字列にヒットさせる
set incsearch
" 検索時に最後まで行ったら最初に戻る
set wrapscan
" 検索語をハイライト表示
set hlsearch
" ESC連打でハイライト解除
nmap <Esc><Esc> :nohlsearch<CR><Esc>

参考:何も考えず~/.vimrcにこれを書くんだ! 〜vim初心者によるvim初心者のためのvim入門〜

最適化

よく分からないけど設定する必要があるらしい(ホント要勉強).

ターミナル(仮想マシン)
$ sudo yum clean all

$ sudo dd if=/dev/zero of=/EMPTY bs=1M

$ sudo rm -f /EMPTY

まとめ

以上で仮想環境の設定が完了.
次回からはPHPの開発環境を構築していく.

前回:Vagrantで開発環境を構築(1.仮想マシン作成編)
今回:Vagrantで開発環境を構築(2.仮想環境設定編)
次回:Vagrantで開発環境を構築(3.PHP開発環境編)

Register as a new user and use Qiita more conveniently

  1. You can follow users and tags
  2. you can stock useful information
  3. You can make editorial suggestions for articles
What you can do with signing up
6
Help us understand the problem. What are the problem?