逆引きマニュアル: DockerでRubyを使う方法

投稿日: 更新日:

やりたいこと

Docker上でRubyを使う方法です。

概要

公式のリポジトリを使います。

手順

以下のようにしてください。 LANGを設定しないと、US-ASCII以外が使えません。

FROM ruby:2.5

ENV LANG C.UTF-8

WEBrickによるWebサーバ

Ruby 標準ライブラリの WEBrick で Web サーバを作る - Qiitaを参考にしました。

#!/usr/bin/ruby

require 'webrick'
require 'cgi'

s = WEBrick::HTTPServer.new(
  :Port => 8000,
  :HTTPVersion => WEBrick::HTTPVersion.new('1.1')
)

s.mount_proc('/') do |req, res|
  res.status = 200
  res['Content-Type'] = 'text/plain'
  res.body = Time.now.to_s
end

Signal.trap('INT'){s.shutdown}
s.start
FROM ruby:2.5

COPY now.rb /opt
EXPOSE 8000
CMD ["ruby", "/opt/now.rb"]

備考

マニュアル