我正在切换到在Docker场景中而不是在Vagrant场景中开发应用程序。
我已经配置了Docker等文件和docker-compose文件,它们都可以运行,但是当我在诸如docker-compose run app rake db:create
之类的容器中运行命令时,要花一些时间才能运行。至少在我看到任何输出之前整整两分钟,它确实可以成功运行命令,但是要花一些时间才能看到输出之前没有做任何事情。
我不知道它会做什么或阻碍了什么。因此,我不确定要在此处发布哪些文件,以帮助人们了解正在发生的事情。
如果您有任何想法或希望我发布代码或特定文件,请告诉我,我会在此处添加它们。
这真的很令人沮丧,希望对此进行分类,以便我继续构建自己的应用。
docker-compose.yml:
version: '3.4'
services:
app:
build:
context: .
dockerfile: Dockerfile
ports:
- 3000:3000
environment:
- PG_PASSWORD=secret
- PG_HOST=pg
- PG_PORT=5432
volumes:
- ./:/app
depends_on:
- db
db:
image: postgres:9.6-alpine
volumes:
- pg-data:/var/lib/postgresql/data
environment:
- PG_PASSWORD=secret
volumes:
pg-data:
很奇怪,我启动了容器,而该应用程序在两到三分钟内什么也没做。最终,我开始像这样得到输出:
app_1 | => Booting Puma
app_1 | => Rails 5.2.1 application starting in development
app_1 | => Run `rails server -h` for more startup options
app_1 | Puma starting in single mode...
app_1 | * Version 3.12.0 (ruby 2.5.1-p57), codename: Llamas in Pajamas
app_1 | * Min threads: 5, max threads: 5
app_1 | * Environment: development
app_1 | * Listening on tcp://0.0.0.0:3000
app_1 | Use Ctrl-C to stop
我刚刚从config
目录中删除了所有内容并重新加载了该应用程序,然后一次又一次地添加它抱怨的每个文件。它开始抱怨environment.rb
丢失了,我读了一下,因为它要花很多时间,延迟才开始。我已经签到environment.rb
,里面只有:
# Load the rails application
require_relative 'application'
# Initialize the rails application
Neiltongesite::Application.initialize!
我现在应该在哪里寻找这个延迟?
我想知道的是这段时间在做什么?有没有办法获得更多输出?