質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.49%
Tera Term

Tera Termは、TeraTerm Projectが開発する国産のWindows向けターミナルソフト。telnetプロトコルでのリモートホストへの接続やCOMポートのシリアル接続が可能で、マクロが利用できます。

Ruby on Rails

Ruby on Railsは、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

Q&A

解決済

1回答

2039閲覧

gem sourcesが空欄です。

Gr.

総合スコア89

Tera Term

Tera Termは、TeraTerm Projectが開発する国産のWindows向けターミナルソフト。telnetプロトコルでのリモートホストへの接続やCOMポートのシリアル接続が可能で、マクロが利用できます。

Ruby on Rails

Ruby on Railsは、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

0グッド

0クリップ

投稿2019/02/12 00:05

編集2019/02/12 05:55

Railsアプリにgemの追加ができない問題に直面しています。
この件は別途質問を投稿していますが、今回はおそらくその件と関連するであろう別の問題を質問させていただきます。

Tera Termでvagrantにつないでrailsを起動しています。

$ gem sources

を確認すると、現在設定されているソースが何も表示されません。
普通はたぶんhttps://rubygems.org/とかが出るかと思います。

ただ、Gemfileを見ると

source 'https://rubygems.org'

と、しっかり書かれています。

コマンドプロンプトでアプリのあるディレクトリに行き、同様に

gem sources

を確認すると、ここでは

https://rubygems.org/

と出ます。

Tera Termでは空欄なので

$ gem sources --add https://rubygems.org/

を実行してソースを書き入れようとすると、

