29 lines
965 B
Docker
29 lines
965 B
Docker
# Ruby stack overlay fragment.
|
|
#
|
|
# Layer this on top of huskies-project-base to produce a project container
|
|
# with Ruby, Bundler, and ruby-lsp (the Shopify Ruby language server).
|
|
#
|
|
# Build the combined image:
|
|
# (echo "FROM huskies-project-base"; \
|
|
# cat docker/stacks/ruby/Dockerfile.fragment) | \
|
|
# docker build -t huskies-project-ruby -
|
|
#
|
|
# Adding a new stack: create docker/stacks/<name>/Dockerfile.fragment and
|
|
# docker/stacks/<name>/markers — no changes to orchestration code required.
|
|
|
|
USER root
|
|
|
|
# Ruby runtime, development headers (needed by native gem extensions), and Bundler.
|
|
RUN apt-get update && apt-get install -y --no-install-recommends \
|
|
ruby \
|
|
ruby-dev \
|
|
bundler \
|
|
build-essential \
|
|
&& rm -rf /var/lib/apt/lists/*
|
|
|
|
# ruby-lsp: Shopify's Ruby language server (LSP-compliant, actively maintained).
|
|
# Installed globally so the `ruby-lsp` binary is available on PATH.
|
|
RUN gem install ruby-lsp
|
|
|
|
USER huskies
|