在 docker-compose 中配置时,如何在后台制作 MySQL 容器 运行

How to make MySQL container run in the background when configured in docker-compose

我在下面创建了 docker-compose.yml 文件,以创建一个基于 Ruby 图像的容器和一个基于 MySQL 图像的容器。当我执行 docker-compose up 时,MySQL 容器似乎已正确创建,但它不是 运行 在后台。如何使用 docker-compose.yml 文件对其进行配置?

version: '2'

services:
  web:
    build: 
      context: .
      dockerfile: .docker/rails.dockerfile
    volumes: 
      - .:/var/www
    ports: 
      - "3000:3000"
    depends_on:
      - 'mysql'
    networks:
      - ddoc-network


  mysql:
    image: mysql
    environment: 
      MYSQL_ROOT_PASSWORD: 'SOMETHING'
    networks:
      - ddoc-network


networks:
  ddoc-network:
    driver: bridge

rails.dockerfile

FROM ruby:2.3.1

MAINTAINER Juliano Nunes

RUN apt-get update -qq && apt-get install -y build-essential mysql-client libmysqlclient-dev nodejs
RUN mkdir /var/www
WORKDIR /var/www

ADD Gemfile /var/www/Gemfile
ADD Gemfile.lock /var/www/Gemfile.lock
RUN bundle install
ADD . /var/www

CMD ['bundle', 'exec', 'rails', 'server', '-b', '0.0.0.0']

您始终可以在分离模式下使用 docker-compose up -d 来 运行 您的容器。

查看 docker-compose up --help 了解更多信息。