Error fetching https://rubygems.org/:
no such name (https://rubygems.org/specs.4.8.gz)

と出ます。

これってつまり、Tera Termで書いている方が何らかの問題でhttpsにつながっていないということだと思うのですが、根本原因は何なのでしょう?

コマンドプロンプトとTera Termの違いすらおぼつかない初心者ですが、解決のヒントをいただけると幸いです。

以下、追記

Vagrantfile

1 # Create a forwarded port mapping which allows access to a specific port 2 # within the machine from a port on the host machine. In the example below, 3 # accessing "localhost:8080" will access port 80 on the guest machine. 4 config.vm.network "forwarded_port", guest: 3000, host: 3000 5 6 # Create a private network, which allows host-only access to the machine 7 # using a specific IP. 8 config.vm.network "private_network", ip: "192.168.33.10" 9 10 # Create a public network, which generally matched to bridged network. 11 # Bridged networks make the machine appear as another physical device on 12 # your network. 13 # config.vm.network "public_network"

vagrant ssh

IP address for eth0: 10.0.2.15
IP address for eth1: 192.168.33.10
Last login: Mon Feb 11 22:47:17 2019 from 10.0.2.2

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Gr.

2019/02/12 00:18

Stan_Dmaさん 質問への追記・修正の依頼ありがとうございます。 googleで調べた結果httpsの代わりにhttpを試すこともしましたが、同じく Error fetching http://rubygems.org/: no such name (http://rubygems.org/specs.4.8.gz) となってしまいます。
Stan_Dma

2019/02/12 00:34

Is network reachable from the vagrant environment to the internet?
Gr.

2019/02/12 00:42 編集

Stan_Dmaさん $ nslookup rubygems.org を入力すると、3秒ほどたって ;; connection timed out; no servers could be reached と出ました。
Stan_Dma

2019/02/12 00:47 編集

You may ping to any other sites to fail?
Gr.

2019/02/12 00:58

Stan_Dmaさん ping というコマンドを使ったことがないのですが、具体的にどこにどのようにコマンド入力して確かめればいいのでしょうか? 見当違いでしたらすみませんが、たとえばYahoo!のIPアドレス(183.79.217.124)で $ nslookup 183.79.217.124 をすると、同じく ;; connection timed out; no servers could be reached と出ました。
Stan_Dma

2019/02/12 01:00

Sometimes ping -c 3 <server>. BTW, check your network settings on the vagrant.
Stan_Dma

2019/02/12 01:06 編集

FYI, ping is a must in case. Good luck.
Gr.

2019/02/12 01:13

Stan_Dmaさん ありがとうございます。 ping周りを調べてみます。
otn

2019/02/12 03:45

> コマンドプロンプトでアプリのあるディレクトリに行き、 をもっと具体的に、こちらで同じ操作ができるレベルで詳しく書いてください。 コマンドプロンプトというのは、CMD.EXE のウィンドウの事を言ってますか?
Gr.

2019/02/12 04:13

otnさん 質問への追記・修正の依頼ありがとうございます。 できるだけ具体的に書きますが、初心者なので不足があったら指摘してください。 Railsでアプリを試作しています。Windowsのコマンドプロンプトでvagrant upし、vagrant sshで vagrant@vagrant-ubuntu-trusty-32: へ繋ぎ、rails sでアプリを起動しています。(Windowsのコマンドプロンプトでvagrant sshする代わりにTera Termを使うこともありますが、同じことなので割愛します。) この vagrant@vagrant-ubuntu-trusty-32: で $ gem sources を見ると空っぽで、 $ gem sources --add https://rubygems.org/ で追記しようとしても上記のエラーになります。 しかし、vagrant sshする前、Windowsのコマンドプロンプトでvagrant upしただけの段階で >gem sources と入力すると、ここではGemのソースとしてhttps://rubygems.org/を使っているという結果が戻り、 >gem sources --add https://rubygems.org/ を実行すると、当然すでに入っていますというメッセージが出ます。 Gemfileにもソース元としてちゃんと source 'https://rubygems.org' と書かれているので、問題はvagrantでhttps://rubygems.org/に(というかあらゆるサイトに)繋げられないことなのかなと思っています。 ですが、そこら辺の知識はゼロに等しくpingがどうとかもよくわからないので下手に動けない現状です。
otn

2019/02/12 04:35

vagrant sshする前に、コマンドプロンプトで gem コマンドを打つと、WindowsにインストールされているRubyとgemが動くのでは?
Gr.

2019/02/12 04:45

otnさん そうですね。 問題はアプリのあるvagrant内でgemがinstallできないことなのですが、 vagrant@vagrant-ubuntu-trusty-32: で、あるはずの(Gemfileに記載してある) $ gem sources が参照できず、 $ gem install や $ bundle install もできないのはなぜなのでしょうか。なにか接続不良な気がするのですが、こういった場合どこを見てどこを修正するのかまるでわからないのです。
otn

2019/02/12 05:08 編集

ネットワークの設定が間違っているのが原因です。 ・ホスト名の解決が出きてないだけ(DNSの設定がおかしい) ・そもそもインターネットへの経路がない のどちらかでしょうが、ping 8.8.8.8 で通れば前者で、エラーになれば後者です。
Gr.

2019/02/12 05:14

otnさん >ping 8.8.8.8で通れば これはどこに書けばいいのでしょうか。 試しにvagrant@vagrant-ubuntu-trusty-32: $ ping 8.8.8.8とすると ping: icmp open socket: Operation not permitted と出ますが。 無知ですみません。助かります。
Stan_Dma

2019/02/12 05:38

You should shouw up the contents of your Vagrantfile, especially for the setting of 'config.vm.network'. It should not be 'private_network', is it?
Gr.

2019/02/12 05:59

Stan_Dmaさん Vagrantfileの'config.vm.network'周りを追記しておきました。 >vagrant ssh でlogin from 10.0.2.2となっていますが、これがVagrantfileにある 192.168.33.10 でないのがいけないのでしょうか?
Stan_Dma

2019/02/12 09:02

Comment the line for config.vm.network "private_network" out, and then uncomment the line for config.vm.network "public_network", and et voila?
Gr.

2019/02/12 11:56

Stan_Dmaさん config.vm.network "private_network", ip: "192.168.33.10"をコメントアウトし、  → # config.vm.network "private_network", ip: "192.168.33.10" # config.vm.network "public_network"のコメントアウトを外し、  → config.vm.network "public_network" vagrant reload した後、試しに$ gem sources --add https://rubygems.org/ を打ってみましたが、同じエラーが出ました。
Stan_Dma

2019/02/13 03:55

When you issued the 'vagrant add' command, what did you enter the command exactly? 'vagrant add hashicorp/precise64' or something else? I would like to know about the information of your virtual machine.
Gr.

2019/02/13 04:13

Stan_Dmaさん virtual machineはVirtualBoxを使っています。使っていると言っても、勝手につながれる以外ではほとんど触れたことはありませんが。 'vagrant add' command とは何のことでしょうか。今回の質問の過程ではこのコマンドは使っていませんが、vagrantを使い始めた頃の、つまり初期設定的な話でしょうか? 知識&経験不足で色々お手数おかけします。
Stan_Dma

2019/02/13 04:23

Show me followings: i) An output when typing 'vagrant status', ii) An output when typing 'vagrant ssh-config', iii) An an output when typing 'uname -a' AFTER typing 'vagrant ssh'.
Gr.

