Docker + Rails + Postgres + Heroku UPまで
まずはこちらの記事を参照させていただきました。
書かれているとおりに進めて、
$ docker-compose up
をしたところでこんなエラーが出ます:
db_1 | Error: Database is uninitialized and superuser password is not specified. db_1 | You must specify POSTGRES_PASSWORD to a non-empty value for the db_1 | superuser. For example, "-e POSTGRES_PASSWORD=password" on "docker run". db_1 | db_1 | You may also use "POSTGRES_HOST_AUTH_METHOD=trust" to allow all db_1 | connections without a password. This is *not* recommended. db_1 | db_1 | See PostgreSQL documentation about "trust": db_1 | https://www.postgresql.org/docs/current/auth-trust.html
docker-compose.ymlのdbの箇所を下記のように書き換えました:
services: db: image: postgres environment: POSTGRES_HOST_AUTH_METHOD: 'trust'
参照記事:
PostgresのDockerImageに変更があって起動ができなくなった話 - Qiita
今度はlocalhostで立ち上げると、 FATAL: database "myapp_development" does not exist というエラーが出ます。
データベースが無いのか、ということで
$ docker-compose run web rails db:create $ docker-compose up
をしたところ、無事ローカルでアプリケーションが起動しました。
その後、元の参照記事に従いHerokuへデプロイを試しましたが、まだ何も作っていないからなのか
$ heroku container:release web $ heroku open
をしても確認できるのはHerokuの画面のみですね。これで良いのだろうか・・?