diff --git a/plugins/nginx-vhosts/install b/plugins/nginx-vhosts/install index f03b0b80c..2341b3202 100755 --- a/plugins/nginx-vhosts/install +++ b/plugins/nginx-vhosts/install @@ -5,18 +5,14 @@ add-apt-repository -y ppa:nginx/stable apt-get update apt-get install -y nginx dnsutils -cat< /etc/init/nginx-reloader.conf -description "Dokku nginx reloader service" - -start on runlevel [2345] -stop on runlevel [!2345] - -script - [[ -f /home/git/reload-nginx ]] && rm -rf /home/git/reload-nginx - echo | sudo -u git nc -l -U /home/git/reload-nginx && /etc/init.d/nginx reload -end script -respawn -EOF +if ! grep -q dokku-nginx-reload "/etc/sudoers"; then + touch /etc/sudoers.tmp + cp /etc/sudoers /tmp/sudoers.new + echo "%dokku ALL=(ALL)NOPASSWD:/etc/init.d/nginx reload # dokku-nginx-reload" >> /tmp/sudoers.new + echo "%git ALL=(ALL)NOPASSWD:/etc/init.d/nginx reload # dokku-nginx-reload" >> /tmp/sudoers.new + EDITOR="cp /tmp/sudoers.new" visudo + rm /tmp/sudoers.new +fi echo "include /home/git/*/nginx.conf;" > /etc/nginx/conf.d/dokku.conf @@ -25,4 +21,3 @@ sed -i 's/# server_names_hash_bucket_size/server_names_hash_bucket_size/' /etc/n [[ $(dig +short $HOSTNAME) ]] && echo $HOSTNAME > /home/git/VHOST /etc/init.d/nginx start -start nginx-reloader || true diff --git a/plugins/nginx-vhosts/post-deploy b/plugins/nginx-vhosts/post-deploy index 79f77b907..1a02d7118 100755 --- a/plugins/nginx-vhosts/post-deploy +++ b/plugins/nginx-vhosts/post-deploy @@ -79,5 +79,5 @@ EOF echo "http://$hostname" > "$HOME/$APP/URL" fi pluginhook nginx-pre-reload $APP - nc -U $HOME/reload-nginx + sudo /etc/init.d/nginx reload fi