Dokku sur Ubuntu refusant la connexion

J’ai installé une nouvelle image de Dokku v0.2.3 sur 14.04 (avec Docker 1.2.0) sur un droplet de 512 Mo dans DigitalOcean. Pour éviter les problèmes de mémoire, je crée un fichier d’échange comme d’habitude.

J’ai déployé deux applications à des fins de test, une sur un sous-domaine, une autre avec un domaine personnalisé et elles fonctionnaient très bien .

C’était juste un serveur de test, juste pour voir comment cela fonctionnait, si cela fonctionnait et globalement pour voir si je pouvais le faire fonctionner.

Alors. La prochaine chose a été de détruire cette gouttelette et d’en créer une nouvelle pour y déployer des applications. J’ai, comme à la première fois que tout a fonctionné, fait ces étapes ici dans cet article .

Fondamentalement:

  1. Génération de clés SSH (cela fonctionne bien évidemment)

  2. Accès au serveur (http: //) pour effectuer l’installation de dokku (ici, j’ai activé l’ utilisation du nommage virtualhost pour les applications )

  3. Mettre à jour l’étape de déploiement de dokku

    cd ~ / dokku git pull origine master make install

  4. Installez le plugin dokku postgresql

    cd / var / lib / dokku / plugins clone git https://github.com/Kloadut/dokku-pg-plugin postgresql plugins dokku-install

  5. Application de test poussée des rails sur le serveur Ceci est la sortie:

    git push dokku master Counting objects: 6, done. Delta compression using up to 4 threads. Compressing objects: 100% (5/5), done. Writing objects: 100% (6/6), 491 bytes | 0 bytes/s, done. Total 6 (delta 2), reused 3 (delta 0) -----> Cleaning up ... -----> Building rails-sample ... Ruby app detected -----> Compiling Ruby/Rails -----> Using Ruby version: ruby-2.1.2 -----> Installing dependencies using 1.6.3 Running: bundle install --without development:test --path vendor/bundle --binstubs vendor/bundle/bin -j4 -- deployment Don't run Bundler as root. Bundler can ask for sudo if it is needed, and installing your bundle as root will break this application for all non-root users on this machine. Using rake 10.1.1 Using i18n 0.6.9 Using minitest 4.7.5 Using multi_json 1.8.4 Using tzinfo 0.3.38 Using builder 3.1.4 Using erbuy 2.7.0 Using atomic 1.1.15 Using rack 1.5.2 Using polyglot 0.3.4 Using activerecord-deprecated_finders 1.0.3 Using arel 4.0.2 Using coffee-script-source 1.7.0 Using mime-types 1.25.1 Using execjs 2.0.2 Using hike 1.2.3 Using thor 0.18.1 Using kgio 2.9.2 Using json 1.8.1 Using tilt 1.4.1 Using bundler 1.6.3 Using pg 0.17.1 Using raindrops 0.13.0 Using rails_serve_static_assets 0.0.2 Using rails_stdout_logging 0.0.3 Using sass 3.2.14 Using thread_safe 0.2.0 Using rack-test 0.6.2 Using treetop 1.4.15 Using coffee-script 2.2.0 Using sprockets 2.11.0 Using uglifier 2.4.0 Using rails_12factor 0.0.2 Using unicorn 4.8.2 Using rdoc 4.1.1 Using activesupport 4.0.3 Using sdoc 0.4.0 Using mail 2.5.4 Using actionpack 4.0.3 Using activemodel 4.0.3 Using jbuilder 1.5.3 Using actionmailer 4.0.3 Using railties 4.0.3 Using coffee-rails 4.0.1 Using sprockets-rails 2.0.1 Using jquery-rails 3.1.0 Using turbolinks 2.2.1 Using activerecord 4.0.3 Using sass-rails 4.0.1 Using rails 4.0.3 Your bundle is complete! Gems in the groups development and test were not installed. It was installed into ./vendor/bundle Bundle completed (1.64s) Cleaning up the bundler cache. -----> Writing config/database.yml to read from DATABASE_URL -----> Preparing app for Rails asset pipeline Running: rake assets:precomstack Asset precompilation completed (2.47s) Cleaning assets Running: rake assets:clean -----> Discovering process types Procfile declares types -> web Default process types for Ruby -> rake, console, web, worker -----> Releasing rails-sample ... -----> Deploying rails-sample ... -----> Checking status of PostgreSQL Found image postgresql/rails-sample database Checking status... ok. -----> Running pre-flight checks check-deploy: /home/dokku/rails-sample/CHECKS not found. attempting to resortingeve it from container ... CHECKS file not found in container. skipping checks. -----> Running post-deploy -----> Creating non-ssl nginx.conf -----> Running nginx-pre-reload Reloading nginx -----> Shutting down old container in 60 seconds =====> Application deployed: http://rails-sample.domain.com 
  6. Et enfin de retour au serveur, créé la firebase database et exécuter la migration de rake

    dokku postgresql: crée des rails-exemple docker run -i -t dokku / rails-sample / bin / bash export HOME = / app pour fichier dans /app/.profile.d/*; faire le fichier source $; done hash -r cd / app RAILS_ENV = rake de production db: migrer

Maintenant web, j’accède à rails-sample.domain.com ça ne fait rien. Sur Chrome, ERR_CONNECTION_REFUSED erreur ERR_CONNECTION_REFUSED .

Le domaine résout bien l’adresse IP du serveur. Il y a même un enregistrement A avec un joker sur le serveur.

Je n’ai pas vu ce genre d’erreur sur Google. Même avoir une idée où chercher ce qui pourrait être faux. Les journaux Dokku sont presque vides. Il n’y a que la partie de journal de départ:

 INFO -- : Refreshing Gem list INFO -- : listening on addr=0.0.0.0:5000 fd=9 INFO -- : master process ready INFO -- : worker=0 ready INFO -- : worker=1 ready INFO -- : worker=2 ready 

Donc, évidemment, il n’y a jamais eu d’access à l’application.

docker ps sortie:

 CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES ce2d9d46f769 dokku/rails-sample:latest "/bin/bash -c '/star About an hour ago Up About an hour 0.0.0.0:49156->5000/tcp dreamy_curie 89a111191b6a postgresql/rails-sample:latest "/usr/bin/start_pgsq About an hour ago Up About an hour 0.0.0.0:49154->5432/tcp focused_mayer 

Où puis-je jeter un coup d’œil pour voir ce qui ne va pas? J’ai fait le processus de création environ cinq fois (sur de nouvelles gouttelettes) et il y a toujours la même erreur, mais je n’arrive pas à comprendre ce qui ne va pas. C’est encore plus frustrant parce que la première fois, tout a bien fonctionné.

Merci.

MISE À JOUR Lorsque j’accède à domain.com:49158, l’application semble fonctionner correctement.

MISE À JOUR II La configuration du domaine semble donc aller bien. Il s’exécute également avec le sous-domaine mais seulement si un spécifie le port après lui. On dirait que le port 80 refuse les connexions. Mais ne sais pas comment. Les fichiers de configuration nginx semblent tout ok (ips / ports / hostnames / etc)