Activity
That will work just fine.
Haven't seen that before. Does this help? http://stackoverflow.com/qu...
No problem!
Correct, you'll want to do both of those after creating.
You can deploy as many times as you need safely. It will keep copies in the releases folder. When it is successful, it will symlink it to the current folder that we just talked about.
Ah okay, so either cd into one of the releases folders (capistrano may have removed failed deploys so there may not be any) and run the rake db:create or open up the mysql command line and create the database manually instead.
Great! :) Are you in the app's current directory?
Well you can do Author.books.available because that's just querying Book.where(author_id: X).available. But obviously this is for the more complex joining tables case, so at least you're working with the models like you normally would. Not the best, but it saves you from duplication.
Absolutely, glad you got it working and thanks for pointing out the rvm thing!
Oh awesome, thanks for posting the fix. I'll be sure to update the tutorial so no one else has to go through this trouble. ;)
If you're on a mac, Sequel Pro can export and import databases very nicely. Otherwise there is mysqldump or the taps gem that could help.
You want to edit /etc/nginx/nginx.conf
and place it in there. See the instructions at the bottom of the Installing Nginx section for more on that.
It looks to me like it cannot find your version of Ruby. Did you modify your nginx config to point to the correct location? Basically, it is saying that /home/deploy/.rvm/bin/passenger_ruby
is not a valid ruby executable.
If you are using rvm, you'll want to set passenger_ruby to something like this
passenger_ruby /home/deploy/.rvm/rubies/ruby-2.1.2/bin/ruby
Change you ruby version accordingly. You can always cd into these folders to verify what is available.
It appears I never gave an example for rvm, so sorry on the confusion.
Oh sorry, run it as root with sudo less /var/log/nginx/error.log
because the /var/log folder is owned by root.
You need to add a beginning slash to that command: cd /var/log/nginx/
or just view it by doing sudo less /var/log/nginx/error.log
That file will have your Nginx and passenger logs, but your Rails app will contain your Rails errors. Use less /home/deploy/MYAPP/current/log/production.log
to view that.
If you send me your error, I can give you some more guidance on fixing it.
It's best to use the same setup on the server if you can. Definitely make sure you're using the same version of Ruby to be on the safe side otherwise bugs can come up. I would upgrade to 2.1.2 because 2.1.1 had compile bugs with readline on Ubuntu.
That's good. Did you run the ssh-copy-id command? If so, when you ssh in it should not ask you for a password. If it does, that might be the missing piece because it isn't generally good to use passwords for ssh.
I believe your roles there at the top might be causing the problem. You don't want those to include the "deploy@" in them because it gets added automatically. Comment out those lines because the server line you have later takes care of that.
The other possibility then is your git connection isn't working properly. When you deploy, your server pulls down from git, so maybe it isn't able to connect to your git repo, but I don't think your deploy has gotten that far. I'm not quite sure. Keep double checking your configs and maybe you'll spot the error.
Hmm. I guess next steps is to verify you can ssh in by doing ssh deploy@ownmanager.co with the password you set earlier.
SocketError: getaddrinfo: Name or service not known
means it cannot connect to the IP address / domain that you put in. Make sure you don't have any typos and that you specified your domain correctly.
The simplest way is to replace it with my code and change the git repo, app name, and deploy path to match your app. After that you should be pretty much done.