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