microsocks/Dockerfile

52 lines
2.8 KiB
Docker

# Rx3-Docker/MicroSocks Dockerfile
#-------------------------------------------------------------------------------
ARG IMG_FROM_URL="rx3-docker/server:latest"
FROM ${IMG_FROM_URL}
ARG IMG_NAME
ARG IMG_NAME_FULL
ARG IMG_VERSION
ARG IMG_MAINTAINER
LABEL org.rx3.${IMG_NAME}.name=${IMG_NAME_FULL}
LABEL org.rx3.${IMG_NAME}.version=${IMG_VERSION}
LABEL org.rx3.${IMG_NAME}.maintainer=${IMG_MAINTAINER}
LABEL maintainer=${IMG_MAINTAINER}
ARG MICROSOCKS_PORT
ARG MICROSOCKS_LIB=/var/lib/microsocks
ARG MICROSOCKS_HOME=${MICROSOCKS_LIB}
#---------------------------------------------------------------------------------------------------------------
ARG MICROSOCKSD='#!/bin/bash \n\
\n\
usermod -u ${MICROSOCKS_UID} microsocks \n\
groupmod -g ${MICROSOCKS_GID} microsocks \n\
\n\
chown -R microsocks:microsocks '${MICROSOCKS_LIB}
#---------------------------------------------------------------------------------------------------------------
#---------------------------------------------------------------------------------------------------------------
ARG MICROSOCKSD_INI='[program:microsockd] \n\
directory='${MICROSOCKS_HOME}' \n\
command=microsocks ${MICROSOCKS_OPTIONS} \n\
user=microsocks'
#---------------------------------------------------------------------------------------------------------------
RUN urpmi.update -a \
&& urpmi --force microsocks myip \
&& mkdir ${MICROSOCKS_LIB} \
&& useradd -M --home-dir ${MICROSOCKS_HOME} --password "" microsocks \
&& echo -e "${MICROSOCKSD}" | sed -e "s/\`/'/g" -e 's/ *$//' > /etc/init.d/microsocksd \
&& chmod a+x /etc/init.d/microsocksd \
&& ln -s /etc/init.d/microsocksd /etc/rcD.d/S30microsocksd \
&& echo -e "${MICROSOCKSD_INI}" | sed -e "s/\`/'/g" -e 's/ *$//' > /etc/supervisord.d/microsocksd.ini
EXPOSE ${MICROSOCKS_PORT}