Commit 77744f03 authored by Pedro Eduardo Trujillo's avatar Pedro Eduardo Trujillo
Browse files

Actualiza imagen, crea ejecutables sin extensión

En lugar de instalar docker-compose al crear la imagen, se extiende
desde la imagen oficial de docker-compose. Esto reduce la mayoría de
instrucciones de la definición.
Se fijan las versiones de docker-compose y de openssh-client.

Los scripts dejan de ser ejecutables en el código fuente, y se le
asignan permisos de ejecución al construir la imagen. Además, se dejan
disponibles para su uso tanto con extensión .sh como sin ella.
parent fb900f6c
Loading
Loading
Loading
Loading
+16 −41
Original line number Diff line number Diff line
FROM docker:latest
ARG DOCKER_COMPOSE_VERSION=1.24.0
FROM docker/compose:${DOCKER_COMPOSE_VERSION}

LABEL maintainer="info@redmic.es"

ARG ALPINE_GLIBC_PACKAGE_VERSION="2.28-r0"
ARG ALPINE_GLIBC_BASE_URL="https://github.com/sgerrand/alpine-pkg-glibc/releases/download"
ARG LANG=C.UTF-8
ARG OPENSSH_CLIENT_VERSION=7.7_p1-r4
RUN apk --update --no-cache add \
	openssh-client=${OPENSSH_CLIENT_VERSION}

RUN ALPINE_GLIBC_BASE_PACKAGE_FILENAME="glibc-$ALPINE_GLIBC_PACKAGE_VERSION.apk" && \
    ALPINE_GLIBC_BIN_PACKAGE_FILENAME="glibc-bin-$ALPINE_GLIBC_PACKAGE_VERSION.apk" && \
    ALPINE_GLIBC_I18N_PACKAGE_FILENAME="glibc-i18n-$ALPINE_GLIBC_PACKAGE_VERSION.apk" && \
    apk add --no-cache --virtual=.build-dependencies wget ca-certificates && \
    wget \
        "https://alpine-pkgs.sgerrand.com/sgerrand.rsa.pub" \
        -O "/etc/apk/keys/sgerrand.rsa.pub" && \
    wget \
        "$ALPINE_GLIBC_BASE_URL/$ALPINE_GLIBC_PACKAGE_VERSION/$ALPINE_GLIBC_BASE_PACKAGE_FILENAME" \
        "$ALPINE_GLIBC_BASE_URL/$ALPINE_GLIBC_PACKAGE_VERSION/$ALPINE_GLIBC_BIN_PACKAGE_FILENAME" \
        "$ALPINE_GLIBC_BASE_URL/$ALPINE_GLIBC_PACKAGE_VERSION/$ALPINE_GLIBC_I18N_PACKAGE_FILENAME" && \
    apk add --no-cache \
        "$ALPINE_GLIBC_BASE_PACKAGE_FILENAME" \
        "$ALPINE_GLIBC_BIN_PACKAGE_FILENAME" \
        "$ALPINE_GLIBC_I18N_PACKAGE_FILENAME" && \
    \
    rm "/etc/apk/keys/sgerrand.rsa.pub" && \
    /usr/glibc-compat/bin/localedef --force --inputfile POSIX --charmap UTF-8 "$LANG" || true && \
    echo "export LANG=$LANG" > /etc/profile.d/locale.sh && \
    \
    apk del glibc-i18n && \
    \
    rm "/root/.wget-hsts" && \
    apk del .build-dependencies && \
    rm \
        "$ALPINE_GLIBC_BASE_PACKAGE_FILENAME" \
        "$ALPINE_GLIBC_BIN_PACKAGE_FILENAME" \
        "$ALPINE_GLIBC_I18N_PACKAGE_FILENAME"
COPY script/ /script/
RUN \
	binPath=/usr/bin; \
	for filePath in /script/*; \
	do \
		fileName=$(basename "${filePath}"); \
		chmod 755 "${filePath}"; \
		ln -s "${filePath}" "${binPath}/${fileName}"; \
		ln -s "${filePath}" "${binPath}/${fileName%.*}"; \
	done

ARG DOCKER_COMPOSE_VERSION=1.23.2

RUN apk --update --no-cache add openssh-client && \
	wget \
		"https://github.com/docker/compose/releases/download/${DOCKER_COMPOSE_VERSION}/docker-compose-$(uname -s)-$(uname -m)" \
		-O /usr/local/bin/docker-compose && \
	chmod +x /usr/local/bin/docker-compose

COPY script/ /usr/bin/
ENTRYPOINT ["/bin/sh", "-c"]

script/_check-deploy.sh

100755 → 100644
+0 −0

File mode changed from 100755 to 100644.

script/_definitions.sh

100755 → 100644
+0 −0

File mode changed from 100755 to 100644.

script/_do-deploy.sh

100755 → 100644
+0 −0

File mode changed from 100755 to 100644.

script/_prepare-deploy.sh

100755 → 100644
+0 −0

File mode changed from 100755 to 100644.

Loading