{"id":16770204,"url":"https://github.com/ypereirareis/nginx-proxy-letsencrypt","last_synced_at":"2025-04-10T19:43:42.027Z","repository":{"id":79249242,"uuid":"69242387","full_name":"ypereirareis/nginx-proxy-letsencrypt","owner":"ypereirareis","description":"Docker configuration to use letsencrypt automatically with jwilder nginx reverse proxy","archived":false,"fork":false,"pushed_at":"2017-04-06T11:42:52.000Z","size":15,"stargazers_count":5,"open_issues_count":0,"forks_count":2,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-03-24T17:21:31.697Z","etag":null,"topics":["automation","docker","docker-image","letsencrypt","nginx-proxy","proxy"],"latest_commit_sha":null,"homepage":null,"language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ypereirareis.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2016-09-26T11:13:21.000Z","updated_at":"2020-09-27T12:07:54.000Z","dependencies_parsed_at":"2023-05-31T21:46:28.242Z","dependency_job_id":null,"html_url":"https://github.com/ypereirareis/nginx-proxy-letsencrypt","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ypereirareis%2Fnginx-proxy-letsencrypt","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ypereirareis%2Fnginx-proxy-letsencrypt/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ypereirareis%2Fnginx-proxy-letsencrypt/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ypereirareis%2Fnginx-proxy-letsencrypt/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ypereirareis","download_url":"https://codeload.github.com/ypereirareis/nginx-proxy-letsencrypt/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248281424,"owners_count":21077423,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["automation","docker","docker-image","letsencrypt","nginx-proxy","proxy"],"created_at":"2024-10-13T06:23:13.098Z","updated_at":"2025-04-10T19:43:42.017Z","avatar_url":"https://github.com/ypereirareis.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Nginx reverse Proxy Lets Encrypt\n\nDocker configuration to use letsencrypt automatically with jwilder nginx reverse proxy\n\n## TL;DR\n\nA configuration to generate and renew your certificates automatically with ets Encrypt and Jwilder nginx reverse proxy.\n\nYou need **docker 1.12+** and **docker-compose 1.8+ (v2)**\n\n* Reverse proxy container name =\u003e **michel**\n* Reverse proxy network name =\u003e **nginx-proxy**\n* Starting the stack =\u003e `make install`\n\nThe reverse proxy is connected to the default bridge network thanks to the Makefile.\n\n```\ndocker network connect bridge michel || true\n```\n\n## Start \n\n```\ngit clone git@github.com:ypereirareis/nginx-proxy-letsencrypt.git\ncd nginx-proxy-letsencrypt\nmake install\n```\n\n## Docker compose configuration\n\n```\nversion: '2'\nservices:\n  michel-nginx:\n    image: jwilder/nginx-proxy\n    container_name: michel\n    restart: always\n    ports:\n      - \"80:80\"\n      - \"443:443\"\n    volumes:\n      - \"/var/run/docker.sock:/tmp/docker.sock:ro\"\n      - \"/etc/nginx/conf.d\"\n      - \"/etc/nginx/vhost.d\"\n      - \"/usr/share/nginx/html\"\n      - \"./conf/proxy.conf:/etc/nginx/conf.d/my_proxy.conf:ro\"\n#      - \"PATH_TO_PASSWORDS:/etc/nginx/htpasswd\"\n#      - \"PATH_TO_CERTS/certs:/etc/nginx/certs:ro\"\n#      - \"PATH_TO_CUSTOM_CONFIG:/etc/nginx/conf.d/custom.conf:ro\"\n    networks:\n      - nginx-proxy\n\n  michel-letsencrypt:\n    image: jrcs/letsencrypt-nginx-proxy-companion\n    restart: always\n    container_name: michel-letsencrypt\n    volumes_from:\n      - michel-nginx\n    volumes:\n      - \"/var/run/docker.sock:/var/run/docker.sock:ro\"\n      - \"PATH_TO_CERTS/certs:/etc/nginx/certs:rw\"\n    networks:\n      - nginx-proxy\n#    environment:\n#     - ACME_CA_URI=https://acme-staging.api.letsencrypt.org/directory\n\nnetworks:\n  nginx-proxy:\n    external:\n      name: nginx-proxy\n\n```\n\n## How it works\n\nConfiguration based on those repositories:\n\n* [https://github.com/JrCs/docker-letsencrypt-nginx-proxy-companion](https://github.com/JrCs/docker-letsencrypt-nginx-proxy-companion)\n* [https://github.com/fatk/docker-letsencrypt-nginx-proxy-companion-examples](https://github.com/fatk/docker-letsencrypt-nginx-proxy-companion-examples)\n\nI advise you to read the documentation of those repositories...\nand [this section in particular](https://github.com/JrCs/docker-letsencrypt-nginx-proxy-companion#lets-encrypt).\n\n### Volumes\n\n**/etc/nginx/conf.d**\n\nNginx configuration files are generated into this repository by the reverse proxy.\n\n**/etc/nginx/vhost.d**\n\nThe \"letsencrypts\" docker container generates temporary virtual hosts to allow [https://letsencrypt.org/](https://letsencrypt.org/) to verify the domain name.\n\n**/usr/share/nginx/html**\n\nThe \"letsencrypts\" docker container generates a file into this volume.\nThe file is accessed by [https://letsencrypt.org/](https://letsencrypt.org/) during the domain validation process.\n\n**PATH_TO_CERTS/certs:/etc/nginx/certs:ro** \n\nThe path where Letsencrypt certificates are going to be generated.\nThe certs generation can be long.... please wait before killing everything !\n\n**PATH_TO_PASSWORDS:/etc/nginx/htpasswd**  \n**PATH_TO_CUSTOM_CONFIG:/etc/nginx/conf.d/custom.conf:ro**  \n\nThose two volumes are here to add custom configuration, see [https://github.com/jwilder/nginx-proxy](https://github.com/jwilder/nginx-proxy)\n\n## LICENSE\n\nThe MIT License (MIT)\n\nCopyright (c) 2017 Yannick Pereira-Reis\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fypereirareis%2Fnginx-proxy-letsencrypt","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fypereirareis%2Fnginx-proxy-letsencrypt","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fypereirareis%2Fnginx-proxy-letsencrypt/lists"}