havietduc91 / experience

0 stars 0 forks source link

Experience Setup Nodejs #23

Open havietduc91 opened 9 years ago

havietduc91 commented 9 years ago

https://www.digitalocean.com/community/tutorials/how-to-install-node-js-on-a-centos-7-server

To gain access to the EPEL repo, you must modify the repo-list of your installation. Fortunately, we can reconfigure access to this repository by installing a package available in our current repos called epel-release.

sudo yum install epel-release Now that you have access to the EPEL repository, you can install Node.js using your regular yum commands:

sudo yum install nodejs Once again, you can check that the installation was successful by asking Node to return its version number:

node --version v0.10.30 Many people will also want access to npm to manage their Node packages. You can also get this from EPEL by typing:

sudo yum install npm

havietduc91 commented 9 years ago

vagrant ssh [2:54:24 PM] NTQ Anh Trường: vào đi rồi anh hướng dẫn từng bước qua skype luôn [2:54:45 PM] NTQ Anh Trường: cd /apps [2:55:02 PM] Hà Việt Đức : rồi anh [2:55:34 PM] NTQ Anh Trường: sudo yum install epel-release [2:55:39 PM] NTQ Anh Trường: sudo yum install nodejs [2:55:52 PM] NTQ Anh Trường: tóm lại là cài nodejs vào centos [2:55:56 PM] NTQ Anh Trường: có thể làm theo link này [2:55:56 PM] NTQ Anh Trường: https://www.digitalocean.com/community/tutorials/how-to-install-node-js-on-a-centos-7-server [2:56:12 PM] NTQ Anh Trường: khi nào gõ node --version mà thấy ra version của node là đc [2:56:15 PM] NTQ Anh Trường: sau đó tiếp tục [2:56:45 PM] Hà Việt Đức : em đang làm mà bước này có vẻ tốn thời gian [2:58:14 PM] NTQ Anh Trường: sao mà tốn? [2:58:27 PM] Hà Việt Đức : ý em là thời gian tải thôi anh à [2:58:34 PM] NTQ Anh Trường: uh, chờ tí [3:04:29 PM] Hà Việt Đức : anh à, cài được node rồi anh [3:07:06 PM] NTQ Đỗ Hồng Anh: Mọi người vào phòng london nghe giải thích về DB nhé [3:07:21 PM] NTQ Anh Trường: sudo npm install --no-bin-links

[6/9/2015 6:53:43 PM] NTQ Trường: npm install grunt-cli [6/9/2015 6:53:51 PM] NTQ Trường: chạy thêm thằng này nữa để cài grunt [6/9/2015 6:54:03 PM] NTQ Trường: sau khi cài xong thì em chạy lênh: grunt [6/9/2015 6:54:21 PM] NTQ Trường: nó sẽ tiến hành compile file cson, file scss và các loại khác [6/9/2015 6:55:27 PM] VietEd Hà Việt Đức: đừng luôn ở đó chạy lệnh grunt à anh? [6/9/2015 6:55:49 PM] VietEd Hà Việt Đức: vì đứng ở đó em thấy nó báo lỗi -bash: grunt command not found [6/9/2015 6:56:06 PM] NTQ Trường: cài xong cái grunt-cli chưa? [6/9/2015 6:56:12 PM] VietEd Hà Việt Đức: xong rồi anh à [6/9/2015 6:56:48 PM] NTQ Trường: xong rồi mà gõ grunt nó lại báo not found á [6/9/2015 6:57:14 PM] VietEd Hà Việt Đức: vầng anh [6/9/2015 6:57:24 PM] NTQ Trường: à bỏ mịa, thiếu tham số: npm install -g grunt-cli [6/9/2015 6:57:34 PM] NTQ Trường: -g là global, để em có call được grunt ở mọi nơi

havietduc91 commented 9 years ago

https://github.com/hitomedia/aj4/blob/master/memo.txt

havietduc91 commented 9 years ago

host OS側

vagrant up

# Guest OS側

server

ansibleのインストール

sudo yum -y install ansible cp /apps/ansible/vagrant-local ~/; chmod 644 ~/vagrant-local

ansible-playbook -i ~/vagrant-local /apps/ansible/vagrant.yml

サーバのセットアップ

SSH Key

