diff --git a/dnsmasq/dnsmasq.conf b/dnsmasq/dnsmasq.conf index 4cfc907..8b39677 100644 --- a/dnsmasq/dnsmasq.conf +++ b/dnsmasq/dnsmasq.conf @@ -1,2 +1,9 @@ -# Этот файл будет перезаписан при запуске ./scripts/02-apply-config.sh -# Не редактируйте вручную \ No newline at end of file +address=/.mikan/10.0.0.3 +address=/.mikan.local/10.0.0.3 +local=/.mikan/ +local=/.mikan.local/ +no-resolv +server=1.1.1.1 +server=8.8.8.8 +log-queries +log-facility=/dev/stdout diff --git a/docker-compose.yml b/docker-compose.yml index efe709e..7eed772 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -1,70 +1,87 @@ -version: '3.8' - -services: - nginx-proxy: - image: nginxproxy/nginx-proxy:alpine - container_name: nginx-proxy - restart: unless-stopped - ports: - - "80:80" - - "443:443" - volumes: - - /var/run/docker.sock:/tmp/docker.sock:ro - - ./nginx/certs:/etc/nginx/certs:ro - - ./nginx/vhost.d:/etc/nginx/vhost.d:ro - - ./nginx/html:/usr/share/nginx/html:rw - networks: - devnet: - ipv4_address: ${NGINX_IP} - environment: - - DEFAULT_HOST=welcome.${LOCAL_DOMAIN} - - HTTPS_METHOD=redirect - - SSL_POLICY=Mozilla-Modern - - DEFAULT_SSL_CERT=/etc/nginx/certs/default.crt - - DEFAULT_SSL_KEY=/etc/nginx/certs/default.key - labels: - - "com.github.nginx-proxy.nginx-proxy=true" - - nginx-proxy-companion: - image: nginxproxy/acme-companion - container_name: nginx-proxy-companion - restart: unless-stopped - volumes: - - /var/run/docker.sock:/var/run/docker.sock:ro - - ./nginx/certs:/etc/nginx/certs:rw - - ./acme:/etc/acme.sh - - ./nginx/vhost.d:/etc/nginx/vhost.d:rw - networks: - - devnet - environment: - - DEFAULT_EMAIL=${LETSENCRYPT_EMAIL} - - NGINX_PROXY_CONTAINER=nginx-proxy - - ACME_CA_URI=https://acme-staging-v02.api.letsencrypt.org/directory - depends_on: - - nginx-proxy - - welcome: - image: nginx:alpine - container_name: welcome - restart: unless-stopped - volumes: - - ./nginx/html:/usr/share/nginx/html:ro - environment: - - VIRTUAL_HOST=welcome.${LOCAL_DOMAIN},welcome.${LOCAL_DOMAIN}.local - networks: - - devnet - depends_on: - - nginx-proxy - -networks: - devnet: - driver: bridge - ipam: - config: - - subnet: ${SUBNET} - gateway: ${GATEWAY} - -volumes: - acme: - vhost.d: +version: '3.8' + +services: + nginx-proxy: + image: nginxproxy/nginx-proxy:alpine + container_name: nginx-proxy + restart: unless-stopped + ports: + - "80:80" + - "443:443" + volumes: + - /var/run/docker.sock:/tmp/docker.sock:ro + - ./nginx/certs:/etc/nginx/certs:ro + - ./nginx/vhost.d:/etc/nginx/vhost.d:ro + - ./nginx/html:/usr/share/nginx/html:rw + networks: + devnet: + ipv4_address: ${NGINX_IP} + environment: + - DEFAULT_HOST=welcome.${LOCAL_DOMAIN} + - HTTPS_METHOD=redirect + - SSL_POLICY=Mozilla-Modern + - DEFAULT_SSL_CERT=/etc/nginx/certs/default.crt + - DEFAULT_SSL_KEY=/etc/nginx/certs/default.key + labels: + - "com.github.nginx-proxy.nginx-proxy=true" + + nginx-proxy-companion: + image: nginxproxy/acme-companion + container_name: nginx-proxy-companion + restart: unless-stopped + volumes: + - /var/run/docker.sock:/var/run/docker.sock:ro + - ./nginx/certs:/etc/nginx/certs:rw + - ./acme:/etc/acme.sh + - ./nginx/vhost.d:/etc/nginx/vhost.d:rw + networks: + - devnet + environment: + - DEFAULT_EMAIL=${LETSENCRYPT_EMAIL} + - NGINX_PROXY_CONTAINER=nginx-proxy + - ACME_CA_URI=https://acme-staging-v02.api.letsencrypt.org/directory + depends_on: + - nginx-proxy + + welcome: + image: nginx:alpine + container_name: welcome + restart: unless-stopped + volumes: + - ./nginx/html:/usr/share/nginx/html:ro + environment: + - VIRTUAL_HOST=welcome.${LOCAL_DOMAIN},welcome.${LOCAL_DOMAIN}.local + networks: + - devnet + depends_on: + - nginx-proxy + + dnsmasq: + image: jpillora/dnsmasq + container_name: dnsmasq + restart: unless-stopped + ports: + - "53:53/udp" + - "53:53/tcp" + volumes: + - ./dnsmasq/dnsmasq.conf:/etc/dnsmasq.conf:ro + cap_add: + - NET_ADMIN + networks: + devnet: + ipv4_address: ${DNSMASQ_IP} + healthcheck: + test: ["CMD", "nslookup", "localhost", "127.0.0.1"] + interval: 30s + timeout: 5s + retries: 3 + +networks: + devnet: + external: true + name: devnet + +volumes: + acme: + vhost.d: html: \ No newline at end of file diff --git a/nginx/html/index.html b/nginx/html/index.html index c54cefe..168cb27 100644 --- a/nginx/html/index.html +++ b/nginx/html/index.html @@ -1,7 +1,8 @@ -
Run ./scripts/00-init.sh to generate content
+Добавьте свои сервисы в папку services/