Skip to content

Errno::ESPIPE Illegal seek -- Docker container errrors #2034

@andrewsheelan

Description

@andrewsheelan

Am trying to truffleruby convert - my dockerized rails enviroment

Here's my new Dockerfile with verbose enabled:

Dockerfile

# Builder image which needs dev tools to run post_install_hook.sh
FROM oraclelinux:7-slim AS builder

ARG GRAALVM_VERSION=20.1.0
ARG TRUFFLERUBY_PKG=https://github.com/oracle/truffleruby/releases/download/vm-$GRAALVM_VERSION/truffleruby-$GRAALVM_VERSION-linux-amd64.tar.gz

RUN curl -sL https://rpm.nodesource.com/setup_10.x | bash -
RUN yum update -y oraclelinux-release-el7 \
    && yum install -y curl tar gzip zlib openssl-devel gcc make git postgresql-devel icu libicu-devel nodejs\
    && rm -rf /var/cache/yum

RUN curl --fail --location --retry 3 ${TRUFFLERUBY_PKG} | tar xz -C /opt

ENV LANG=en_US.UTF-8 \
    PATH=/opt/truffleruby-$GRAALVM_VERSION-linux-amd64/bin:$PATH

RUN /opt/truffleruby-$GRAALVM_VERSION-linux-amd64/lib/truffle/post_install_hook.sh

# TODO: add commands to install gems here
RUN gem install bundler:2.1.4

COPY Gemfile Gemfile.lock ./
RUN bundle install --verbose --no-cache
# Resulting slim image without dev tools
FROM oraclelinux:7-slim

ARG GRAALVM_VERSION=20.1.0

RUN yum update -y oraclelinux-release-el7 \
    && yum install -y zlib openssl git  nodejs postgresql-dev git icu-dev\
    && rm -rf /var/cache/yum

COPY --from=builder /opt/truffleruby-$GRAALVM_VERSION-linux-amd64 /opt/truffleruby-$GRAALVM_VERSION-linux-amd64

ENV LANG=en_US.UTF-8 \
    PATH=/opt/truffleruby-$GRAALVM_VERSION-linux-amd64/bin:$PATH

WORKDIR /app

COPY . .

RUN echo "gem: --no-document" > ~/.gemrc

CMD puma -C config/puma.rb

Here's the error am receiving:

