RoR na Ubutu-server na Virtualbox

Witam!
Jestem nowy na forum i uczę się Ruby, właściwie dopiero zaczynam od niedawna, a i z Linuksami nie mam dużo styczności. Niestety wcześniejsze moje doświadczenia z programowaniem obracały się woków pojęć: Windows, NetBeans, SVN, PHP, JS. Zakładam ten wątek, aby dowiedzieć się czegoś o tym jakie wybrać najlepsze środowisko programistyczne i jak je dobrze skonfigurować. Po pierwszych doświadczeniach z programowaniem w Ruby i potem przekopaniu tego forum wywnioskowałem, że Winda i Ruby to bardzo kiepskie połączenie.

Dlatego na swoim Windowsie 7 32 bit, zainstalowałem Oracle VirtualBox-4.1.18-78361-Win, a na nim ubuntu-12.04-server-i386.

Czy da się i jak można połączyć programowanie w Ruby pod Windą, ale projekt postawiony na serwerze w VirtualBox na Ubuntu?

Ale po co? Rozciągnij okno Virtualboxa na pełny ekran i rób wszystko pod Ubuntu.
Zainstaluj sobie tam IDE i inne potrzebne Ci programy.

Jeśli zaczynasz i chcesz się pobawić, zacznij od: http://railsinstaller.org/

Serio. Pierwszy projekt, albo dwa możesz spokojnie zrobić pod Windowsem. Oszczędzisz czas na walkę z systemem, którego nie znasz, a za to skupiasz się na nauce tego co Cię interesuje.

Potem dopiero pobaw się z wirtualną maszyną, przy czym kod możesz pisać pod Windowsem, i z przeglądarki korzystać tamże, a ubuntu traktować tylko jako serwer (wymaga to sensownego współdzielenia plików, ale sporo osób tak robi).

Wolałbym jednak zacząć zabawę z virtualboxem od razu. Dla zbliżającego się wielkimi krokami Ruby 2.0 nie będzie podobno żadnego wsparcia dla Windowsa, więc nowi zainteresowani będą musieli przesiąść się na Linuxa od razu.

O właśnie! Dokładnie to mam na myśli. Jak to zrobić? Czy jest jakiś świeży poradnik? Może być po angielsku. Będę wdzięczny! :slight_smile:

Jak najbardziej, właśnie skończyłem coś takiego konfigurować dla naszego grafika.

Nie obiecuję, że będzie bezboleśnie, ale jeśli masz trochę czasu to polecam właśnie taki sposób. Z jednej strony będziesz pracował w kodzie w wygodnym dla Ciebie edytorze, z drugiej będziesz miał środowisko Ruby’ego, z którym nie powinno być większych problemów.

http://www.yodi.me/blog/2011/10/26/build-base-box-vagrant-ubuntu-oneiric-11.10-server/

Na podstawie tego poradnika konfiguruję serwer, ale polecenia

sudo visudo
%admin ALL=NOPASSWD: ALL

mkdir ~/.ssh/
cd ~/.ssh

zdają się nie działać tak jak dyktuje poradnik … może znajdę jakieś wyjście.

Spróbuj tego: http://www.christopherbloom.com/2012/02/24/setting-up-a-rails-3-virtual-machine-using-vagrant-and-virtualbox/

To, co podałeś to zestawienie od zera całego obrazu.

Od razu widzę, że jestem mało obeznany z linuxem :slight_smile:

Wpisuję po kolei
$ gem install vagrant
$ vagrant box add lucid32 http://files.vagrantup.com/lucid32.box
$ vagrant init

i przy vagrant init podpowiada uzycie apt-get i zamiast instalować pisze, że nie jest zainstalowany… i tu się zatrzymałem

Ale Vagranta instalujesz na Windowsie, tak?

A powinno być zainstalowane na Windowsie?

Próbowałem komendy $ gem install vagrant na konsloli linuxowej. Jenak działa na tej windowsowej.

Od początku. :slight_smile:

Vagranta i Virtualboksa instalujesz na Windowsie. Z poziomu Windowsa sterujesz też Vagrantem.

Co robi Vagrant? Vagrant szykuje maszyny wirtualne w VirtualBoksie, na których możesz pracować z poziomu Windowsa.

Daleko zaszedłem, ale zatrzymałem się na razie na pewnym problemie

Error running 'make ', please read /home/vagrant/.rvm/log/ruby-1.9.3-p194/yaml/make.log

Error running ’ ./configure --prefix=/home/vagrant/.rvm/rubies/ruby-1.9.3-p194 --enable-shared --disable-install-doc --with-libyaml --with-opt-dir=/home/vagrant/.rvm/usr ', please read /home/vagrant/.rvm/log/ruby-1.9.3-p194/configure.log
There has been an error while running configure. Halting the installation.

Czy zastosowałeś się do tego, co Ci skrypt zwrócił?

please read /home/vagrant/.rvm/log/ruby-1.9.3-p194/yaml/make.log

Mam jeszcze jedno pytanie.

dla:
vagrant@lucid32:/vagrant/project$ bundle install --without production staging

wynik:
Could not locate Gemfile

natomiast wcześniej zainstalowałem:
gem install bundler

Jak to naprawić ? To ostatni etap :slight_smile:

EDIT: wynalazłem, że powinienem: gem install rails, zobaczymy.

EDIT2: nie pomogło, ktoś z was drodzy ma jakieś obiekcje?

Żeby działała komenda bundle install musisz:

  • mieć zainstalowany gem bundler
  • w katalogu, w którym uruchamiasz bundle install musisz mieć plik Gemfile.

