2013-03-01 5 views
1

Je suis en train de déployer mon premier webapp à EC2 en utilisant Capistrano et la prise en pension est sur GitHub. Mais je suis confronté à des problèmes avec "Cap déploiement: froid". Le fichier deploy.rb est collé ci-dessous. Voici les étapes que j'ai suivies.Capistrano et EC2 et github - incapable de déployer

1) connecté à l'aide par exemple EC2 ssh de ma machine locale. Clés générées utilisant ssh-keygen sans phrase de passe.

2) A pris le contenu de id_rsa.pub et copiés dans les paramètres de repo github déploiement clés.

3) Ensuite, à partir de ma machine locale, a couru "deploy bouchon froid". Je reçois l'erreur suivante

user1 portable @: ~/myExample Déployez cap $ froid * 2013-03-01 19:08:06 exécution deploy:cold'
* 2013-03-01 19:08:06 executing
deploy: mise à jour » ** transaction: start * 2013-03 -01 19:08:06 exécution de `deploy: update_code ' mise à jour de la caisse mise en cache sur tous les serveurs s'exécutant localement:" git ls-remote [email protected]: utilisateur1/MyExample.git HEAD " Autorisation refusée (clé publique). fatale: L'extrémité distante a raccroché inopinément * [déployer: update_code] * reculer exécution "rm -rf /var/www/MyExample.com/releases/20130301133835, véritables" serveurs: [ "181.73.124.219 "] [181.73.124.219] commande commande exécution terminée en 1186ms


ensemble: application, "MyExample.com" set: scm "git" ensemble: référentiel," [email protected] : thisuser/example.git »

default_run_options [: pty] = true

jeu: l'utilisateur, 'ubuntu' ensemble: use_sudo, vrai ensemble: deploy_to, "/ var/www/# {application}" set: deploy_via,: remote_cache

rôle: web, "181.73.124.219" rôle: application, "181.73.124.219" rôle: db, "181.73.124.219",: primaire => true

après "deploy", « déployer: bundle_gems " après "deploy: bundle_gems", "déployer: restart"

espace de noms: Déploiement de l' tâche: bundle_gems faire run "cd # {} deploy_to/courant & & bundle installer Vandor/pierres précieuses" fin tâche: commencer à faire; fin tâche: arrêter faire; fin tâche: redémarrer,: rôles =>: app,: except => {: no_release => true} faire exécuter "# {try_sudo} touch # {File.join (current_path, 'tmp', 'restart.txt')} " fin fin

Que manque-t-il ici? De même, tous les pointeurs vers une URL/un blog pouvant fournir des étapes détaillées pourraient vous aider.

Merci.

+0

Je crois que cela semble être un problème avec les touches, mais je ne sais pas comment répare le. Toute aide appréciée. – sthustfo

+0

quelques mises à jour supplémentaires. J'ai vérifié contre l'aide fournie à https://help.github.com/articles/error-permission-denied-publickey. Tout va bien et même vérifié que la clé publique attachée au compte github est également la même. – sthustfo

Répondre

0

J'ai réussi à le faire fonctionner. Comme vu dans le journal, s'exécutant localement: "git ls-remote [email protected]: user1/MyExample.git HEAD »

Capistrano tente de faire fonctionner la machine locale de commande ci-dessus et non sur le serveur exécutant la commande ci-dessus sur le terminal a également retourné la même erreur -.. Permission denied (clé publique)

donc J'ai dû copier les id_rsa et id_rsa.pub générés du serveur de déploiement vers la machine locale et après la copie, l'ajouter aux clés ssk utilisées en exécutant "ssh-add/path/to/keys". Après avoir ajouté ces clés, j'ai pu aller de l'avant

Questions connexes