10-nginx.sh 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738
  1. #!/usr/bin/env bash
  2. IMAGE_FAMILY=$(docker-image-info family)
  3. # Remove daemon statement (will be added as command line argument)
  4. go-replace --mode=lineinfile --regex --regex-backrefs \
  5. -s '^[\s#]*daemon ' -r '' \
  6. -- /etc/nginx/nginx.conf
  7. go-replace --mode=line --regex --regex-backrefs \
  8. -s '^([ \t]*access_log)[ \t]*([^\t ;]+)(.*;)$' -r '$1 /docker.stdout $3' \
  9. -s '^([ \t]*error_log)[ \t]*([^\t ;]+)(.*;)$' -r '$1 /docker.stderr $3' \
  10. -- /etc/nginx/nginx.conf
  11. # Enable nginx main config
  12. mkdir -p /etc/nginx/conf.d/
  13. ln -sf /opt/docker/etc/nginx/main.conf /etc/nginx/conf.d/10-docker.conf
  14. rm -f \
  15. /etc/nginx/sites-enabled/default \
  16. /etc/nginx/conf.d/default.conf
  17. if [[ "$IMAGE_FAMILY" == "RedHat" ]] || [[ "$IMAGE_FAMILY" == "Alpine" ]]; then
  18. ln -sf /opt/docker/etc/nginx/nginx.conf /etc/nginx/nginx.conf
  19. fi
  20. # Clear log dir
  21. rm -rf /var/lib/nginx/logs
  22. mkdir -p /var/lib/nginx/logs
  23. # Set log to stdout/stderr
  24. ln -sf /var/lib/nginx/logs/access.log /docker.stdout
  25. ln -sf /var/lib/nginx/logs/error.log /docker.stderr
  26. # Fix rights of ssl files
  27. chown -R root:root /opt/docker/etc/nginx/ssl
  28. find /opt/docker/etc/nginx/ssl -type d -exec chmod 750 {} \;
  29. find /opt/docker/etc/nginx/ssl -type f -exec chmod 640 {} \;