EC2에 node와 yarn을 설치하여 webpacker를 실행합니다.
환경
Rails 4.2.8
webpacker (3.2.2)
전제
webpacker를 도입하면 webpack의 빌드 프로세스는 webpacker:compile
가 잘 해줍니다.
또한 webpacker:compile
는 assets:precompile
를 훅하여 실행되도록 되어 있으므로 기존 capistrano 배포 프로세스에 손을 추가할 필요가 없습니다.
EC2 환경 구축
webpacker (대신 webpack)를 실행하기 위해 node와 yarn을 EC2에 설치합니다.
EC2에 ssh로 로그인하고 capistrano 사용자와 동일한 사용자로 작업합니다.
nvm 설치
먼저 nvm을 설치합니다.
$ git clone git://github.com/creationix/nvm.git .nvm
$ . .nvm/nvm.sh
다음에 로그인할 때도 nvm을 사용할 수 있도록 .bashrc에 다음을 추가합니다.
.bashrc# nvm
if [[ -s ~/.nvm/nvm.sh ]];
then source ~/.nvm/nvm.sh
fi
※.bash_profile은 capistrano 배포 시 로드되지 않으므로 .bashrc에 씁니다.
node를 설치.
$ nvm install v9.5.0
Downloading and installing node v9.5.0...
Downloading https://nodejs.org/dist/v9.5.0/node-v9.5.0-linux-x64.tar.xz...
######################################################################## 100.0%
Computing checksum with sha256sum
Checksums matched!
Now using node v9.5.0 (npm v5.6.0)
Creating default alias: default -> v9.5.0
$ nvm current
v9.5.0
$ node --version
v9.5.0
yarn 설치
다음은 yarn.
$ curl -o- -L https://yarnpkg.com/install.sh | bash
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 7033 0 7033 0 0 54326 0 --:--:-- --:--:-- --:--:-- 54519
Installing Yarn!
> Downloading tarball...
[1/2]: https://yarnpkg.com/latest.tar.gz --> /tmp/yarn.tar.gz.NMAgUCWjay
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 91 100 91 0 0 1029 0 --:--:-- --:--:-- --:--:-- 1034
0 0 0 608 0 0 829 0 --:--:-- --:--:-- --:--:-- 829
100 865k 100 865k 0 0 206k 0 0:00:04 0:00:04 --:--:-- 297k
[2/2]: https://yarnpkg.com/latest.tar.gz.asc --> /tmp/yarn.tar.gz.NMAgUCWjay.asc
100 95 100 95 0 0 8591 0 --:--:-- --:--:-- --:--:-- 8591
0 0 0 612 0 0 2160 0 --:--:-- --:--:-- --:--:-- 2160
100 1027 100 1027 0 0 2170 0 --:--:-- --:--:-- --:--:-- 2170
> Verifying integrity...
...(中略)
> Successfully installed Yarn 1.3.2! Please open another terminal where the `yarn` command will now be available.
$ source ~/.bashrc
$ yarn -v
1.3.2
.bashrc에 다음이 추가되었는지 확인합니다.
.bashrcexport PATH="$HOME/.yarn/bin:$HOME/.config/yarn/global/node_modules/.bin:$PATH"
이제 웹 팩이 움직이는 환경이 완성되었습니다
보충: capistrano에서 배포할 때 webpacker에서 오류
서버 측의 준비가 끝난 곳에서 capistrano로 배포해 보겠습니다.
성대하게 에라한다. .
...(中略)
DEBUG [b18056c3] Webpack binstubs not found.
Have you run rails webpacker:install ?
Make sure the bin directory or binstubs are not included in .gitignore
Exiting!
네,,, bin 디렉토리가 있지만,,,
조사해 보면 webpacker의 버그였으므로, 업데이트 (3.0.2 -> 3.2.2) 하면(자) 통과했습니다.
webpack binstubs not found, but present? · Issue #1166 · rails/webpacker
이상.
참고
Rails 4.2.8
webpacker (3.2.2)
webpacker를 도입하면 webpack의 빌드 프로세스는
webpacker:compile
가 잘 해줍니다.또한
webpacker:compile
는 assets:precompile
를 훅하여 실행되도록 되어 있으므로 기존 capistrano 배포 프로세스에 손을 추가할 필요가 없습니다.EC2 환경 구축
webpacker (대신 webpack)를 실행하기 위해 node와 yarn을 EC2에 설치합니다.
EC2에 ssh로 로그인하고 capistrano 사용자와 동일한 사용자로 작업합니다.
nvm 설치
먼저 nvm을 설치합니다.
$ git clone git://github.com/creationix/nvm.git .nvm
$ . .nvm/nvm.sh
다음에 로그인할 때도 nvm을 사용할 수 있도록 .bashrc에 다음을 추가합니다.
.bashrc# nvm
if [[ -s ~/.nvm/nvm.sh ]];
then source ~/.nvm/nvm.sh
fi
※.bash_profile은 capistrano 배포 시 로드되지 않으므로 .bashrc에 씁니다.
node를 설치.
$ nvm install v9.5.0
Downloading and installing node v9.5.0...
Downloading https://nodejs.org/dist/v9.5.0/node-v9.5.0-linux-x64.tar.xz...
######################################################################## 100.0%
Computing checksum with sha256sum
Checksums matched!
Now using node v9.5.0 (npm v5.6.0)
Creating default alias: default -> v9.5.0
$ nvm current
v9.5.0
$ node --version
v9.5.0
yarn 설치
다음은 yarn.
$ curl -o- -L https://yarnpkg.com/install.sh | bash
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 7033 0 7033 0 0 54326 0 --:--:-- --:--:-- --:--:-- 54519
Installing Yarn!
> Downloading tarball...
[1/2]: https://yarnpkg.com/latest.tar.gz --> /tmp/yarn.tar.gz.NMAgUCWjay
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 91 100 91 0 0 1029 0 --:--:-- --:--:-- --:--:-- 1034
0 0 0 608 0 0 829 0 --:--:-- --:--:-- --:--:-- 829
100 865k 100 865k 0 0 206k 0 0:00:04 0:00:04 --:--:-- 297k
[2/2]: https://yarnpkg.com/latest.tar.gz.asc --> /tmp/yarn.tar.gz.NMAgUCWjay.asc
100 95 100 95 0 0 8591 0 --:--:-- --:--:-- --:--:-- 8591
0 0 0 612 0 0 2160 0 --:--:-- --:--:-- --:--:-- 2160
100 1027 100 1027 0 0 2170 0 --:--:-- --:--:-- --:--:-- 2170
> Verifying integrity...
...(中略)
> Successfully installed Yarn 1.3.2! Please open another terminal where the `yarn` command will now be available.
$ source ~/.bashrc
$ yarn -v
1.3.2
.bashrc에 다음이 추가되었는지 확인합니다.
.bashrcexport PATH="$HOME/.yarn/bin:$HOME/.config/yarn/global/node_modules/.bin:$PATH"
이제 웹 팩이 움직이는 환경이 완성되었습니다
보충: capistrano에서 배포할 때 webpacker에서 오류
서버 측의 준비가 끝난 곳에서 capistrano로 배포해 보겠습니다.
성대하게 에라한다. .
...(中略)
DEBUG [b18056c3] Webpack binstubs not found.
Have you run rails webpacker:install ?
Make sure the bin directory or binstubs are not included in .gitignore
Exiting!
네,,, bin 디렉토리가 있지만,,,
조사해 보면 webpacker의 버그였으므로, 업데이트 (3.0.2 -> 3.2.2) 하면(자) 통과했습니다.
webpack binstubs not found, but present? · Issue #1166 · rails/webpacker
이상.
참고
$ git clone git://github.com/creationix/nvm.git .nvm
$ . .nvm/nvm.sh
# nvm
if [[ -s ~/.nvm/nvm.sh ]];
then source ~/.nvm/nvm.sh
fi
$ nvm install v9.5.0
Downloading and installing node v9.5.0...
Downloading https://nodejs.org/dist/v9.5.0/node-v9.5.0-linux-x64.tar.xz...
######################################################################## 100.0%
Computing checksum with sha256sum
Checksums matched!
Now using node v9.5.0 (npm v5.6.0)
Creating default alias: default -> v9.5.0
$ nvm current
v9.5.0
$ node --version
v9.5.0
$ curl -o- -L https://yarnpkg.com/install.sh | bash
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 7033 0 7033 0 0 54326 0 --:--:-- --:--:-- --:--:-- 54519
Installing Yarn!
> Downloading tarball...
[1/2]: https://yarnpkg.com/latest.tar.gz --> /tmp/yarn.tar.gz.NMAgUCWjay
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 91 100 91 0 0 1029 0 --:--:-- --:--:-- --:--:-- 1034
0 0 0 608 0 0 829 0 --:--:-- --:--:-- --:--:-- 829
100 865k 100 865k 0 0 206k 0 0:00:04 0:00:04 --:--:-- 297k
[2/2]: https://yarnpkg.com/latest.tar.gz.asc --> /tmp/yarn.tar.gz.NMAgUCWjay.asc
100 95 100 95 0 0 8591 0 --:--:-- --:--:-- --:--:-- 8591
0 0 0 612 0 0 2160 0 --:--:-- --:--:-- --:--:-- 2160
100 1027 100 1027 0 0 2170 0 --:--:-- --:--:-- --:--:-- 2170
> Verifying integrity...
...(中略)
> Successfully installed Yarn 1.3.2! Please open another terminal where the `yarn` command will now be available.
$ source ~/.bashrc
$ yarn -v
1.3.2
export PATH="$HOME/.yarn/bin:$HOME/.config/yarn/global/node_modules/.bin:$PATH"
서버 측의 준비가 끝난 곳에서 capistrano로 배포해 보겠습니다.
성대하게 에라한다. .
...(中略)
DEBUG [b18056c3] Webpack binstubs not found.
Have you run rails webpacker:install ?
Make sure the bin directory or binstubs are not included in .gitignore
Exiting!
네,,, bin 디렉토리가 있지만,,,
조사해 보면 webpacker의 버그였으므로, 업데이트 (3.0.2 -> 3.2.2) 하면(자) 통과했습니다.
webpack binstubs not found, but present? · Issue #1166 · rails/webpacker
이상.
참고
Reference
이 문제에 관하여(EC2에 node와 yarn을 설치하여 webpacker를 실행합니다.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/paranishian/items/bddaed7c3aacedb11967텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)