【发布时间】:2016-01-20 03:52:13
【问题描述】:
我正在关注 https://semaphoreci.com/community/tutorials/dockerizing-a-ruby-on-rails-application 从 rails docker 映像创建示例 rails 应用程序。想法是将铁路应用程序码头化。我在 Rails 应用程序根目录中创建了一个 .drkiq.env 文件,采用 docker 推荐的 KEY=value 格式,如下所示
SECRET_TOKEN=asecuretokenwouldnormallygohere
WORKER_PROCESSES=1
LISTEN_ON=0.0.0.0:8000
DATABASE_URL=postgresql://drkiq:yourpassword@postgres:5432/drkiq?encoding=utf8&pool=5&timeout=5000
CACHE_URL=redis://redis:6379/0
JOB_WORKER_URL=redis://redis:6379/0
我正在从我的 docker=compose.yml 文件(也位于应用根目录中)读取环境文件
postgres:
image: postgres:9.4.5
environment:
POSTGRES_USER: drkiq
POSTGRES_PASSWORD: yourpassword
ports:
- '5432:5432'
volumes:
- drkiq-postgres:/var/lib/postgresql/data
redis:
image: redis:3.0.5
ports:
- '6379:6379'
volumes:
- drkiq-redis:/var/lib/redis/data
drkiq:
build: .
links:
- postgres
- redis
volumes:
- .:/drkiq
ports:
- '8000:8000'
env_file:
- .drkiq.env
sidekiq:
build: .
command: bundle exec sidekiq -C config/sidekiq.yml
links:
- postgres
- redis
volumes:
- .:/drkiq
env_file:
- .drkiq.env
在我的 Dockerfile(位于应用根目录)中,我正在运行独角兽服务器
CMD bundle exec unicorn -c config/unicorn.rb
但是当我运行命令时
docker-compose up
并访问http://my-host:8000/ 它给了我“RuntimeError at /
缺少 secret_token 和 secret_key_base 用于“开发”环境,在 config/secrets.yml" 错误中设置这些值。我不确定我在这里缺少什么。
【问题讨论】:
标签: ruby-on-rails docker