|
@@ -0,0 +1,38 @@
|
|
|
+FROM alpine:3.5
|
|
|
+MAINTAINER Mohammad Abdoli Rad <m.abdolirad@gmail.com>
|
|
|
+
|
|
|
+LABEL org.label-schema.name="alpine" \
|
|
|
+ org.label-schema.vendor="Dockage" \
|
|
|
+ org.label-schema.description="Docker image uses openRC as a process supervision on Alpine Linux" \
|
|
|
+ org.label-schema.vcs-url="https://github.com/dockage/alpine" \
|
|
|
+ org.label-schema.version="3.5-openrc" \
|
|
|
+ org.label-schema.license="MIT"
|
|
|
+
|
|
|
+RUN set -x \
|
|
|
+ && apk add --update --no-cache openrc su-exec net-tools ca-certificates nano tar curl findutils \
|
|
|
+ # Disable getty's
|
|
|
+ && sed -i 's/^\(tty\d\:\:\)/#\1/g' /etc/inittab \
|
|
|
+ && sed -i \
|
|
|
+ # Change subsystem type to "docker"
|
|
|
+ -e 's/#rc_sys=".*"/rc_sys="docker"/g' \
|
|
|
+ # Allow all variables through
|
|
|
+ -e 's/#rc_env_allow=".*"/rc_env_allow="\*"/g' \
|
|
|
+ # Start crashed services
|
|
|
+ -e 's/#rc_crashed_stop=.*/rc_crashed_stop=NO/g' \
|
|
|
+ -e 's/#rc_crashed_start=.*/rc_crashed_start=YES/g' \
|
|
|
+ # Define extra dependencies for services
|
|
|
+ -e 's/#rc_provide=".*"/rc_provide="loopback net"/g' \
|
|
|
+ /etc/rc.conf \
|
|
|
+ # Remove unnecessary services
|
|
|
+ && rm -f /etc/init.d/hwdrivers \
|
|
|
+ /etc/init.d/hwclock \
|
|
|
+ /etc/init.d/hwdrivers \
|
|
|
+ /etc/init.d/modules \
|
|
|
+ /etc/init.d/modules-load \
|
|
|
+ /etc/init.d/modloop \
|
|
|
+ # Can't do cgroups
|
|
|
+ && sed -i 's/cgroup_add_service /# cgroup_add_service /g' /lib/rc/sh/openrc-run.sh \
|
|
|
+ && sed -i 's/VSERVER/DOCKER/Ig' /lib/rc/sh/init.sh
|
|
|
+
|
|
|
+WORKDIR /etc/init.d
|
|
|
+CMD ["/sbin/init"]
|