自分が普段使っている鍵ファイルをコピーしてください。

cp id_rsa ~/.ssh/id_rsa vi ~/.ssh/config


Host * User haruno IdentityFile ~/.ssh/id_rsa ForwardAgent yes ServerAliveInterval 200 ForwardX11 no


chmod 600 ~/.ssh/{config,id_rsa}

aj3 clone vboxsfでマウントした /apps で作業すると npm install でエラーが出るので別のディレクトリに取り出す。

参考:

https://gist.github.com/m-nori/4507653 http://iworks.cc/2014/02/vagrant%E4%B8%8A%E3%81%A7%E5%8B%95%E3%81%8Flinux%E3%81%AB%E3%83%9E%E3%82%A6%E3%83%B3%E3%83%88%E3%81%95%E3%82%8C%E3%81%9F%E3%83%87%E3%82%A3%E3%83%AC%E3%82%AF%E3%83%88%E3%83%AA%E5%86%85%E3%81%A7/

macだとそのままで大丈夫っぽい。そのままなら以下、/usr/local/apps/aj3 を /apps に読み替え。

sudo mkdir /usr/local/apps sudo chown vagrant.vagrant /usr/local/apps cd /usr/local/apps git clone git@gitlab.hitomedia.jp:aj3.git cd /usr/local/apps/aj3 chmod -R 777 var/* cp config/parameters.php.dist config/parameters.php

composer

cd /usr/local/apps/aj3 curl -s http://getcomposer.org/installer | php php composer.phar install

php composer.phar update

node.js

cd

cd src

wget http://nodejs.org/dist/v0.10.25/node-v0.10.25.tar.gz

tar zxvf node-v0.10.25.tar.gz

cd node-v0.10.25

./configure

make

sudo make install

cd ~/src/node-v0.10.25

sudo make uninstall

sudo yum -y install npm --enablerepo=epel

grunt

cd /apps

npm install

sudo npm install -g grunt-cli cd /usr/local/apps/aj3 npm install

ruby

sudo yum -y install rubygems ruby-devel sudo gem update --system sudo gem install compass

nginx

sudo chgrp -R nginx /var/lib/php/{session,wsdlcache}

sudo vi /etc/nginx/conf.d/virtual.conf


7 server_name *.applyjapan.localhost.com;

13 server_name *.applyjapan.localhost.com;

15 root /usr/local/apps/aj3/web;

50 fastcgi_param HTTPS on;


sudo /etc/init.d/nginx restart

DB

create database aj_template;

mysql -uroot aj_template < config/sql/schema/000001_init.sql

#

INSERT INTO application_category (code, name, created_at, updated_at) VALUES('rikkyo', 'rikkyo', now(), now());

データベースの初期化 実行する度にデータベースを初期化しなおすため気をつけて下さい。

https://redmine.hitomedia.jp/issues/883

ansible-playbook -i ~/vagrant-local ansible/app_init_db.yml

特定の学校向けのDBのみを初期化したい場合は手動で

$ mysql -uroot mysql> DROP DATABASE IF EXISTS aj_icu; mysql> CREATE DATABASE aj_icu CHARACTER SET UTF8; mysql> EXIT

$ cat config/sql/schema/_.sql | mysql -uroot ajicu $ cat config/sql/dummydata/icu/.sql | mysql -uroot aj_icu

ベネッセ大学のDBを作成。

$ mysql -uroot mysql> DROP DATABASE IF EXISTS aj_benesse; mysql> CREATE DATABASE aj_benesse CHARACTER SET UTF8; mysql> EXIT

$ cat config/sql/schema/_.sql | mysql -uroot ajbenesse $ cat config/sql/dummydata/benesse/.sql | mysql -uroot aj_benesse

grunt起動

assets以下の.csonファイルを編集するとgruntが検出して config/application/ 以下に.jsonファイルを書き出します。

.csonファイルを編集する予定がないときはgruntは停止していていいです。

cd /usr/local/apps/aj3 grunt

HOST OS側

windows C:\Windows\System32\drivers\etc\hosts 追記

mac /etc/hosts 追記

192.168.34.11 rikkyo.applyjapan.localhost.com 192.168.34.11 mng-rikkyo.applyjapan.localhost.com 192.168.34.11 sophia.applyjapan.localhost.com 192.168.34.11 mng-sophia.applyjapan.localhost.com 192.168.34.11 icu.applyjapan.localhost.com 192.168.34.11 mng-icu.applyjapan.localhost.com 192.168.34.11 musabi.applyjapan.localhost.com 192.168.34.11 mng-musabi.applyjapan.localhost.com 192.168.34.11 benesse.applyjapan.localhost.com 192.168.34.11 mng-benesse.applyjapan.localhost.com

Guest OS側

設定ファイルコピー

cd /usr/local/apps/aj3 cp config/parameters.php.dist config/parameters.php

決済関係のコンフィグファイル

cp config/tgMdkPHP/3GPSMDK.properties.dist config/tgMdkPHP/3GPSMDK.properties cp config/tgMdkPHP/log4php.properties.dist config/tgMdkPHP/log4php.properties

vi config/tgMdkPHP/3GPSMDK.properties

28 CA_CERT_FILE = /usr/local/apps/aj3/config/tgMdkPHP/cert.pem

vi config/tgMdkPHP/log4php.properties

6 log4php.appender.R1.File=/usr/local/apps/aj3/var/logs/mdk.log

vi config/application/rikkyo/payment.json

PHPUnitにパスを通す

vi ~/.bash_profile PATHの行末に下記を追記 :/usr/local/apps/aj3/vendor/bin

管理者アカウント追加。

AJ_HOST=rikkyo bin/console aj:admin:create --email=haruno+rikkyo@hitomedia.jp --password=xxxx --role=admin AJ_HOST=rikkyo bin/console aj:admin:create --email=haruno+rikkyo-category@hitomedia.jp --password=xxxx --role=category -c graduate-1 -c graduate-2 -c graduate-3 -c graduate-4

AJ_HOST=icu bin/console aj:admin:create --email=haruno+icu@hitomedia.jp --password=xxxx --role=admin AJ_HOST=icu bin/console aj:admin:create --email=haruno+icu-category@hitomedia.jp --password=xxxx --role=category -c college-1

デプロイ (テストサイト)

ansible-playbook -i ansible/staging ansible/deploy.yml --ask-sudo-pass で、ローカルのソースをそのままテストサイトにデプロイします。

デプロイ (開発サイト)

git checkout develop git pull ansible-playbook -i ansible/staging_dev ansible/deploy.yml --ask-sudo-pass で、ローカルのソースをそのまま開発サイトにデプロイします。

データベース名変更 aj_template -> aj_rikkyo

$ mysql -uroot mysql> drop database if exists aj_rikkyo; mysql> create database aj_rikkyo character set utf8;

$ mysqldump -uroot aj_template > aj_template.sql $ mysql -uroot aj_rikkyo < aj_template.sql

havietduc91 commented 9 years ago

npm install grunt-cli [6/9/2015 6:53:51 PM] NTQ Anh Trường: chạy thêm thằng này nữa để cài grunt [6/9/2015 6:54:03 PM] NTQ Anh Trường: sau khi cài xong thì em chạy lênh: grunt [6/9/2015 6:54:21 PM] NTQ Anh Trường: nó sẽ tiến hành compile file cson, file scss và các loại khác [6/9/2015 6:55:27 PM] Hà Việt Đức : đừng luôn ở đó chạy lệnh grunt à anh? [6/9/2015 6:55:48 PM] Hà Việt Đức : vì đứng ở đó em thấy nó báo lỗi -bash: grunt command not found [6/9/2015 6:56:06 PM] NTQ Anh Trường: cài xong cái grunt-cli chưa? [6/9/2015 6:56:11 PM] Hà Việt Đức : xong rồi anh à [6/9/2015 6:56:48 PM] NTQ Anh Trường: xong rồi mà gõ grunt nó lại báo not found á [6/9/2015 6:57:13 PM] Hà Việt Đức : vầng anh [6/9/2015 6:57:24 PM] NTQ Anh Trường: à bỏ mịa, thiếu tham số: npm install -g grunt-cli [6/9/2015 6:57:34 PM] NTQ Anh Trường: -g là global, để em có call được grunt ở mọi nơi

havietduc91 commented 8 years ago
Modify Grunt build to support configs per environment