Retrying fetcher due to error (2/4): Errno::ESPIPE Illegal seek
Retrying fetcher due to error (3/4): Errno::ESPIPE Illegal seek
Retrying fetcher due to error (4/4): Errno::ESPIPE Illegal seek
/opt/truffleruby-20.1.0-linux-amd64/lib/gems/gems/bundler-2.1.4/lib/bundler/vendor/thor/lib/thor/shell/basic.rb:100:in `handle': Illegal seek (Errno::ESPIPE)
	from /opt/truffleruby-20.1.0-linux-amd64/lib/gems/gems/bundler-2.1.4/lib/bundler/vendor/thor/lib/thor/shell/basic.rb:100:in `block in unseek!'
	from /opt/truffleruby-20.1.0-linux-amd64/lib/gems/gems/bundler-2.1.4/lib/bundler/vendor/thor/lib/thor/shell/basic.rb:100:in `synchronized'
	from /opt/truffleruby-20.1.0-linux-amd64/lib/gems/gems/bundler-2.1.4/lib/bundler/vendor/thor/lib/thor/shell/basic.rb:100:in `unseek!'
	from /opt/truffleruby-20.1.0-linux-amd64/lib/gems/gems/bundler-2.1.4/lib/bundler/vendor/thor/lib/thor/shell/basic.rb:100:in `reset_buffering'
	from /opt/truffleruby-20.1.0-linux-amd64/lib/gems/gems/bundler-2.1.4/lib/bundler/vendor/thor/lib/thor/shell/basic.rb:100:in `write'
	from /opt/truffleruby-20.1.0-linux-amd64/lib/gems/gems/bundler-2.1.4/lib/bundler/vendor/thor/lib/thor/shell/basic.rb:100:in `block in print'
	from /opt/truffleruby-20.1.0-linux-amd64/lib/gems/gems/bundler-2.1.4/lib/bundler/vendor/thor/lib/thor/shell/basic.rb:100:in `each'
	from /opt/truffleruby-20.1.0-linux-amd64/lib/gems/gems/bundler-2.1.4/lib/bundler/vendor/thor/lib/thor/shell/basic.rb:100:in `print'
	from /opt/truffleruby-20.1.0-linux-amd64/lib/gems/gems/bundler-2.1.4/lib/bundler/vendor/thor/lib/thor/shell/basic.rb:100:in `print'
	from /opt/truffleruby-20.1.0-linux-amd64/lib/gems/gems/bundler-2.1.4/lib/bundler/vendor/thor/lib/thor/shell/basic.rb:100:in `say'
	from /opt/truffleruby-20.1.0-linux-amd64/lib/gems/gems/bundler-2.1.4/lib/bundler/ui/shell.rb:101:in `tell_me'
	from /opt/truffleruby-20.1.0-linux-amd64/lib/gems/gems/bundler-2.1.4/lib/bundler/ui/shell.rb:45:in `debug'
	from /opt/truffleruby-20.1.0-linux-amd64/lib/gems/gems/bundler-2.1.4/lib/bundler/fetcher/base.rb:45:in `log_specs'
	from /opt/truffleruby-20.1.0-linux-amd64/lib/gems/gems/bundler-2.1.4/lib/bundler/fetcher/compact_index.rb:40:in `specs_for_names'
	from /opt/truffleruby-20.1.0-linux-amd64/lib/gems/gems/bundler-2.1.4/lib/bundler/fetcher/compact_index.rb:30:in `specs'
	from /opt/truffleruby-20.1.0-linux-amd64/lib/gems/gems/bundler-2.1.4/lib/bundler/fetcher/compact_index.rb:16:in `call'
	from /opt/truffleruby-20.1.0-linux-amd64/lib/gems/gems/bundler-2.1.4/lib/bundler/fetcher/compact_index.rb:16:in `specs'
	from /opt/truffleruby-20.1.0-linux-amd64/lib/gems/gems/bundler-2.1.4/lib/bundler/fetcher.rb:133:in `block in specs'
	from /opt/truffleruby-20.1.0-linux-amd64/lib/gems/gems/bundler-2.1.4/lib/bundler/fetcher.rb:132:in `each'
	from /opt/truffleruby-20.1.0-linux-amd64/lib/gems/gems/bundler-2.1.4/lib/bundler/fetcher.rb:132:in `specs'
	from /opt/truffleruby-20.1.0-linux-amd64/lib/gems/gems/bundler-2.1.4/lib/bundler/fetcher.rb:117:in `block in specs_with_retry'
	from /opt/truffleruby-20.1.0-linux-amd64/lib/gems/gems/bundler-2.1.4/lib/bundler/retry.rb:40:in `call'
	from /opt/truffleruby-20.1.0-linux-amd64/lib/gems/gems/bundler-2.1.4/lib/bundler/retry.rb:40:in `run'
	from /opt/truffleruby-20.1.0-linux-amd64/lib/gems/gems/bundler-2.1.4/lib/bundler/retry.rb:30:in `attempt'
	from /opt/truffleruby-20.1.0-linux-amd64/lib/gems/gems/bundler-2.1.4/lib/bundler/fetcher.rb:116:in `specs_with_retry'
	from /opt/truffleruby-20.1.0-linux-amd64/lib/gems/gems/bundler-2.1.4/lib/bundler/source/rubygems.rb:413:in `block in fetch_names'
	from /opt/truffleruby-20.1.0-linux-amd64/lib/gems/gems/bundler-2.1.4/lib/bundler/source/rubygems.rb:410:in `each'
	from /opt/truffleruby-20.1.0-linux-amd64/lib/gems/gems/bundler-2.1.4/lib/bundler/source/rubygems.rb:410:in `fetch_names'
	from /opt/truffleruby-20.1.0-linux-amd64/lib/gems/gems/bundler-2.1.4/lib/bundler/source/rubygems.rb:405:in `block in remote_specs'
	from /opt/truffleruby-20.1.0-linux-amd64/lib/gems/gems/bundler-2.1.4/lib/bundler/index.rb:11:in `build'
	from /opt/truffleruby-20.1.0-linux-amd64/lib/gems/gems/bundler-2.1.4/lib/bundler/source/rubygems.rb:392:in `remote_specs'
	from /opt/truffleruby-20.1.0-linux-amd64/lib/gems/gems/bundler-2.1.4/lib/bundler/source/rubygems.rb:88:in `specs'
	from /opt/truffleruby-20.1.0-linux-amd64/lib/gems/gems/bundler-2.1.4/lib/bundler/definition.rb:273:in `block (2 levels) in index'
	from /opt/truffleruby-20.1.0-linux-amd64/lib/gems/gems/bundler-2.1.4/lib/bundler/definition.rb:271:in `each'
	from /opt/truffleruby-20.1.0-linux-amd64/lib/gems/gems/bundler-2.1.4/lib/bundler/definition.rb:271:in `block in index'
	from /opt/truffleruby-20.1.0-linux-amd64/lib/gems/gems/bundler-2.1.4/lib/bundler/index.rb:11:in `build'
	from /opt/truffleruby-20.1.0-linux-amd64/lib/gems/gems/bundler-2.1.4/lib/bundler/definition.rb:268:in `index'
	from /opt/truffleruby-20.1.0-linux-amd64/lib/gems/gems/bundler-2.1.4/lib/bundler/definition.rb:258:in `resolve'
	from /opt/truffleruby-20.1.0-linux-amd64/lib/gems/gems/bundler-2.1.4/lib/bundler/definition.rb:170:in `specs'
	from /opt/truffleruby-20.1.0-linux-amd64/lib/gems/gems/bundler-2.1.4/lib/bundler/definition.rb:158:in `resolve_remotely!'
	from /opt/truffleruby-20.1.0-linux-amd64/lib/gems/gems/bundler-2.1.4/lib/bundler/installer.rb:303:in `resolve_if_needed'
	from /opt/truffleruby-20.1.0-linux-amd64/lib/gems/gems/bundler-2.1.4/lib/bundler/installer.rb:84:in `block in run'
	from /opt/truffleruby-20.1.0-linux-amd64/lib/gems/gems/bundler-2.1.4/lib/bundler/process_lock.rb:12:in `block in lock'
	from /opt/truffleruby-20.1.0-linux-amd64/lib/gems/gems/bundler-2.1.4/lib/bundler/process_lock.rb:9:in `open'
	from /opt/truffleruby-20.1.0-linux-amd64/lib/gems/gems/bundler-2.1.4/lib/bundler/process_lock.rb:9:in `lock'
	from /opt/truffleruby-20.1.0-linux-amd64/lib/gems/gems/bundler-2.1.4/lib/bundler/installer.rb:73:in `run'
	from /opt/truffleruby-20.1.0-linux-amd64/lib/gems/gems/bundler-2.1.4/lib/bundler/installer.rb:25:in `install'
	from /opt/truffleruby-20.1.0-linux-amd64/lib/gems/gems/bundler-2.1.4/lib/bundler/cli/install.rb:66:in `run'
	from /opt/truffleruby-20.1.0-linux-amd64/lib/gems/gems/bundler-2.1.4/lib/bundler/cli.rb:256:in `block in install'
	from /opt/truffleruby-20.1.0-linux-amd64/lib/gems/gems/bundler-2.1.4/lib/bundler/settings.rb:124:in `temporary'
	from /opt/truffleruby-20.1.0-linux-amd64/lib/gems/gems/bundler-2.1.4/lib/bundler/cli.rb:255:in `install'
	from /opt/truffleruby-20.1.0-linux-amd64/lib/gems/gems/bundler-2.1.4/lib/bundler/vendor/thor/lib/thor/command.rb:27:in `run'
	from /opt/truffleruby-20.1.0-linux-amd64/lib/gems/gems/bundler-2.1.4/lib/bundler/vendor/thor/lib/thor/invocation.rb:127:in `invoke_command'
	from /opt/truffleruby-20.1.0-linux-amd64/lib/gems/gems/bundler-2.1.4/lib/bundler/vendor/thor/lib/thor.rb:399:in `dispatch'
	from /opt/truffleruby-20.1.0-linux-amd64/lib/gems/gems/bundler-2.1.4/lib/bundler/cli.rb:30:in `dispatch'
	from /opt/truffleruby-20.1.0-linux-amd64/lib/gems/gems/bundler-2.1.4/lib/bundler/vendor/thor/lib/thor/base.rb:476:in `start'
	from /opt/truffleruby-20.1.0-linux-amd64/lib/gems/gems/bundler-2.1.4/lib/bundler/cli.rb:24:in `start'
	from /opt/truffleruby-20.1.0-linux-amd64/lib/gems/gems/bundler-2.1.4/exe/bundle:46:in `block in <top (required)>'
	from /opt/truffleruby-20.1.0-linux-amd64/lib/gems/gems/bundler-2.1.4/lib/bundler/friendly_errors.rb:123:in `with_friendly_errors'
	from /opt/truffleruby-20.1.0-linux-amd64/lib/gems/gems/bundler-2.1.4/exe/bundle:34:in `<top (required)>'
	from /opt/truffleruby-20.1.0-linux-amd64/bin/bundle:23:in `load'
	from /opt/truffleruby-20.1.0-linux-amd64/bin/bundle:23:in `load'
	from /opt/truffleruby-20.1.0-linux-amd64/bin/bundle:23:in `<main>'
PrintGCSummary: YoungGenerationSize: 268435456
PrintGCSummary: MinimumHeapSize: 536870912
PrintGCSummary: MaximumHeapSize: 3221225472
PrintGCSummary: AlignedChunkSize: 1048576
PrintGCSummary: CollectedTotalChunkBytes: 23897120712
PrintGCSummary: CollectedTotalObjectBytes: 23499840032
PrintGCSummary: AllocatedNormalChunkBytes: 24518020664
PrintGCSummary: AllocatedNormalObjectBytes: 24085649032
PrintGCSummary: IncrementalGCCount: 75
PrintGCSummary: IncrementalGCNanos: 4210138200
PrintGCSummary: CompleteGCCount: 15
PrintGCSummary: CompleteGCNanos: 4154855900
PrintGCSummary: GCNanos: 8364994100
PrintGCSummary: TotalNanos: 29071609400
PrintGCSummary: GCLoadPercent: 29

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions