zoukankan      html  css  js  c++  java
  • docker-compose运行Rails

    1.新建空目录,名字可以叫Rails

    2.新建Dockerfile并添加如下内容

    FROM ruby:2.5
    RUN apt-get update -qq && apt-get install -y build-essential libpq-dev nodejs
    RUN mkdir /myapp
    WORKDIR /myapp
    COPY Gemfile /myapp/Gemfile
    COPY Gemfile.lock /myapp/Gemfile.lock
    RUN bundle install
    COPY . /myapp

    3.新建Gemfile并添加如下内容

    source ‘https://rubygems.org‘
    gem ‘rails‘, ‘5.2.0‘

    4.创建一个空Gemfile.lock来构建我们的Dockerfile

     touch Gemfile.lock

    5.编写docker-compose.yml

    version: “3”
    services:
      db:
        image: postgres
        volumes:
          - ./tmp/db:/var/lib/postgresql/data
      web:
        build: .
        command: bundle exec rails s -p 3000 -b ‘0.0.0.0‘
        volumes:
          - .:/myapp
        ports:
          - "3000:3000"
        depends_on:
          - db

    6.有了上面这四个文件,现在可以使用docker-compose run生成Rails骨架应用程序

    docker-compose run web rails new . --fordatabase=postgresql

    7.授权

    sudo chown -R $USER:$USER .

    8.构建

    docker-compose build

    9.用以下内容替换内容config/database.yml

    default: &default
      adapter: postgresql
      encoding: unicode
      host: db
      username: postgres
      password:
      pool: 5
    
    development:
      <<: *default
      database: myapp_development
    
    
    test:
      <<: *default
      database: myapp_test

    10.启动应用程序

    docker-compose up

    控制台输出:

    技术分享图片

    11.浏览器输入:http://IP:3000/回车 出现如下界面表示成功

    技术分享图片

    12.最后,您需要创建数据库。在另一个终端中,运行

    docker-compose run web rake db:create

    控制台输出:

    技术分享图片

    转换为utf-8   

  • 相关阅读:
    CSS常用原子类base.css
    前端开发规范集锦
    C#(.NET) HMAC SHA256实现
    windows200364位iis6 php环境搭建
    MSSQL数据库分页存储过程
    C#动态调用webservice
    SQL语句之备份表
    双网卡内外网同时使用的方法
    SQL2008 提示评估期已过的解决方法
    时间服务器设置局域网时间同步
  • 原文地址:https://www.cnblogs.com/kofsony/p/11512775.html
Copyright © 2011-2022 走看看