Windows10 WSL로 Rails 환경 구축
12181 단어 WSLRails6ubuntu18.04ruby2.6Windows10
소개
WSL을 조금 만져 보았으므로 WSL 명령 줄에서 Rails 환경을 구축합니다.
환경
WSL 도입은 여기를 참조하십시오.
WSL (Windows Subsystem for Linux) 개요 및 배포
필요한 소프트웨어 설정, 설치
Rails Girls 설치 레시피
WSL을 사용한 구축 순서가 게재되고 있었으므로, 상기 사이트를 참고로 했습니다.
$ date
Sun Oct 20 16:43:08 JST 2019
date
명령으로 일본 시간 JST
그리고 시간도 특별히 문제가 없었습니다. 만약을 위해(패키지의 인스톨에 영향이 나오지 않는다고는 말할 수 없기 때문에) 레시피대로 timezone 를 설정합니다.
$ sudo dpkg-reconfigure tzdata
# Asia/Tokyoを選択
Current default time zone: 'Asia/Tokyo'
Local time is now: Sun Oct 20 16:52:08 JST 2019.
Universal Time is now: Sun Oct 20 07:52:08 UTC 2019.
패키지 업데이트 및 업그레이드가 완료되었으므로 필요한 패키지를 설치합니다.
$ sudo apt install autoconf bison build-essential libssl1.0-dev libyaml-dev libreadline-dev zlib1g-dev libncurses5-dev libffi-dev libgdbm-dev sqlite3 libsqlite3-dev nodejs-dev node-gyp npm -y
$ sudo npm install --global yarn
(프런트 엔드 주위의 패키지 증가했다 ...)
Ruby 설치
Ruby 설치에 필요한 것을 설치합니다.
rbenv/ruby-build 설치
GitHub - rbenv/rbenv: Groom your app’s Ruby environment
친숙한 rbenv입니다. 각 애플리케이션에 대해 사용하는 루비 버전을 관리할 수 있습니다.
$ git clone https://github.com/rbenv/rbenv.git ~/.rbenv
# rbenvのダウンロード
$ echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bashrc
$ echo 'eval "$(rbenv init -)"' >> ~/.bashrc
# rbenvのパスや、初期処理などを設定
$ source ~/.bashrc
# 設定を反映させる
GitHub - rbenv/ruby-build: Compile and install Ruby
이쪽도 친숙한 ruby-build. ruby 컴파일, 설치에 사용하는 것입니다.
$ git clone https://github.com/rbenv/ruby-build.git "$(rbenv root)"/plugins/ruby-build
Ruby 설치
루비를 설치합니다. 현재의 안정판이 Rails Girls 설치 레시피 에 기재되어 있는 것과 같은, 2.6.5이므로 이것을 인스톨 합니다.
$ rbenv install 2.6.5
# ruby 2.6.5をインストール
$ rbenv global 2.6.5
# 2.6.5をグローバル(システム全体で使用する初期値)に設定
$ ruby -v
ruby 2.6.5p114 (2019-10-01 revision 67812) [x86_64-linux]
설치가 완료되었습니다.
Rails 설치
bundler를 사용하여 Rails를 설치하려고 했지만 프로젝트별로 Rails 버전을 관리 할 수 있으므로 레시피대로 설치합니다.
Bundler: The best way to manage a Ruby application's gems
$ mkdir Workspace
$ cd Workspace
# 作業用のディレクトリを作成
$ gem install rails --no-document
# railsのインストール
$ rails -v
Rails 6.0.0
Rails의 동작 확인
$ rails new mockup
# 検証用のプロジェクトを作成
Retrying fetcher due to error (2/4): Bundler::HTTPError Could not fetch specs from https://rubygems.org/
Retrying fetcher due to error (3/4): Bundler::HTTPError Could not fetch specs from https://rubygems.org/
Retrying fetcher due to error (4/4): Bundler::HTTPError Could not fetch specs from https://rubygems.org/
Could not fetch specs from https://rubygems.org/
오류가 발생하여 gem을 설치할 수없는 것 같습니다. 오류 내용에서 원인을 조사해 보았습니다.
rails5.2 bundle install이 찢어지기 때문에 원인을 조사해 보았다
$ gem -v
3.0.3
# バージョン確認
$ gem update --system
ERROR: While executing gem ... (Gem::RemoteFetcher::UnknownHostError)
timed out (https://rubygems.org/specs.4.8.gz)
# gemのアップデートを実施するも失敗
$ wget https://api.rubygems.org/specs.4.8.gz
--2019-10-20 18:22:16-- https://api.rubygems.org/specs.4.8.gz
Resolving api.rubygems.org (api.rubygems.org)... 2a04:4e42::70, 151.101.64.70, 151.101.192.70, ...
Connecting to api.rubygems.org (api.rubygems.org)|2a04:4e42::70|:443... failed: Resource temporarily unavailable.
Connecting to api.rubygems.org (api.rubygems.org)|151.101.64.70|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 3990714 (3.8M) [application/octet-stream]
Saving to: ‘specs.4.8.gz’
specs.4.8.gz 100%[===============================================>] 3.81M 10.6MB/s in 0.4s
2019-10-20 18:22:38 (10.6 MB/s) - ‘specs.4.8.gz’ saved [3990714/3990714]
# IPv6のアドレスを使用した際にダウンロードに失敗している様子
증상이 여기에 기재되어 있듯이 IPv4에서의 통신은 문제 없고, IPv6의 통신에 문제가 있는 것 같습니다. IPv4 통신을 선호하도록 설정을 변경합니다.
gai.conf(5) — manpages-ko — Debian testing — Debian Manpages
$ sudo vi /etc/gai.conf
# For sites which prefer IPv4 connections change the last line to
#
precedence ::ffff:0:0/96 100 # コメントイン
다시 프로젝트를 만듭니다.
$ rails new mockup
Overwrite /mnt/c/Users/xxx/Workspace/mockup/.gitignore? (enter "h" for help) [Ynaqdhm] y
$ cd mockup
# migrationなどの動作確認などは省略
$ rails s
http://localhost:3000/
로 이동합니다.
덤
오류 조사 중에 Powershell에서 ipconfig
를 실행했을 때와 Ubuntu 명령 줄에서 ifconfig
를 실행 한 결과를 살펴 보았습니다.
PS C:\Users\xxx> ipconfig
Windows IP 構成
Wireless LAN adapter Wi-Fi:
省略
IPv4アドレス . . . . . . . . . . . . : 192.168.1.1
サブネット マスク . . . . . . . . . . : 255.255.255.0
デフォルト ゲートウェイ . . . . . . . : 192.168.1.254
以下略
$ ifconfig
省略
wifi0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.1.1 netmask 255.255.255.0 broadcast 192.168.1.255
以下略
IP 주소와 인터페이스가 동일합니다. 생략 되어 있습니다만 MAC 주소등도 완전히 같습니다. WSL의 구조를 생각하면 이상하지 않네요.
끝에
WSL 환경에서 Rails 환경 구축이 끝났습니다. 역시 리눅스로 환경 구축할 수 있는 것은 편하네요.homebrew
보다 apt
쪽이 확실히 옵니다. Whitewater Foundry, Ltd. Co. 라는 회사가 유상의 Fedora Remix for WSL 를 만들어 주기 때문에, Red Hat 계에서 채용되고 있다 dnf
도 갈 수 있을 것 같네요. (CentOS나 RHEL도 WSL에...무리일까...)
레시피상이라고 sqlite3로 움직이고 있었던 것 같기 때문에, 대신에 PostgreSQL등을 Windows for Docker등으로 움직여 보면 또 재미있을지도 모르겠네요.
Reference
이 문제에 관하여(Windows10 WSL로 Rails 환경 구축), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/na-777/items/373414fc34417e52af42
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
$ date
Sun Oct 20 16:43:08 JST 2019
$ sudo dpkg-reconfigure tzdata
# Asia/Tokyoを選択
Current default time zone: 'Asia/Tokyo'
Local time is now: Sun Oct 20 16:52:08 JST 2019.
Universal Time is now: Sun Oct 20 07:52:08 UTC 2019.
$ sudo apt install autoconf bison build-essential libssl1.0-dev libyaml-dev libreadline-dev zlib1g-dev libncurses5-dev libffi-dev libgdbm-dev sqlite3 libsqlite3-dev nodejs-dev node-gyp npm -y
$ sudo npm install --global yarn
Ruby 설치에 필요한 것을 설치합니다.
rbenv/ruby-build 설치
GitHub - rbenv/rbenv: Groom your app’s Ruby environment
친숙한 rbenv입니다. 각 애플리케이션에 대해 사용하는 루비 버전을 관리할 수 있습니다.
$ git clone https://github.com/rbenv/rbenv.git ~/.rbenv
# rbenvのダウンロード
$ echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bashrc
$ echo 'eval "$(rbenv init -)"' >> ~/.bashrc
# rbenvのパスや、初期処理などを設定
$ source ~/.bashrc
# 設定を反映させる
GitHub - rbenv/ruby-build: Compile and install Ruby
이쪽도 친숙한 ruby-build. ruby 컴파일, 설치에 사용하는 것입니다.
$ git clone https://github.com/rbenv/ruby-build.git "$(rbenv root)"/plugins/ruby-build
Ruby 설치
루비를 설치합니다. 현재의 안정판이 Rails Girls 설치 레시피 에 기재되어 있는 것과 같은, 2.6.5이므로 이것을 인스톨 합니다.
$ rbenv install 2.6.5
# ruby 2.6.5をインストール
$ rbenv global 2.6.5
# 2.6.5をグローバル(システム全体で使用する初期値)に設定
$ ruby -v
ruby 2.6.5p114 (2019-10-01 revision 67812) [x86_64-linux]
설치가 완료되었습니다.
Rails 설치
bundler를 사용하여 Rails를 설치하려고 했지만 프로젝트별로 Rails 버전을 관리 할 수 있으므로 레시피대로 설치합니다.
Bundler: The best way to manage a Ruby application's gems
$ mkdir Workspace
$ cd Workspace
# 作業用のディレクトリを作成
$ gem install rails --no-document
# railsのインストール
$ rails -v
Rails 6.0.0
Rails의 동작 확인
$ rails new mockup
# 検証用のプロジェクトを作成
Retrying fetcher due to error (2/4): Bundler::HTTPError Could not fetch specs from https://rubygems.org/
Retrying fetcher due to error (3/4): Bundler::HTTPError Could not fetch specs from https://rubygems.org/
Retrying fetcher due to error (4/4): Bundler::HTTPError Could not fetch specs from https://rubygems.org/
Could not fetch specs from https://rubygems.org/
오류가 발생하여 gem을 설치할 수없는 것 같습니다. 오류 내용에서 원인을 조사해 보았습니다.
rails5.2 bundle install이 찢어지기 때문에 원인을 조사해 보았다
$ gem -v
3.0.3
# バージョン確認
$ gem update --system
ERROR: While executing gem ... (Gem::RemoteFetcher::UnknownHostError)
timed out (https://rubygems.org/specs.4.8.gz)
# gemのアップデートを実施するも失敗
$ wget https://api.rubygems.org/specs.4.8.gz
--2019-10-20 18:22:16-- https://api.rubygems.org/specs.4.8.gz
Resolving api.rubygems.org (api.rubygems.org)... 2a04:4e42::70, 151.101.64.70, 151.101.192.70, ...
Connecting to api.rubygems.org (api.rubygems.org)|2a04:4e42::70|:443... failed: Resource temporarily unavailable.
Connecting to api.rubygems.org (api.rubygems.org)|151.101.64.70|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 3990714 (3.8M) [application/octet-stream]
Saving to: ‘specs.4.8.gz’
specs.4.8.gz 100%[===============================================>] 3.81M 10.6MB/s in 0.4s
2019-10-20 18:22:38 (10.6 MB/s) - ‘specs.4.8.gz’ saved [3990714/3990714]
# IPv6のアドレスを使用した際にダウンロードに失敗している様子
증상이 여기에 기재되어 있듯이 IPv4에서의 통신은 문제 없고, IPv6의 통신에 문제가 있는 것 같습니다. IPv4 통신을 선호하도록 설정을 변경합니다.
gai.conf(5) — manpages-ko — Debian testing — Debian Manpages
$ sudo vi /etc/gai.conf
# For sites which prefer IPv4 connections change the last line to
#
precedence ::ffff:0:0/96 100 # コメントイン
다시 프로젝트를 만듭니다.
$ rails new mockup
Overwrite /mnt/c/Users/xxx/Workspace/mockup/.gitignore? (enter "h" for help) [Ynaqdhm] y
$ cd mockup
# migrationなどの動作確認などは省略
$ rails s
http://localhost:3000/
로 이동합니다.
덤
오류 조사 중에 Powershell에서 ipconfig
를 실행했을 때와 Ubuntu 명령 줄에서 ifconfig
를 실행 한 결과를 살펴 보았습니다.
PS C:\Users\xxx> ipconfig
Windows IP 構成
Wireless LAN adapter Wi-Fi:
省略
IPv4アドレス . . . . . . . . . . . . : 192.168.1.1
サブネット マスク . . . . . . . . . . : 255.255.255.0
デフォルト ゲートウェイ . . . . . . . : 192.168.1.254
以下略
$ ifconfig
省略
wifi0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.1.1 netmask 255.255.255.0 broadcast 192.168.1.255
以下略
IP 주소와 인터페이스가 동일합니다. 생략 되어 있습니다만 MAC 주소등도 완전히 같습니다. WSL의 구조를 생각하면 이상하지 않네요.
끝에
WSL 환경에서 Rails 환경 구축이 끝났습니다. 역시 리눅스로 환경 구축할 수 있는 것은 편하네요.homebrew
보다 apt
쪽이 확실히 옵니다. Whitewater Foundry, Ltd. Co. 라는 회사가 유상의 Fedora Remix for WSL 를 만들어 주기 때문에, Red Hat 계에서 채용되고 있다 dnf
도 갈 수 있을 것 같네요. (CentOS나 RHEL도 WSL에...무리일까...)
레시피상이라고 sqlite3로 움직이고 있었던 것 같기 때문에, 대신에 PostgreSQL등을 Windows for Docker등으로 움직여 보면 또 재미있을지도 모르겠네요.
Reference
이 문제에 관하여(Windows10 WSL로 Rails 환경 구축), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/na-777/items/373414fc34417e52af42
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
$ mkdir Workspace
$ cd Workspace
# 作業用のディレクトリを作成
$ gem install rails --no-document
# railsのインストール
$ rails -v
Rails 6.0.0
$ rails new mockup
# 検証用のプロジェクトを作成
Retrying fetcher due to error (2/4): Bundler::HTTPError Could not fetch specs from https://rubygems.org/
Retrying fetcher due to error (3/4): Bundler::HTTPError Could not fetch specs from https://rubygems.org/
Retrying fetcher due to error (4/4): Bundler::HTTPError Could not fetch specs from https://rubygems.org/
Could not fetch specs from https://rubygems.org/
$ gem -v
3.0.3
# バージョン確認
$ gem update --system
ERROR: While executing gem ... (Gem::RemoteFetcher::UnknownHostError)
timed out (https://rubygems.org/specs.4.8.gz)
# gemのアップデートを実施するも失敗
$ wget https://api.rubygems.org/specs.4.8.gz
--2019-10-20 18:22:16-- https://api.rubygems.org/specs.4.8.gz
Resolving api.rubygems.org (api.rubygems.org)... 2a04:4e42::70, 151.101.64.70, 151.101.192.70, ...
Connecting to api.rubygems.org (api.rubygems.org)|2a04:4e42::70|:443... failed: Resource temporarily unavailable.
Connecting to api.rubygems.org (api.rubygems.org)|151.101.64.70|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 3990714 (3.8M) [application/octet-stream]
Saving to: ‘specs.4.8.gz’
specs.4.8.gz 100%[===============================================>] 3.81M 10.6MB/s in 0.4s
2019-10-20 18:22:38 (10.6 MB/s) - ‘specs.4.8.gz’ saved [3990714/3990714]
# IPv6のアドレスを使用した際にダウンロードに失敗している様子
$ sudo vi /etc/gai.conf
# For sites which prefer IPv4 connections change the last line to
#
precedence ::ffff:0:0/96 100 # コメントイン
$ rails new mockup
Overwrite /mnt/c/Users/xxx/Workspace/mockup/.gitignore? (enter "h" for help) [Ynaqdhm] y
$ cd mockup
# migrationなどの動作確認などは省略
$ rails s
오류 조사 중에 Powershell에서
ipconfig
를 실행했을 때와 Ubuntu 명령 줄에서 ifconfig
를 실행 한 결과를 살펴 보았습니다.PS C:\Users\xxx> ipconfig
Windows IP 構成
Wireless LAN adapter Wi-Fi:
省略
IPv4アドレス . . . . . . . . . . . . : 192.168.1.1
サブネット マスク . . . . . . . . . . : 255.255.255.0
デフォルト ゲートウェイ . . . . . . . : 192.168.1.254
以下略
$ ifconfig
省略
wifi0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.1.1 netmask 255.255.255.0 broadcast 192.168.1.255
以下略
IP 주소와 인터페이스가 동일합니다. 생략 되어 있습니다만 MAC 주소등도 완전히 같습니다. WSL의 구조를 생각하면 이상하지 않네요.
끝에
WSL 환경에서 Rails 환경 구축이 끝났습니다. 역시 리눅스로 환경 구축할 수 있는 것은 편하네요.homebrew
보다 apt
쪽이 확실히 옵니다. Whitewater Foundry, Ltd. Co. 라는 회사가 유상의 Fedora Remix for WSL 를 만들어 주기 때문에, Red Hat 계에서 채용되고 있다 dnf
도 갈 수 있을 것 같네요. (CentOS나 RHEL도 WSL에...무리일까...)
레시피상이라고 sqlite3로 움직이고 있었던 것 같기 때문에, 대신에 PostgreSQL등을 Windows for Docker등으로 움직여 보면 또 재미있을지도 모르겠네요.
Reference
이 문제에 관하여(Windows10 WSL로 Rails 환경 구축), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/na-777/items/373414fc34417e52af42
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
Reference
이 문제에 관하여(Windows10 WSL로 Rails 환경 구축), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/na-777/items/373414fc34417e52af42텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)