Popularity
2.2
Declining
Activity
0.0
Stable
3
3
1

Programming language: Crystal
License: MIT License
Tags: Configuration    
Latest version: v0.1.1

dockerfile.cr alternatives and similar shards

Based on the "Configuration" category.
Alternatively, view dockerfile.cr alternatives based on common mentions on social networks and blogs.

Do you think we are missing an alternative of dockerfile.cr or a related project?

Add another 'Configuration' Shard

README

dockerfile.cr

Travis master

Dockerfile parser library, ported from @yurinnick's Ruby library.

Installation

Add this to your application's shard.yml:

dependencies:
  dockerfile:
    github: keplersj/dockerfile.cr

Usage

example.cr


require 'dockerfile'

puts DockerfileParser.load('Dockerfile')

Dockerfile


FROM debian:jessie
MAINTAINER Nikolay Yurin <[email protected]>

RUN apt-get update && \
    apt-get install -y nginx

RUN rm -rf /var/lib/apt/lists/* && \
    chown -R www-data:www-data /var/lib/nginx

VOLUME /var/www/html
WORKDIR /etc/nginx
COPY site-example.conf /etc/nginx/sites-available/site-example.conf
COPY index.html.tmpl /var/www/html/index.html

EXPOSE 80

CMD ["nginx", "-g", "daemon off;"]

output

[
    {command: "FROM",       params: ["debian", "jessie"]},
    {command: "MAINTAINER", params: "Nikolay Yurin <[email protected]>"},
    {command: "RUN",        params: [
                              ["apt-get", "update"],["&"],
                              ["apt-get", "install", "-y", "nginx"]]},
    {command: "RUN",        params: [
                              ["rm", "-rf", "/var/lib/apt/lists/*"],
                              ["&"],
                              ["chown", "-R", "www-data:www-data", "/var/lib/nginx"]]},
    {command: "VOLUME",     params: "/var/www/html"},
    {command: "WORKDIR",    params: "/etc/nginx"},
    {command: "COPY",       params: {src: "site-example.conf",
                                       dst: "/etc/nginx/sites-available/site-example.conf"}},
    {command: "COPY",       params: {src: "index.html.tmpl",
                                       dst: "/var/www/html/index.html"}},
    {command: "EXPOSE",     params: "80"},
    {command: "CMD",        params: ["nginx", "-g", "daemon off;"]}
]

Contributing

  1. Fork it (https://github.com/keplersj/dockerfile.cr/fork)
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create a new Pull Request

Contributors

  • @yurinnick Nikolay Yurin - creator
  • @keplersj Kepler Sticka-Jones - maintainer, ported to Crystal