2019/02/13 04:32

Stan_Dmaさん i) An output when typing 'vagrant status' > vagrant status Current machine states: default running (virtualbox) The VM is running. To stop this VM, you can run `vagrant halt` to shut it down forcefully, or you can run `vagrant suspend` to simply suspend the virtual machine. In either case, to restart it again, simply run `vagrant up`. ii) An output when typing 'vagrant ssh-config' > vagrant ssh-config Host default HostName 127.0.0.1 User vagrant Port 2222 UserKnownHostsFile /dev/null StrictHostKeyChecking no PasswordAuthentication no IdentityFile C:/Users/(hoge)/Desktop/vagrant/.vagrant/machines/default/virtualbox/private_key IdentitiesOnly yes LogLevel FATAL iii) An an output when typing 'uname -a' AFTER typing 'vagrant ssh' > uname -a Linux vagrant-ubuntu-trusty-32 4.4.0-137-generic #163~14.04.1-Ubuntu SMP Mon Sep 24 17:13:32 UTC 2018 i686 i686 i686 GNU/Linux
Stan_Dma

2019/02/13 05:13

Thank you very much. Also sorry for my mistyping 'vagrant add'. I should say 'vagrant init'. You have entered the command 'vagrant init ubuntu/trusty32' when building your vagrant enviroment according to the 'uname -a' output. I will try the same one in a minute.
Stan_Dma

2019/02/13 06:09 編集

Almost the same ubuntu box, that I tried the recent version in which I can ping any <server> after 'vagrant ssh'. Something wrong with your ubuntu box. Typing 'ifconfig eth0' or 'ifconfig' AFTER 'vagrant ssh' shows like following: eth0 Link encap:Ethernet HWaddr 08:00:27:eb:32:ed inet addr:10.0.2.15 Bcast:10.0.2.255 Mask:255.255.255.0 inet6 addr: fe80::a00:27ff:feeb:32ed/64 Scope:Link ... How about you? There exists 'inet addr: 10.0.2.15' or another address?
Gr.

2019/02/13 06:15

Stan_Dmaさん $ ifconfig eth0 Link encap:Ethernet HWaddr 08:00:27:88:e7:b2 inet addr:10.0.2.15 Bcast:10.0.2.255 Mask:255.255.255.0 inet6 addr: fe80::a00:27ff:fe88:e7b2/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:17482 errors:0 dropped:0 overruns:0 frame:0 TX packets:16861 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:1159693 (1.1 MB) TX bytes:23831902 (23.8 MB) eth1 Link encap:Ethernet HWaddr 08:00:27:8d:04:d3 inet addr:192.168.33.10 Bcast:192.168.33.255 Mask:255.255.255.0 inet6 addr: fe80::a00:27ff:fe8d:4d3/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:68 errors:0 dropped:0 overruns:0 frame:0 TX packets:16 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:10182 (10.1 KB) TX bytes:1296 (1.2 KB) lo Link encap:Local Loopback inet addr:127.0.0.1 Mask:255.0.0.0 inet6 addr: ::1/128 Scope:Host UP LOOPBACK RUNNING MTU:65536 Metric:1 RX packets:64 errors:0 dropped:0 overruns:0 frame:0 TX packets:64 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1 RX bytes:4704 (4.7 KB) TX bytes:4704 (4.7 KB)
Stan_Dma

2019/02/13 06:23

Sorry I am not sure the reason why you cannot access from VM to the internet. I guess that your security software could block connections if in use.
Gr.

2019/02/13 07:34

Stan_Dmaさん セキュリティソフトでvirtualboxだけファイアウォールの設定から外してみましたが変化ありませんでした。 ちなみに、curlを使うと、 vagrant@vagrant-ubuntu-trusty-32:/vagrant/App $ curl https://rubygems.org/ curl: (6) Could not resolve host: rubygems.org と返ります。 rubygems.orgのドメインが名前解決できていないようなのですが、これは関係しますか?
Stan_Dma

2019/02/14 03:09 編集

Your CURL-ing to fail is due to the same cause. Why dont you check and see disabling all firewalls on your security software?
guest

回答1

0

自己解決

デプロイし直すことで解決しました。

投稿2019/06/04 01:57

Gr.

総合スコア89

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.49%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問