Bonjour ,
j'ai installé une box debian avec puphpet ,

ensuite j'ai fait un

gem install rails 

ensuite

apt-get install libmysql-dev 
gem install mysql2

et enfin j'ai crée mon projet

sudo rails new my-project -d mysql
cd my-project
sudo rails s

J'ai fait tout ça sans qu'aucune erreur apparaisse donc je pense que l'installation est correct :
cependant je ne peux pas accéder à local.dev:3000 , ça mouline et au bout d'un certain temps : page web innaccessible

dans la console j'ai :

Rails 4.2.0 application starting in development on http://localhost:3000

du coup j'ai essayé d'accéder aussi à localhost:3000 et pareil mais ça mouline même pas ça affiche direct une erreur ,

merci de votre aide

PS : mon local.dev fonctionne c'est pas un problème de fichier host

12 réponses


Pierre Ftn
Auteur
Réponse acceptée

C'est bon j'ai résolu le problème en installant en local avec le mysql de wamp , et j'ai la rails 4 et ruby 1.9.3 donc pas besoin de la 2.0

Bonjour,
Je vois que tu as la version 4.2.0 de Rails, depuis celle-ci le serveur local n'écoute que sur le port 127.0.0.1 (localhost) par défaut. Le problème est que la machine hôte, ne peux pas accéder au localhost de la machine virtuelle. Ce qu'il faut faire c'est de lancer le serveur rails en le "bindant" sur 0.0.0.0, à partir de ce moment là, tu pourras accéder au serveur rails sur la machine hôte.
Depuis la machine virtuelle lance le serveur rails avec:

rails s -b 0.0.0.0

le -b défini le binding, donc le serveur se lance sur 0.0.0.0, soit toutes les interfaces réseaux de la machine virtuelle.
J'espère que cela règle ton problème, j'ai eu le même récemment, par habitude je n'avais pas fait attention aux nouvelles configurations de rails.

J'ai fait ce que tu m'as dit , ruby me dit bien :

Rails 4.2.0 application starting in development on http://0.0.0.0:3000 

mais ça me met toujours pas innaccessible avec l'ip:3000 ou local.dev:3000

J'ai installé une version 1.9.3 de ruby avec rvm et même problème

Serait-il possible de poster les lignes concernant les réseaux du Vagrantfile?

Euh c'est générer avec puphpet donc y'a pas mal de truc ,
voici le config.yaml

---
vagrantfile-local:
    vm:
        box: puphpet/debian75-x64
        box_url: puphpet/debian75-x64
        hostname: ''
        memory: '512'
        cpus: '1'
        chosen_provider: virtualbox
        network:
            private_network: 192.168.56.101
            forwarded_port: {  }
        post_up_message: ''
        provider:
            virtualbox:
                modifyvm:
                    natdnshostresolver1: on
            vmware:
                numvcpus: 1
            parallels:
                cpus: 1
        provision:
            puppet:
                manifests_path: puphpet/puppet
                manifest_file: site.pp
                module_path: puphpet/puppet/modules
                options:
                    - '--verbose'
                    - '--hiera_config /vagrant/puphpet/puppet/hiera.yaml'
                    - '--parser future'
        synced_folder:
            Z9x0Mk3Nuipg:
                owner: www-data
                group: www-data
                source: 'D:/Sites'
                target: /var/www/local.dev
                sync_type: default
                rsync:
                    args:
                        - '--verbose'
                        - '--archive'
                        - '-z'
                    exclude:
                        - .vagrant/
                    auto: 'false'
        usable_port_range:
            start: 10200
            stop: 10500
    ssh:
        host: null
        port: null
        private_key_path: null
        username: vagrant
        guest_port: null
        keep_alive: true
        forward_agent: false
        forward_x11: false
        shell: 'bash -l'
    vagrant:
        host: detect
server:
    install: '1'
    packages: {  }
users_groups:
    install: '1'
    groups: {  }
    users: {  }
cron:
    install: '1'
    jobs: {  }
firewall:
    install: '1'
    rules: null
apache:
    install: '1'
    settings:
        user: www-data
        group: www-data
        default_vhost: true
        manage_user: false
        manage_group: false
        sendfile: 0
    modules:
        - rewrite
    vhosts:
        iynavybtzfa5:
            servername: local.dev
            serveraliases:
                - local.dev
            docroot: /var/www/local.dev
            port: '80'
            setenv:
                - 'APP_ENV dev'
            directories:
                d6grwcim6pu7:
                    provider: directory
                    path: /var/www/local.dev
                    options:
                        - Indexes
                        - FollowSymlinks
                        - MultiViews
                    allow_override:
                        - All
                    require:
                        - all
                        - granted
                    custom_fragment: ''
            engine: php
            custom_fragment: ''
            ssl_cert: ''
            ssl_key: ''
            ssl_chain: ''
            ssl_certs_dir: ''
    mod_pagespeed: 0
