gpt4 book ai didi

ruby - 有什么方法可以为Docker编译和静态链接ruby库吗?

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:42:20 25 4
gpt4 key购买 nike

2015年6月29日更新:

InfraRuby compiler and runtime for statically typed Ruby on the JVM!

我想从一个简单的ruby爬虫中获取一个静态链接的二进制文件,以构建一个细长的docker容器。

类似于Go产生的东西:

CGO_ENABLED=0 GOOS=linux go build -a -installsuffix cgo -o main .

(来自 Building Minimal Docker Containers for Go Applications)。

有没有办法用 ruby / rails 做到这一点?

最佳答案

何苦?当您为ruby应用程序创建docker容器时,您已经在创建一个方便的分发包。

我建议您查看rubyrails官方图片。在容器构建过程中,他们将运行gem bundler以打包依赖项。



简单的Ruby脚本项目

├── Dockerfile
├── Gemfile
├── Gemfile.lock
└── helloworld.rb

图像正常构建
docker build -t my-ruby-app .

并运行如下:
$ docker run --rm my-ruby-app
__ __ ____ __ __
/ / / /__ / / /___ _ ______ _____/ /___/ /
/ /_/ / _ \/ / / __ \ | | /| / / __ \/ ___/ / __ /
/ __ / __/ / / /_/ / | |/ |/ / /_/ / / / / /_/ /
/_/ /_/\___/_/_/\____/ |__/|__/\____/_/ /_/\__,_/

Docker文件
FROM ruby:2.1-onbuild
CMD ["ruby", "helloworld.rb"]

helloworld.rb
require "artii"

a = Artii::Base.new :font => 'slant'
puts a.asciify('Hello world')

gem 文件
source "https://rubygems.org"

gem "artii"

关于ruby - 有什么方法可以为Docker编译和静态链接ruby库吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29844622/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com