【发布时间】:2018-02-14 06:37:42
【问题描述】:
我已将我的 rails 应用程序转移到 docker。除了 rails delay_job 之外,一切都运行良好。我已经使用delayed_job 发送电子邮件。我已经通过命令docker-compose run web rake jobs:work 开始了我的工作,它已成功启动,如图所示。
现在,当我尝试在控制台中发送电子邮件时,它显示电子邮件已启动,如上图所示。
我是否必须在 docker-compose.yml 或 Dockerfile 中包含任何行。
我的 Dockerfile 是:
FROM ruby:2.3.6
RUN mkdir -p /railsapp
WORKDIR /railsapp
RUN apt-get update && apt-get install -y nodejs --no-install-recommends
RUN apt-get update && apt-get install -y mysql-client --no-install-recommends
COPY Gemfile /railsapp/
COPY Gemfile.lock /railsapp/
RUN bundle install
COPY . /railsapp
EXPOSE 3000
CMD ["rails", "server", "-b", "0.0.0.0"]
我的 docker-compose.yml 是:
version: '3.3'
services:
mysql:
image: mysql
restart: always
ports:
- "3002:3002"
volumes:
- /var/lib/mysql
environment:
- MYSQL_ROOT_PASSWORD=root
- MYSQL_DATABASE=dev
web:
build: .
environment:
- RAILS_ENV=development
ports:
- '3000:3000'
volumes:
- .:/railsapp
links:
- "mysql"
depends_on:
- mysql
我对 docker 完全陌生。
【问题讨论】:
标签: ruby-on-rails docker docker-compose dockerfile delayed-job