From caae17258985b310ae48f4295e98a0791b010a85 Mon Sep 17 00:00:00 2001 From: Damian Silbergleith Cunniff Date: Fri, 17 May 2019 07:15:22 -0700 Subject: [PATCH] allow user configs without custom image --- README.md | 11 ++++++----- example/Dockerfile | 2 -- example/{ => conf.d}/nginx.conf | 0 example/docker-compose.yml | 4 +++- src/scripts/startup/link_user_configs.sh | 15 +++++++++++++++ 5 files changed, 24 insertions(+), 8 deletions(-) delete mode 100644 example/Dockerfile rename example/{ => conf.d}/nginx.conf (100%) create mode 100755 src/scripts/startup/link_user_configs.sh diff --git a/README.md b/README.md index 0c795ac..01b4483 100644 --- a/README.md +++ b/README.md @@ -11,13 +11,12 @@ This repository was originally forked from `@henridwyer`, many thanks to him for # Usage -Use this image with a `Dockerfile` such as: -```Dockerfile -FROM staticfloat/nginx-certbot -COPY *.conf /etc/nginx/conf.d/ +Create a config directory for your custom configs: +``` +mkdir conf.d ``` -And a `.conf` file such as: +And a `.conf` file such as in that directory: ```nginx server { listen 443 ssl; @@ -43,6 +42,8 @@ services: - 443:443/tcp environment: - CERTBOT_EMAIL=owner@company.com + volumes: + - ./conf.d:/etc/nginx/user.conf.d ... ``` diff --git a/example/Dockerfile b/example/Dockerfile deleted file mode 100644 index 21c5edd..0000000 --- a/example/Dockerfile +++ /dev/null @@ -1,2 +0,0 @@ -FROM staticfloat/nginx-certbot -COPY *.conf /etc/nginx/conf.d/ \ No newline at end of file diff --git a/example/nginx.conf b/example/conf.d/nginx.conf similarity index 100% rename from example/nginx.conf rename to example/conf.d/nginx.conf diff --git a/example/docker-compose.yml b/example/docker-compose.yml index 8e4bad8..9e2a1af 100644 --- a/example/docker-compose.yml +++ b/example/docker-compose.yml @@ -2,10 +2,12 @@ version: '3' services: proxy: - build: . + image: staticfloat/nginx-certbot restart: always environment: CERTBOT_EMAIL: "your.email@example.com" ports: - "80:80" - "443:443" + volumes: + - ./conf.d:/etc/nginx/user.conf.d diff --git a/src/scripts/startup/link_user_configs.sh b/src/scripts/startup/link_user_configs.sh new file mode 100755 index 0000000..eb987a2 --- /dev/null +++ b/src/scripts/startup/link_user_configs.sh @@ -0,0 +1,15 @@ +#!/bin/sh + +SOURCE_DIR=/etc/nginx/user.conf.d +TARGET_DIR=/etc/nginx/conf.d + +echo "symlinking scripts from ${SOURCE_DIR} to ${TARGET_DIR}" + +if [ ! -d "$SOURCE_DIR" ]; then + echo "no ${SOURCE_DIR}, nothing to do." +else + for conf in ${SOURCE_DIR}/*.conf; do + echo "symlinking: ${conf}" "${TARGET_DIR}/$(basename ${conf})" + ln -s "${conf}" "${TARGET_DIR}/$(basename ${conf})" + done +fi