nginx:
    install: '0'
    settings:
        default_vhost: 1
        proxy_buffer_size: 128k
        proxy_buffers: '4 256k'
    upstreams: {  }
    vhosts:
        mdrttimx5kmj:
            proxy: ''
            server_name: awesome.dev
            server_aliases:
                - www.awesome.dev
            www_root: /var/www/awesome
            listen_port: '80'
            location: \.php$
            index_files:
                - index.html
                - index.htm
                - index.php
            envvars:
                - 'APP_ENV dev'
            engine: php
            client_max_body_size: 1m
            ssl_cert: ''
            ssl_key: ''
php:
    install: '1'
    version: '56'
    composer: '1'
    composer_home: ''
    modules:
        php:
            - cli
            - intl
            - mcrypt
        pear: {  }
        pecl:
            - pecl_http
    ini:
        display_errors: On
        error_reporting: '-1'
        session.save_path: /var/lib/php/session
    timezone: Europe/Paris
    mod_php: '1'
hhvm:
    install: '0'
    nightly: 0
    composer: '1'
    composer_home: ''
    settings:
        host: 127.0.0.1
        port: '9000'
    ini:
        display_errors: On
        error_reporting: '-1'
    timezone: null
xdebug:
    install: '1'
    settings:
        xdebug.default_enable: '1'
        xdebug.remote_autostart: '0'
        xdebug.remote_connect_back: '1'
        xdebug.remote_enable: '1'
        xdebug.remote_handler: dbgp
        xdebug.remote_port: '9000'
xhprof:
    install: '0'
wpcli:
    install: '0'
    version: v0.17.1
drush:
    install: '0'
    version: 6.3.0
ruby:
    install: '1'
    versions:
        25iBX0gy89SY:
            default: '1'
            version: 2.1.2
            bundler: '0'
nodejs:
    install: '0'
    npm_packages: {  }
python:
    install: '1'
    packages: {  }
    versions:
        0x3wANQcdqMw:
            version: ''
mysql:
    install: '1'
    override_options: {  }
    root_password: root
    adminer: 0
    databases: {  }
postgresql:
    install: '0'
    settings:
        root_password: '123'
        user_group: postgres
        encoding: UTF8
        version: '9.3'
    databases: {  }
    adminer: 0
mariadb:
    install: '0'
    override_options: {  }
    root_password: '123'
    adminer: 0
    databases: {  }
    version: '10.0'
sqlite:
    install: '0'
    adminer: 0
    databases: {  }
mongodb:
    install: '0'
    settings:
        auth: 1
        port: '27017'
    databases: {  }
redis:
    install: '0'
    settings:
        conf_port: '6379'
mailcatcher:
    install: '1'
    settings:
        smtp_ip: 0.0.0.0
        smtp_port: 1025
        http_ip: 0.0.0.0
        http_port: '1080'
        mailcatcher_path: /usr/local/rvm/wrappers/default
        from_email_method: inline
beanstalkd:
    install: '0'
    settings:
        listenaddress: 0.0.0.0
        listenport: '13000'
        maxjobsize: '65535'
        maxconnections: '1024'
        binlogdir: /var/lib/beanstalkd/binlog
        binlogfsync: null
        binlogsize: '10485760'
    beanstalk_console: 0
    binlogdir: /var/lib/beanstalkd/binlog
rabbitmq:
    install: '0'
    settings:
        port: '5672'
elastic_search:
    install: '0'
    settings:
        version: 1.4.1
        java_install: true
solr:
    install: '0'
    settings:
        version: 4.10.2
        port: '8984'

D'après le config.yaml, tout à l'air normal, je ne vois pas ce qui pourrait causer le problème, je vais voir si j'ai le même résultat de mon côté. Je dois dire que je suis un peu à cours d'idée.

je vais recommencer une installation depuis le début pour voir si ça fonctionne , et avec ruby 1.9.3

J'ai essayé pas mal de possibles solutions, mais rien n'a faire, je n'arrive pas à le résoudre. Cependant, Puphpet installe rvm et ruby en tant que super utilisateur, ce qui n'est pas recommandé, je ne pense pas que le problème soit du à ça, mais je te conseil d'installer la VM autrement pour le moment, si tu le souhaites, j'ai un Vagrantfile tout près pour le dev Ruby on Rails, qui, n'a pas ce soucis de réseaux. Je vais encore chercher une solution, mais je suis à cours d'idée pour le moment.

ok merci pour ton aide , si tu pouvais partager le vagrantfile ça serait volontier , merci d'avoir donner de ton temps

De rien, ça ma motivé à paufiner mon Vagrantfile, tout est là https://github.com/jeremymichel/vagrant-rails , bien lire les instructions.
J'espère que cela fonctionnera sans trop de problèmes.

Le local.dev tu dois le définir dans ton fichier host nan ? tu as essayé d'accéder à localhost/local.dev ?