Browse Source

changed to run foreman with vagrant (#2742)

* changed to run foreman with vagrant

* change port specification method and database setting

* delete changes of environment variable related code

* hard coated the port
abcang 7 years ago
parent
commit
bea117a4b6
2 changed files with 14 additions and 12 deletions
  1. 3 3
      Procfile.dev
  2. 11 9
      Vagrantfile

+ 3 - 3
Procfile.dev

@@ -1,3 +1,3 @@
-web: bundle exec puma -C config/puma.rb
-stream: yarn run start
-webpack: ./bin/webpack-dev-server
+web: PORT=3000 bundle exec puma -C config/puma.rb
+stream: PORT=4000 yarn run start
+webpack: ./bin/webpack-dev-server --host 0.0.0.0

+ 11 - 9
Vagrantfile

@@ -38,7 +38,6 @@ sudo apt-get install \
   -y
 
 # Install rvm
-cd /vagrant
 read RUBY_VERSION < .ruby-version
 gpg --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3
 curl -sSL https://get.rvm.io | bash -s stable --ruby=$RUBY_VERSION
@@ -49,22 +48,23 @@ sudo -u postgres createuser -U postgres vagrant -s
 sudo -u postgres createdb -U postgres mastodon_development
 
 # Install gems and node modules
-gem install bundler
+gem install bundler foreman
 bundle install
 yarn install
 
 # Build Mastodon
 export $(cat ".env.vagrant" | xargs)
 bundle exec rails db:setup
-bundle exec rails assets:precompile
+
+# Configure automatic loading of environment variable
+echo 'export $(cat "/vagrant/.env.vagrant" | xargs)' >> ~/.bash_profile
 
 SCRIPT
 
 $start = <<SCRIPT
 
-cd /vagrant
-export $(cat ".env.vagrant" | xargs)
-rails s -d -b 0.0.0.0 -p #{ENV["PORT"]}
+echo 'To start server'
+echo '  $ vagrant ssh -c "cd /vagrant && foreman start"'
 
 SCRIPT
 
@@ -76,7 +76,7 @@ Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
 
   config.vm.provider :virtualbox do |vb|
     vb.name = "mastodon"
-    vb.customize ["modifyvm", :id, "--memory", "1024"]
+    vb.customize ["modifyvm", :id, "--memory", "2048"]
 
     # Disable VirtualBox DNS proxy to skip long-delay IPv6 resolutions.
     # https://github.com/mitchellh/vagrant/issues/1172
@@ -106,8 +106,10 @@ Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
     config.vm.synced_folder ".", "/vagrant"
   end
 
-  # Otherwise, you can access the site at http://localhost:3000
-  config.vm.network :forwarded_port, guest: 80, host: ENV["PORT"]
+  # Otherwise, you can access the site at http://localhost:3000 and http://localhost:4000 , http://localhost:8080
+  config.vm.network :forwarded_port, guest: 3000, host: 3000
+  config.vm.network :forwarded_port, guest: 4000, host: 4000
+  config.vm.network :forwarded_port, guest: 8080, host: 8080
 
   # Full provisioning script, only runs on first 'vagrant up' or with 'vagrant provision'
   config.vm.provision :shell, inline: $provision, privileged: false