摘要:最近在用跑,也遇到了一些坑,這里記錄一下。首先項目然后就開始報錯了這里報錯是說找不到文件,但我本地運行是沒問題的。同樣的,還需要把用戶名修改成和鏡像預(yù)定的一致。打開最新生成的文件。本人菜鳥一枚,如有錯誤之處,敬請指正,謝謝
最近在用docker跑rails,也遇到了一些坑,這里記錄一下。
首先build項目:
docker-compose build
然后就開始報錯了:
psql: could not connect to server: No such file or directory
Is the server running locally and accepting
connections on Unix domain socket "/var/run/postgresql/.s.PGSQL.5432"?
這里報錯是說找不到 /var/run/postgresql/.s.PGSQL.5432 文件,但我本地運行是沒問題的。于是去找docker從入門到實踐這本書的docker rails 例子, 地址在這里:https://yeasy.gitbooks.io/doc...,發(fā)現(xiàn)我的database.yml文件不對。我的是這樣的:
default: &default adapter: postgresql encoding: unicode`請輸入代碼` # For details on connection pooling, see Rails configuration guide # http://guides.rubyonrails.org/configuring.html#database-pooling pool: <%= ENV.fetch("RAILS_MAX_THREADS") { 5 } %>
Rails 默認讀取的數(shù)據(jù)庫目標(biāo)是 localhost ,我們需要手動指定容器的 db 。同樣的,還需要把用戶名修改成和 postgres 鏡像預(yù)定的一致。 打開最新生成的 database.yml 文件。用以下內(nèi)容替換:
default: &default adapter: postgresql encoding: unicode # For details on connection pooling, see Rails configuration guide # http://guides.rubyonrails.org/configuring.html#database-pooling pool: <%= ENV.fetch("RAILS_MAX_THREADS") { 5 } %> username: postgres host: db
這樣再運行docker-compose build,成功build! 然后再跑起來docker-compose up,悲劇的又報錯了:
ActiveRecord::NoDatabaseError (FATAL: database "heroku_app_development" does not exist
提示沒有創(chuàng)建heroku_app_development數(shù)據(jù)庫,OK,那就創(chuàng)建一個:
sudo docker ps #列出所有容器
sudo docker exec -it [container ID] /bin/bash #進入postgres
sudo su - postgres #切換到postgres用戶,因為這個用戶有createdb權(quán)限
ceratedb heroku_app_development #heroku_app_development 創(chuàng)建完成!
再運行docker-compose up,又報錯:
Migrations are pending. To resolve this issue, run:
bin/rails db:migrate RAILS_ENV=development
railser應(yīng)該很熟悉,數(shù)據(jù)庫遷移,進入web容器:
sudo docker exec -it [container ID] /bin/bash #進入web容器
rails db:migrate #遷移成功!
至此,程序可以在docker上跑起來了。本人菜鳥一枚,如有錯誤之處,敬請指正,謝謝!
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/27155.html
摘要:最近研究基于的開源框架,其中構(gòu)建需要使用插件。為例,安裝以下包即可系列則請安裝初次安裝后,默認生成一個名為的數(shù)據(jù)庫和一個名為的數(shù)據(jù)庫用戶。注意,不要往這個數(shù)據(jù)庫中添加數(shù)據(jù),這個數(shù)據(jù)庫之所以稱為模板,就說明它是用來派生用的。 最近研究基于 GeoServer 的開源 GIS 框架,其中構(gòu)建 GIS database 需要使用 PostgreSQL + PostGIS 插件。花了些時間學(xué)習(xí)...
摘要:最近研究基于的開源框架,其中構(gòu)建需要使用插件。為例,安裝以下包即可系列則請安裝初次安裝后,默認生成一個名為的數(shù)據(jù)庫和一個名為的數(shù)據(jù)庫用戶。注意,不要往這個數(shù)據(jù)庫中添加數(shù)據(jù),這個數(shù)據(jù)庫之所以稱為模板,就說明它是用來派生用的。 最近研究基于 GeoServer 的開源 GIS 框架,其中構(gòu)建 GIS database 需要使用 PostgreSQL + PostGIS 插件。花了些時間學(xué)習(xí)...
摘要:問題現(xiàn)象最近兩個月碰到三次,莫名的無法連接的情況,具體錯誤信息如下前兩次,自己瞎鼓搗,后面就好了,然后也沒在意。然后今天早上死機重啟后,這個問題又出現(xiàn)了,然后各種重裝重啟系統(tǒng)依然無解。最后,終于啟動了。 問題現(xiàn)象 最近兩個月碰到三次,莫名的 PG (PostgreSQL) 無法連接的情況,具體錯誤信息如下: psql: could not connect to server: No s...
閱讀 2992·2021-11-25 09:43
閱讀 3639·2021-08-31 09:41
閱讀 1251·2019-08-30 15:56
閱讀 2139·2019-08-30 15:55
閱讀 3002·2019-08-30 13:48
閱讀 2822·2019-08-29 15:15
閱讀 992·2019-08-29 15:14
閱讀 2663·2019-08-28 18:26