作者k6416337 (愛花我的嫁)
看板Ruby
標題[RoR ] 佈署到heroku發生錯誤
時間Fri Nov 22 23:18:00 2013
這幾天做了個縮網址的網站當第一次的作品,想要佈署到heroku上
我是按照OpenFoundry裡的佈署教學作的,不過到了git push heroku master出錯
在這之前,我有在rails的資料夾裡作本地端的repository並git commit
部份錯誤訊息如下:
-------------------------------錯誤訊息-----------------------------------
An error occurred while installing sqlite3 (1.3.8), and Bundler cannot continue.
Make sure that `gem install sqlite3 -v '1.3.8'` succeeds before bundling.
!
! Failed to install gems via Bundler.
!
! Detected sqlite3 gem which is not supported on Heroku.
!
https://devcenter.heroku.com/articles/sqlite3
!
! Push rejected, failed to compile Ruby app
To
[email protected]:anyshort.git
! [remote rejected] master -> master (pre-receive hook declined)
---------------------------------------------------------------------------
下面是我試著修正的步驟:
1. 按照第二行,嘗試gem install sqlite3 -v '1.3.8',然後git push
-> 錯誤訊息一樣,失敗
2.google第一行錯誤訊息,在stackoverflow找到有人提供解法為在Gemfile裡新增
group :production do
gem 'pg'
end
group :development, :test do
gem 'sqlite3'
end
新增完存檔,bundle install,最後在git push --> 錯誤訊息一樣,失敗
3.嘗試先gem install pg,安裝成功後bundle install --> 失敗
4.google找到說要先sudo apt-get install libpq-dev,安裝成功。再來gem install pg
成功。bundle install成功。最後git push --> 錯誤訊息一樣,失敗
5.試著將Gemfile裡的gem 'sqlite3'刪掉再git push --> 錯誤訊息一樣,失敗
作到這邊我已經不知道該怎麼解決了,所以來這版想問問版友,有沒有解決方法,謝謝
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 123.195.5.93
1F:→ hSATAC:你存檔完有記得 commit 進 git 再 push 嗎? 11/23 00:03
2F:→ k6416337:我沒有每次都commit 明天試完再來說結果 11/23 00:12
3F:→ hSATAC:你沒 commit 進去 push heroku 不會有改變的... 11/23 00:12
4F:→ k6416337:謝謝 果然是commit問題 已解決 11/23 22:34
5F:推 rexkimta:其實你在本機端安裝gem,就算commit push,是不會影響 11/24 15:32
6F:→ rexkimta:heroku上會裝什麼gem的,heroku是看你的Gemfile裝gem 11/24 15:34
7F:→ rexkimta:所以如果你有記得commit的話,光用第2步就能解決了。 11/24 15:36
8F:推 sdlong:因為 Heroku是用PostgreSQL 所以要安裝pg 這個gem 12/19 20:14
9F:→ sdlong:而pg 要安裝必須先裝好 PostgreSQL 請輸入: 12/19 20:14
10F:→ sdlong:brew install postgresql (如果沒裝HomeBrew 請到本人blog) 12/19 20:15
12F:→ sdlong:安裝好 PostgreSQL以後再 gem install pg 就成功了 12/19 20:17
13F:→ hSATAC:group production pg, local 是可以不用裝 pg 的唷 12/28 11:28