I'm very new to Linux. But i'm trying to create a docker-compose file that starts my expressjs api and my plain html website. To that i want docker-compose to renew my letsencrypt ssl certificates. When i run this i get this errors:
nginx-proxy | dockergen.1 | 2023/12/03 16:22:38 Template error: open /etc/nginx/certs: no such file or directory
My docker-compose.yml is located in root, maybe thats the problem?
This is my docker-compose file:
version: '3'
services:
nginx-proxy:
image: jwilder/nginx-proxy:alpine
container_name: nginx-proxy
ports:
- "80:80"
- "3000:3000"
volumes:
- /var/run/docker.sock:/tmp/docker.sock:ro
environment:
- DEFAULT_HOST=default.local
networks:
- app-network
restart: always
dockergen:
image: jwilder/docker-gen:latest
container_name: dockergen
command: -notify-sighup nginx-proxy -watch -wait 5s:30s /app/companion-nginx.tmpl ./etc/nginx/conf.d/default.conf
volumes:
- /var/run/docker.sock:/tmp/docker.sock:ro
- ./nginx.tmpl:/app/companion-nginx.tmpl:ro
networks:
- app-network
depends_on:
- nginx-proxy
restart: always
nginx-letsencrypt:
image: jrcs/letsencrypt-nginx-proxy-companion
container_name: nginx-letsencrypt
volumes:
- /var/run/docker.sock:/var/run/docker.sock:ro
volumes_from:
- nginx-proxy
networks:
- app-network
depends_on:
- nginx-proxy
environment:
- NGINX_PROXY_CONTAINER=nginx-proxy
restart: always
appenings-api:
image: my-other-image-container-url
container_name: appenings-api
expose:
- "3000"
environment:
- VIRTUAL_HOST=my-other-domain
- LETSENCRYPT_HOST=my-other-domain
- LETSENCRYPT_EMAIL=my-domain
networks:
- app-network
restart: always
appenings-web:
image: my-image-container-url
container_name: appenings-web
expose:
- "80"
environment:
- VIRTUAL_HOST=my-domain
- LETSENCRYPT_HOST=my-domain
- LETSENCRYPT_EMAIL=my-email
networks:
- app-network
restart: always
networks:
app-network:
driver: bridge
You have to create it as a volume using
nginx-proxy:
volumes:
- <volume>:/etc/nginx/certs:ro
- <volume2>:/usr/share/nginx/html
nginx-letsencrypt:
volumes:
- <volume>:/etc/nginx/certs:ro
- <volume2>:/usr/share/nginx/html
In order to do the challenge using and to store and read the cert from