فهرست منبع

feat: display container version

Nicolas Duchon 3 سال پیش
والد
کامیت
fbf37456d0
4فایلهای تغییر یافته به همراه29 افزوده شده و 14 حذف شده
  1. 8 7
      Dockerfile
  2. 8 7
      Dockerfile.alpine
  3. 8 0
      docker-entrypoint.sh
  4. 5 0
      nginx.tmpl

+ 8 - 7
Dockerfile

@@ -39,6 +39,14 @@ RUN git clone https://github.com/nginx-proxy/forego/ \
 FROM nginx:1.21.5
 LABEL maintainer="Nicolas Duchon <nicolas.duchon@gmail.com> (@buchdag)"
 
+ARG NGINX_PROXY_VERSION
+# Add DOCKER_GEN_VERSION environment variable
+# Because some external projects rely on it
+ARG DOCKER_GEN_VERSION
+ENV NGINX_PROXY_VERSION=${NGINX_PROXY_VERSION} \
+   DOCKER_GEN_VERSION=${DOCKER_GEN_VERSION} \
+   DOCKER_HOST=unix:///tmp/docker.sock
+
 # Install wget and install/updates certificates
 RUN apt-get update \
    && apt-get install -y -q --no-install-recommends \
@@ -58,17 +66,10 @@ RUN echo "daemon off;" >> /etc/nginx/nginx.conf \
 COPY --from=forego /usr/local/bin/forego /usr/local/bin/forego
 COPY --from=dockergen /usr/local/bin/docker-gen /usr/local/bin/docker-gen
 
-# Add DOCKER_GEN_VERSION environment variable
-# Because some external projects rely on it
-ARG DOCKER_GEN_VERSION
-ENV DOCKER_GEN_VERSION=${DOCKER_GEN_VERSION}
-
 COPY network_internal.conf /etc/nginx/
 
 COPY . /app/
 WORKDIR /app/
 
-ENV DOCKER_HOST unix:///tmp/docker.sock
-
 ENTRYPOINT ["/app/docker-entrypoint.sh"]
 CMD ["forego", "start", "-r"]

+ 8 - 7
Dockerfile.alpine

@@ -40,6 +40,14 @@ RUN git clone https://github.com/nginx-proxy/forego/ \
 FROM nginx:1.21.5-alpine
 LABEL maintainer="Nicolas Duchon <nicolas.duchon@gmail.com> (@buchdag)"
 
+ARG NGINX_PROXY_VERSION
+# Add DOCKER_GEN_VERSION environment variable
+# Because some external projects rely on it
+ARG DOCKER_GEN_VERSION
+ENV NGINX_PROXY_VERSION=${NGINX_PROXY_VERSION} \
+   DOCKER_GEN_VERSION=${DOCKER_GEN_VERSION} \
+   DOCKER_HOST=unix:///tmp/docker.sock
+
 # Install wget and install/updates certificates
 RUN apk add --no-cache --virtual .run-deps \
    ca-certificates bash wget openssl \
@@ -55,17 +63,10 @@ RUN echo "daemon off;" >> /etc/nginx/nginx.conf \
 COPY --from=forego /usr/local/bin/forego /usr/local/bin/forego
 COPY --from=dockergen /usr/local/bin/docker-gen /usr/local/bin/docker-gen
 
-# Add DOCKER_GEN_VERSION environment variable
-# Because some external projects rely on it
-ARG DOCKER_GEN_VERSION
-ENV DOCKER_GEN_VERSION=${DOCKER_GEN_VERSION}
-
 COPY network_internal.conf /etc/nginx/
 
 COPY . /app/
 WORKDIR /app/
 
-ENV DOCKER_HOST unix:///tmp/docker.sock
-
 ENTRYPOINT ["/app/docker-entrypoint.sh"]
 CMD ["forego", "start", "-r"]

+ 8 - 0
docker-entrypoint.sh

@@ -29,6 +29,12 @@ function _parse_false() {
 	esac
 }
 
+function _print_version {
+    if [[ -n "${NGINX_PROXY_VERSION:-}" ]]; then
+        echo "Info: running nginx-proxy version ${NGINX_PROXY_VERSION}"
+    fi
+}
+
 function _check_unix_socket() {
 	# Warn if the DOCKER_HOST socket does not exist
 	if [[ ${DOCKER_HOST} == unix://* ]]; then
@@ -96,6 +102,8 @@ function _setup_dhparam() {
 
 # Run the init logic if the default CMD was provided
 if [[ $* == 'forego start -r' ]]; then
+	_print_version
+	
 	_check_unix_socket
 
 	_resolvers

+ 5 - 0
nginx.tmpl

@@ -1,5 +1,6 @@
 {{ $CurrentContainer := where $ "ID" .Docker.CurrentContainerID | first }}
 
+{{ $nginx_proxy_version := coalesce $.Env.NGINX_PROXY_VERSION "" }}
 {{ $external_http_port := coalesce $.Env.HTTP_PORT "80" }}
 {{ $external_https_port := coalesce $.Env.HTTPS_PORT "443" }}
 {{ $debug_all := $.Env.DEBUG }}
@@ -48,6 +49,10 @@
 	{{ end }}
 {{ end }}
 
+{{ if ne $nginx_proxy_version "" }}
+# nginx-proxy version : {{ $nginx_proxy_version }}
+{{ end }}
+
 # If we receive X-Forwarded-Proto, pass it through; otherwise, pass along the
 # scheme used to connect to this server
 map $http_x_forwarded_proto $proxy_x_forwarded_proto {