Sign inSign up

blueapple/baseimage

By blueapple

•Updated over 5 years ago

Alpine glibc openjdk

Image
0

1.9K

blueapple/baseimage repository overview

⁠Alpine Openjdk Base Images

This is a repository for Java Docker base images used in other projects.

The Java base images come in different flavors:

  • Based on Alpine Linux⁠ (experimental)
  • OpenJDK 8⁠
  • As JDK (Java Developer Toolkit) or as JRE (Java Runtime Environment)
  • Glibc⁠ is the GNU C library as a Alpine Linux package to run binaries linked against glibc. This package utilizes a custom built glibc binary based on the vanilla glibc source. Built binary artifacts come from https://github.com/sgerrand/docker-glibc-builder⁠.
  • Other component.Etc.. curl bash tree tzdata openjdk8 mkfontscale mkfontdir fontconfig git openssh wget libgcc sqlite sqlite-dev

All images add the following features:

  • agent-bond⁠ is included which combines Jolokia⁠ and jmx_exporter⁠

  • A startup script run-java.sh⁠ is included which transparently starts Java application provided as FAT-jar or traditionally with a bunch of jar dependencies.

  • dumb-init⁠ is a simple process supervisor and init system designed to run as PID 1 inside minimal container environments (such as Docker). It is deployed as a small, statically-linked binary written in C.

    Lightweight containers have popularized the idea of running a single process or service without normal init systems like systemd or sysvinit. However, omitting an init system often leads to incorrect handling of processes and signals, and can result in problems such as containers which can't be gracefully stopped, or leaking containers which should have been destroyed.

    dumb-init enables you to simply prefix your command with dumb-init. It acts as PID 1 and immediately spawns your command as a child process, taking care to properly handle and forward signals as they are received.

  • gosu⁠ is a simple tool grown out of the simple fact that su and sudo have very strange and often annoying TTY and signal-forwarding behavior. They're also somewhat complex to setup and use (especially in the case of sudo), which allows for a great deal of expressivity, but falls flat if all you need is "run this specific application as this specific user and get out of the pipeline".

The core of how gosu works is stolen directly from how Docker/libcontainer itself starts an application inside a container (and in fact, is using the /etc/passwd processing code directly from libcontainer's codebase).

Imags Instructions

Tag summary

Content type

Image

Digest

Size

114 MB

Last updated

over 7 years ago

docker pull blueapple/baseimage