Cygwin + Vagrant + Node.js + Express の環境構築めも


備忘用。

CentOS7.5用のboxセットアップ

mkdir <centos75みたいなの>
vagrant init <centos75みたいなの>

$ cat Vagrantfile
Vagrant.configure("2") do |config|
  config.vm.provider "virtualbox" do |vb|
    vb.gui = false
  end
  config.vm.box = "bento/centos-7.5"
  config.vm.network "public_network"
  config.vm.network "forwarded_port", guest: 3000, host: 3000, id:"http"
  config.vm.network "private_network", ip: "192.168.xxx.yyy"
  config.vm.synced_folder "main","/home/vagrant/main", owner: "vagrant", group: "vagrant", mount_options: ["dmode=777", "fmode=777"]
end

・ユーザ / パスワード は、下記になる。
vagrant / vagrant

ホスト側の共有フォルダ作成

mkdir main

box初期化と接続

vagrant up
vagrant ssh

タイムゾーン変更

sudo timedatectl set-timezone Asia/Tokyo

CentOS7.5 最新化

sudo yum -y update

日本語化

sudo localectl set-locale LANG=ja_JP.utf8
sudo localectl set-keymap jp106
source /etc/locale.conf

・確認
echo $LANG
ja_JP.utf8 になっていることを確認。

passwd
なんかのコマンド打って日本語になっていることを確認する。

VagrantのboxのGuest Additionsのアップデート

共有フォルダのエラー対策

vagrant plugin install vagrant-vbguest
vagrant vbguest

・インストールされたバージョンの確認
vagrant vbguest --status
vagrant reload

nodeの設定

curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.30.1/install.sh | bash
vi .bash_profile
 以下を追加
    # nvm設定
    if [[ -s ~/.nvm/nvm.sh ]];
     then source ~/.nvm/nvm.sh
    fi
source ~/.bash_profile
nvm install v8.11.3
nvm alias default v8.11.3
nvm use v8.11.3

Express設定

npm i -g express-generator
cd main
express -e (expressのひな型を作成)
ls
npm install express --no-bin-links (必要なmoduleをインポート)
DEBUG=node-test:* npm start (アプリの立ち上げ)

※Windows環境でnpm installでエラーが発生する場合の対処法

npm ERR! EPROTO: protocol error, symlink '../mime/cli.js' -> '/home/vagrant/project/node_modules/.bin/mime'

とでたら
npm install express --no-bin-links
とする。

Express見る