Pergunta

Eu tenho vindo a criar um site com Ruby on Rails, e estará hospedando-lo através de um amigo. Ele tem o espaço e capacidade para hospedar o servidor, e eu tenho um sistema para se dedicar a ser um servidor dedicado. E esta é minha primeira tentativa de um site Rails, além de auto-hospedagem com um amigo.

I será formatar e preparar o servidor hoje e amanhã com a seguinte configuração de software:

  • Apache2
  • Phusion Passenger (aka, mod_rails)
  • Rubi Enterprise Edition
  • MySQL 5

Eu tenho uma série de perguntas, e peço desculpas por sua complexidade. Eu não encontrei um guia para esta configuração, no entanto, e sendo novo para Rails Eu não tenho a experiência de navegar o meu caminho através deste ainda.

O compilação do Linux é mais recomendado para esta configuração?

Eu tenho sido planejamento para implantar no CentOS. A ressalva é que eu tenho sido um usuário do Windows desde meus primeiros dias, e só tenho usado o Linux como um serviço de hospedagem e muito poucos comandos de desenvolvimento (como CVS). Assim, o meu conhecimento do Linux é bastante pequeno, e minha experiência menor. Se eu correr em quaisquer dificuldades de implantação, técnicos graças à distro de Linux, ou qualquer coisa do tipo ... Eu estou totalmente pendurada para secar.

Isso inclui coisas como construir qualquer coisa a partir do código-fonte.

Como faço para configurar Capistrano no meu servidor para implementação remota?

Eu sei que este é um oxímoro (Capistrano é do lado do cliente, e não do lado do servidor), mas eu não sei o que ele precisa no servidor. Será que ela precisa FTP? SFTP? SSL? SSH? O que?

O que posso configurar no meu servidor, e como faço para configurá-lo, para permitir Capistrano para funcionar sem problemas?

Além disso, como faço para se referir Capistrano ao fato de que o meu SCM está em localhost e é por Mercurial? (Eu usei TortoiseMg.) Eu poderia converter-se ao SVN e provavelmente criar um repositório no servidor, mas eu não sou inteiramente certo como fazer isso.

O que é o maior empecilho você prestar atenção para ao implantar a partir de um desenvolvimento localhost, para implantação em um sistema operacional totalmente diferente?

Diversos

Por que não implantar o Windows, em seguida, Porque eu estou pagando a conta, e eu não quero pagar por outra cópia do XP ou possivelmente 2000?; Eu me recuso a usar o Vista. Além disso, o Linux é muito mais seguro que o Windows para um ambiente de servidor.

Por que não ler as guias existentes eu sou?; este é meu primeiro site com Ruby on Rails, o meu orçamento está na área inferior a dois dígitos agora, e eu estou tentando expandir meus horizontes, fazendo a configuração do servidor ea implantação remota (para o desenvolvimento do site) por Eu mesmo. Tenho contado com anfitriões no passado para os meus sites PHP, mas eles são muito mais homogênea na sua configuração. servidores de rubi são caros, de forma proibitiva para mim, e para aprender a sua configuração não iria prejudicar a saber.

Foi útil?

Solução

O que compilação do Linux é mais recomendado para esta configuração?

Qualquer das distribuições vai funcionar muito bem contanto que eles podem executar Apache2 (que é quase todos eles) e você pode instalar Passageiros (junto com Ruby e Rails). Eu pessoalmente uso CentOS e encontrar o seu manjedoura pacote para ser ridiculamente fácil de usar ( yum ).

yum install -y httpd ruby
gem install rails passenger

Então tudo que você tem a fazer é um pouco de configuração no /etc/httpd/conf/httpd.conf para adicionar Passageiros (seguindo o arquivo de instalação para passenger-install-apache2-module Passageiros) e apontá-lo para o seu .../app_name/current/public pasta de implantação.

Uma vez que você estiver usando Passageiros você deve substituir a tarefa de reinicialização para trabalhar para ele.

config/deploy.rb

namespace :deploy do
  desc "Restart Application"
  task :restart, :roles => :app do
    run "touch #{current_path}/tmp/restart.txt"
  end
end

Como faço para configurar Capistrano no meu servidor para implementação remota?

Todos Capistrano precisa é de acesso SSH com permissões suficientes para implantar, migrar servidor de aplicações reinício, etc. basta seguir o guia de Introdução na Capistrano website e você vai ser instalado e funcionando em nenhum momento .

Capistrano precisa de acesso ao seu SCM, você vai precisar para permitir que ele se conecte à sua máquina. Todos Capistrano faz é check-out seu código em uma pasta de lançamento e se move a ligação simbólica da versão antiga e reinicia o servidor de aplicações.

O que é o maior empecilho você prestar atenção para ao implantar a partir de um desenvolvimento localhost, para implantação em um sistema operacional totalmente diferente?

O maior problema é com as migrações, teste, teste, teste, e testá-los um pouco mais. Um bug em seu aplicativo é fácil de corrigir e reorientar, mas um erro na sua migração pode acabar uma dor enorme na bunda com a possibilidade de perda de dados.

Outras dicas

Eu encontrei os artigos postados na Slicehost.com (a VPS empresa de hospedagem) para ser muito útil.

A lista completa de artigos está em: http://articles.slicehost.com/sitemap . Você vai encontrar uma série de artigos não relacionados com a implantação de produção de um aplicativo Ruby on Rails.

Eu recomendo usar servidor Ubuntu e deprec , uma vez que fornece uma tonelada de receitas sysadmin que tornam as coisas ainda mais fácil.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top