Masz ten plik w tym katalogu?

Przy konfigurowaniu Vagrant przy pomocy http://www.christopherbloom.com/2012/02/24/setting-up-a-rails-3-virtual-machine-using-vagrant-and-virtualbox/ było dużo kłopotów. Chodź przyznam, że i tak informacje w nim zawarte okazały się bardzo pomocne, dzięki Tobie filiptepper. Niestety po udanej konfiguracji trwającej cały dzień i doinstalowaniu brakujących elementów przyszedł największy ból. Vagrant “zaliczał zwiechę” pod czas uruchamiania i nie pomagał nawet restart komputera.

Rozwiązałem problem inaczej… Po ponad 16 godzinach walki mojego pierwszego dnia przygody z linuxem. Czego się nie robi dla Rubiego.

Komunikując się z bratem, przy Jego pomocy zainstalowałem normalnego ubuntu serwer i skonfigurowałem udostępnianie plików na Sambie.

Potem kolejno wklepałem w konsole linuxową:
$ sudo apt-get -y install git-core
$ sudo apt-get -y install curl
$ bash -s stable < <(curl -s https://raw.github.com/wayneeseguin/rvm/master/binscripts/rvm-installer)
$ source ~/.profile
$ rvm requirements
$ sudo apt-get install (kod, który wyświetlił się po wpisaniu: rvm requirements)
$ rvm install 1.9.2
$ rvm use 1.9.2 --default
$ gem install rails
$ gem install nodejs
$ gem update --system
$ gem install bundler
$ bundle install --without production staging

Wszystko śmiga jak się patrzy, bez kombinowania, errorów, bez bólu. :stuck_out_tongue: :slight_smile:

Mam jeszcze pytania do tego http://www.christopherbloom.com/2012/02/24/setting-up-a-rails-3-virtual-machine-using-vagrant-and-virtualbox/ poradnika.

  1. Po co jest $ sudo apt-get install -y ruby1.8-dev ruby1.8 ri1.8 rdoc1.8 irb1.8, $ sudo apt-get install -y libreadline-ruby1.8 libruby1.8 libopenssl-ruby, $ sudo apt-get install -y libxslt-dev libxml2-dev ? Czy to jest potrzebne, konieczne, przydatne?
  2. Dlaczego nie uwzględniono tu $ gem install rails i $gem install nodejs?

[quote=Stefan01]1. Po co jest $ sudo apt-get install -y ruby1.8-dev ruby1.8 ri1.8 rdoc1.8 irb1.8, $ sudo apt-get install -y libreadline-ruby1.8 libruby1.8 libopenssl-ruby, $ sudo apt-get install -y libxslt-dev libxml2-dev ? Czy to jest potrzebne, konieczne, przydatne?
2. Dlaczego nie uwzględniono tu $ gem install rails i $gem install nodejs?[/quote]
Poradnik jest niestety średnio aktualny, więc jeśli nie czujesz się komfortowo z Linuksem to może być problematyczny… Sporo też zależy od wersji Ubuntu (wczoraj szykowałem obraz 12.04, też się parę razy potknąłem).

  1. Do kompilowania zależności, natomiast nie sądzę, żeby się kiedykolwiek przydało biorąc pod uwagę wersję…
  2. Nie wiem po co nodejs, natomiast do uruchmiania aplikacji w Rails 3 dzięki Gemfile wystarczy mieć tylko zainstalowany gem bundler. Po odpaleniu bundlera zainstalowane zostaną wszystkie zależności, łącznie z Railsami.

Stworzyłem dysk “Z”, jako dysk współdzielony. Gdy stworzę nowy projekt poleceniem: rails new nawzwa, nie mogę go edytować z poziomu Windowsa, ponieważ pojawia się komunikat pt.: “Odmowa dostępu do folderu docelowego, musisz mieć uprawnienia do wykonania tej operacji”. Pozostała przestrzeń tego dysku jest swobodnie dostępna do edycji i gdy przy pomocy Explorera Windows skopiuję cały projekt do innego folderu we współdzielonym katalogu to mogę go edytować, lecz nie działa rails serwer

Mam pytanie. Jak obejść blokowanie folderów z projektami i zmusić Windowsa do edycji ? ?

Proszę o pomoc. Będę wdzięczny!

Jeżeli Sambą to dzielisz to już musisz w ustawieniach Samby kombinować. Ja Ci tu już nie pomogę niestety.

[quote=Stefan01]Stworzyłem dysk “Z”, jako dysk współdzielony. Gdy stworzę nowy projekt poleceniem: rails new nawzwa, nie mogę go edytować z poziomu Windowsa, ponieważ pojawia się komunikat pt.: “Odmowa dostępu do folderu docelowego, musisz mieć uprawnienia do wykonania tej operacji”. Pozostała przestrzeń tego dysku jest swobodnie dostępna do edycji i gdy przy pomocy Explorera Windows skopiuję cały projekt do innego folderu we współdzielonym katalogu to mogę go edytować, lecz nie działa rails serwer

Mam pytanie. Jak obejść blokowanie folderów z projektami i zmusić Windowsa do edycji ? ?

Proszę o pomoc. Będę wdzięczny![/quote]
To pytanie o uprawnienia, więc raczej stricto linuksowe - spróbuj rzucić tym pytaniem na http://forum.ubuntu.pl albo na ich ircu, #ubuntu na irc.freenode.net. Chociaż raczej celowałbym forum, na ircu jak trafisz w złą porę, to bardzo prawdopodobne, że trafisz na jakiegoś buca : S