배포할 수 없습니다! heroku에 푸시 할 수없는 오류 해결 (Rails 튜토리얼 1 장)
3436 단어 Rails5Rails 튜토리얼Heroku루비deploy
하드는 MacBook Air, 개발 환경은 VScode를 사용하고 있습니다.
Rails 튜토리얼 1장 1.5 배포하기
"좋아 배포할거야! GitHub에 푸시하는 방법과 비슷한 조!"
「이것이라면 할 수 있다!!!!!!!」
$ heroku login
$ git init
$ heroku git:remote -a アプリの名前
$ git add .
$ git commit -am "first commit"
$ git push heroku master
결과
$ git push heroku master
~省略~
remote: Gem::Ext::BuildError: ERROR: Failed to build gem native extension.
~省略~
remote: Could not create Makefile due to some reason, probably lack of necessary
~省略~
remote: An error occurred while installing sqlite3 (1.4.2), and Bundler cannot continue.
~省略~
remote: !
remote: ! Failed to install gems via Bundler.
remote: ! Detected sqlite3 gem which is not supported on Heroku:
remote: ! https://devcenter.heroku.com/articles/sqlite3
remote: !
remote: ! Push rejected, failed to compile Ruby app.
remote:
remote: ! Push failed
remote: Verifying deploy...
remote:
remote: ! Push rejected to tutorial-app-20200717.
remote:
To https://git.heroku.com/アプリ名.git
! [remote rejected] master -> master (pre-receive hook declined)
error: failed to push some refs to 'https://git.heroku.com/アプリ名.git'
그리고 머리를 안고 있습니다.
git에 푸시 한 후 heroku에 배포합니다! 그리고 그대로 돌진한 사람이 빠지는 오류입니다.
이 오류는 Heroku가 SQLite를 지원하지 않기 때문에 발생합니다.
그래서 데이터베이스를 PostgreSQL로 변경합니다.
"좋아! 해결 방법을 알았으니까 해 갈게!"라고, 1.5.1 Heroku 설정 이나, 초보자입니다. Heroku에서 build에 계속 실패합니다. .
위 사이트의 방법을 시도해도 쓸모가 없었던 사람은 처음부터 다시 만들게 됩니다만, 최종 수단으로서 다음의 방법을 시도해 보세요.
해결 방법
rails new 단계에서 데이터베이스를 PostgreSQL로 지정!
다시 한번부터 다시 시작하는 해결책이되므로 양해 바랍니다 ...
「괜찮아 모두라면 할 수 있어!」
빨리 가자.
변경 전$ rails _5.1.6_ new アプリ名
변경 후$ rails _5.1.6_ new アプリ名 --database=postgresql
이렇게 하면 처음부터 PostgreSQL이 지정된 rails 프레임워크가 생성됩니다.
그리고는, 지금까지와 같은 순서로 진행해 괜찮습니다. 일단 설정이 끝나면, heroku에 push 해 보세요.
여기까지 하면 heroku에 문제없이 배포할 수 있게 됩니다.
도움이 되면 꼭 LGTM 버튼을 확실히 눌러 주시면 기쁩니다.
함께 Rails 학습 노력하자!
덧붙여서, rails의 버전 지정을 하지 않고, rails6로 이 조작을 실행하면(자), 다음과 같은 에러가 발생합니다.
$ rails s
를 실행하고 localhost:3000 에 액세스해보십시오.
빨간색 오류 화면에 다음과 유사한 오류 문이 표시됩니다.
FATAL: database "앱 이름"does not exist
ActiveRecord::NoDatabaseError
이 경우의 해결 방법은 여기에 정리했습니다.
rails6에서 ActiveRecord::NoDatabaseError 해결
Reference
이 문제에 관하여(배포할 수 없습니다! heroku에 푸시 할 수없는 오류 해결 (Rails 튜토리얼 1 장)), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/gogo_tomoya/items/e77e200ec6e526076764
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
$ heroku login
$ git init
$ heroku git:remote -a アプリの名前
$ git add .
$ git commit -am "first commit"
$ git push heroku master
$ git push heroku master
~省略~
remote: Gem::Ext::BuildError: ERROR: Failed to build gem native extension.
~省略~
remote: Could not create Makefile due to some reason, probably lack of necessary
~省略~
remote: An error occurred while installing sqlite3 (1.4.2), and Bundler cannot continue.
~省略~
remote: !
remote: ! Failed to install gems via Bundler.
remote: ! Detected sqlite3 gem which is not supported on Heroku:
remote: ! https://devcenter.heroku.com/articles/sqlite3
remote: !
remote: ! Push rejected, failed to compile Ruby app.
remote:
remote: ! Push failed
remote: Verifying deploy...
remote:
remote: ! Push rejected to tutorial-app-20200717.
remote:
To https://git.heroku.com/アプリ名.git
! [remote rejected] master -> master (pre-receive hook declined)
error: failed to push some refs to 'https://git.heroku.com/アプリ名.git'
rails new 단계에서 데이터베이스를 PostgreSQL로 지정!
다시 한번부터 다시 시작하는 해결책이되므로 양해 바랍니다 ...
「괜찮아 모두라면 할 수 있어!」
빨리 가자.
변경 전
$ rails _5.1.6_ new アプリ名
변경 후
$ rails _5.1.6_ new アプリ名 --database=postgresql
이렇게 하면 처음부터 PostgreSQL이 지정된 rails 프레임워크가 생성됩니다.
그리고는, 지금까지와 같은 순서로 진행해 괜찮습니다. 일단 설정이 끝나면, heroku에 push 해 보세요.
여기까지 하면 heroku에 문제없이 배포할 수 있게 됩니다.
도움이 되면 꼭 LGTM 버튼을 확실히 눌러 주시면 기쁩니다.
함께 Rails 학습 노력하자!
덧붙여서, rails의 버전 지정을 하지 않고, rails6로 이 조작을 실행하면(자), 다음과 같은 에러가 발생합니다.
$ rails s
를 실행하고 localhost:3000 에 액세스해보십시오.
빨간색 오류 화면에 다음과 유사한 오류 문이 표시됩니다.
FATAL: database "앱 이름"does not exist
ActiveRecord::NoDatabaseError
이 경우의 해결 방법은 여기에 정리했습니다.
rails6에서 ActiveRecord::NoDatabaseError 해결
Reference
이 문제에 관하여(배포할 수 없습니다! heroku에 푸시 할 수없는 오류 해결 (Rails 튜토리얼 1 장)), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/gogo_tomoya/items/e77e200ec6e526076764텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)