All Projects → gauthamp10 → Dockerfile Boilerplates

gauthamp10 / Dockerfile Boilerplates

Licence: mit
Docker boilerplates a.k.a templates for most programming language.

Dockerfile Boilerplates For All

Hello World! of Docker

Build Status GitHub repo size visitors

Docker boilerplates / templates for most common progamming languages. Like a Hello World! but for docker images.


Note: Not production quality yet

List Of Programming Languages

Docker

Docker is service which provides OS-level virtualization with such ease and compatibility that no virtual machines can offer. It also packs software dependencies within itself and runs independently and flexibly on various platforms.

To know more: docker.com

Instructions

Where do I start?

✌️ Two Choices.

#1: Pull the image from dockerhub and run


  - docker pull gauthamp10/language-name
  - docker run --rm gauthamp10/language-name
  For web app
  - docker run -p 5000:5000 --rm -v /path/to/volume/:/app language-name

  Example:

  - docker pull gauthamp10/java
  - docker run --rm gauthamp10/java

To add the image in your Dockerfile:

FROM gauthamp10/language-name:latest

Example:

FROM gauthamp10/java

#2: Build your own version from the template Dockerfile

At first edit the Dockerfile as per your liking


  - docker build -t language-name .
  - docker run --rm language-name

Example:

  - docker build -t java .
  - docker run --rm java

How can I upload my image to docker hub?

Create an account on dockerhub and then


  - docker login -u $DOCKER_USERNAME -p $DOCKER_PASSWORD
  - docker tag language-name $DOCKER_USERNAME/language-name:$BUILD_VERSION
  - docker push $DOCKER_USERNAME/language-name:$BUILD_VERSION

  Example:

  - docker login -u gauthamp10 -p **********
  - docker tag java gauthamp10/java:1.0
  - docker push gauthamp10/java:1.0


Play around with your custom build by


  - docker pull $DOCKER_USERNAME/language-name:latest

  Example:

  - docker pull gauthamp10/java:latest

Overview Of Dockerfile

Image Name Language Version Base Image Layers Image Size
gauthamp10/ada 10.1.0-1 ubuntu:latest
gauthamp10/bash 4.4.20 alpine:latest
gauthamp10/c-build 9.3.0-r2 alpine:latest
gauthamp10/clsip 2.49.92 ubuntu:latest
gauthamp10/cpp 9.3.0-r2 alpine:latest
gauthamp10/dart 2.8.2 ubuntu:latest
gauthamp10/deno 1.0.5 alpine:latest
gauthamp10/elixir 1.10.3-r0 alpine:latest
gauthamp10/erlang 23.0-r0 alpine:latest
gauthamp10/fortran 9.3.0-r2 alpine:latest
gauthamp10/go-build 1.14 golang:1.14
gauthamp10/haskell 8.8.3-r0 alpine:latest
gauthamp10/icon v951 ubuntu:latest
gauthamp10/java openjdk8 alpine:latest
gauthamp10/javascript 1.18.0-r0(nginx) nginx:alpine
gauthamp10/julia 1.4.1 ubuntu:latest
gauthamp10/kotlin v1.3.72 alpine:latest
gauthamp10/lisp 6.24-3 ubuntu:latest
gauthamp10/lua 5.2.4 alpine:latest
gauthamp10/node 12.16.3-r0 alpine:latest
gauthamp10/objc 4.9.3.0-1 ubuntu:latest
gauthamp10/perl 5.30.2-r0 alpine:latest
gauthamp10/php 7.4 php:latest-apache
gauthamp10/python 3.6 python:3.6-slim
gauthamp10/pythonweb 3.6 python:3.6-slim
gauthamp10/r-build 3.6.3-r2 alpine:latest
gauthamp10/rust 1.43.1-r1 alpine:latest
gauthamp10/scala 2.13.2 ubuntu:latest
gauthamp10/swift 5.2.3r ubuntu:latest

Note:

This repo is tested with automated builds on commit with TRAVIS-CI. Some image meta data is being pulled using Microbadger.

How can I contribute?

Contributions are always welcomed. Create a boilerplate / template for any other programming languages or you could also add any multistage builds which are not available in the repo by opening a pull request.For more information checkout the CONTRIBUTING.md file.

Contributors 😁💌


Gautham Prakash

✍️

Joshua Walcher

📖

Raphael Habereder

✍️

Nicolas CARPi

✍️

Alen Joseph

✍️

Author

Gautham Prakash

My other projects: github.com/gauthamp10

Website: gauthamp10.github.io

Blog: gauthamp10/blog

License

This project is licensed under the MIT License - see the LICENSE file for details

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].