Base docker image to run Ruby applications in azk
- Ubuntu 14.04
- Git
- VIM
- NodeJS
- npm
- Ruby
- Bundle
- ImageMagick
Database:
- PostgreSQL client
- MySQL client
- MongoDB
- SQLite3
Example of using this image with azk:
/**
* Documentation: http://docs.azk.io/Azkfile.js
*/
// Adds the systems that shape your system
systems({
"my-app": {
// Dependent systems
depends: [], // postgres, mysql, mongodb ...
// More images: http://images.azk.io
image: {"docker": "azukiapp/ruby"},
// Steps to execute before running instances
provision: [
"bundle install --path /azk/bundler"//,
// "rake db:create",
// "rake db:migrate"
],
workdir: "/azk/#{manifest.dir}",
shell: "/bin/bash",
command: "bundle exec rackup config.ru --pid /tmp/ruby.pid --port $HTTP_PORT --host 0.0.0.0",
wait: {"retry": 20, "timeout": 1000},
mounts : {
'/azk/#{manifest.dir}': path('.'),
'/azk/bundler' : persistent('bundler'),
},
scalable: {"default": 1},
http: {
// my-app.dev.azk.io
domains: [ "#{system.name}.#{azk.default_domain}" ]
},
envs: {
// set instances variables
RACK_ENV : 'development',
BUNDLE_APP_CONFIG : '/azk/bundler',
}
},
});
To create the image azukiapp/ruby
, execute the following command on the docker-ruby folder:
$ docker build -t azukiapp/ruby 2.3/
To run the image and bind to port 3000:
$ docker run -it --rm --name my-app -p 3000:3000 -v "$PWD":/myapp -w /myapp azukiapp/ruby ruby app.rb
# with azk
$ azk logs my-app
# with docker
$ docker logs <CONTAINER_ID>
Azuki Dockerfiles distributed under the Apache License.