# Documentation for installing certbot

**URL:** https://community.letsencrypt.org/t/documentation-for-installing-certbot/173219
**Category:** Client dev
**Created:** [March 4, 2022, 11:43pm UTC](https://community.letsencrypt.org/t/documentation-for-installing-certbot/173219 "2022-03-04T23:43:52Z")
**Posts on this page:** 8
**Page:** 1

<div class="post-metadata">

### Author: ![Berniek](https://avatars.discourse-cdn.com/v4/letter/b/4491bb/32.png) [@Berniek](https://community.letsencrypt.org/u/Berniek)
#### Post date: [March 4, 2022, 11:43pm UTC](https://community.letsencrypt.org/t/documentation-for-installing-certbot/173219/1 "2022-03-04T23:43:52Z")

</div>

First post so be gentle 🙂  
(Not sure where this should go)  
The documentation on installing [certbot](https://certbot.eff.org/instructions?ws=nginx&os=ubuntufocal) is brilliant for a newbie (me).  
There is one step missing however before step 9 " **Confirm that Certbot worked**"  
Since this is a step by step instruction it needs "sudo service nginx restart" as part of step 9 or before it  
I guess it should be self evident to experienced users and It didn't take long (which is unusual) for me to figure out what was needed

---

<div class="post-metadata">

### Author: ![9peppe](https://sea3.discourse-cdn.com/letsencrypt/user_avatar/community.letsencrypt.org/9peppe/32/31596_2.png) [@9peppe](https://community.letsencrypt.org/u/9peppe)
#### Post date: [March 4, 2022, 11:56pm UTC](https://community.letsencrypt.org/t/documentation-for-installing-certbot/173219/2 "2022-03-04T23:56:54Z")

</div>

I think reloading Nginx is done in step 7. 😉

(Either automatically or manually if you use certonly and manual install -- what's missing is a `--deploy-hook` when using certonly)

---

<div class="post-metadata">

### Author: ![\_az](https://avatars.discourse-cdn.com/v4/letter/_/22d042/32.png) [@\_az](https://community.letsencrypt.org/u/_az)
#### Post date: [March 5, 2022, 4:19am UTC](https://community.letsencrypt.org/t/documentation-for-installing-certbot/173219/3 "2022-03-05T04:19:41Z")

</div>

> [@9peppe](#):
>
> what's missing is a `--deploy-hook` when using certonly

There are a couple of non-intuitive aspects here:

1. If you create a certificate using `certbot certonly --nginx` as show on that page, all future renewals (via `certbot renew`/the cron job) will automatically reload nginx. In that sense, a `--deploy-hook` should not be required.
2. If you create, renew or replace a certificate using `certbot certonly --nginx`, nginx won't get reloaded. However, once [this PR](https://github.com/certbot/certbot/pull/9184) is merged, the behavior will match (1) and a reload will occur.

With the documentation in question, I am not fully understanding where @Berniek ran into issues.

If using `certbot --nginx`, no nginx restart would have been required, as Certbot would do it on its own.

If using `certbot certonly --nginx`, the nginx configuration would have to be updated by hand after the creation of the certificate, so the reload would have been superfluous anyway. (Except in the case where `certonly` is being used to renew/replace the certificate, which will be addressed by (2)).

@Berniek if you have the inclination, I'd appreciate if you could try corroborate your experience with what I've tried to describe here, thank you ❤ .

---

<div class="post-metadata">

### Author: ![Berniek](https://avatars.discourse-cdn.com/v4/letter/b/4491bb/32.png) [@Berniek](https://community.letsencrypt.org/u/Berniek)
#### Post date: [March 5, 2022, 7:07am UTC](https://community.letsencrypt.org/t/documentation-for-installing-certbot/173219/4 "2022-03-05T07:07:37Z")

</div>

Thank you for your replies  
Boy is my face red 🥵  
It was coincidence that a nginx reload fixed my problem. It was a caching issue with my browser and I actually did a reload of the website after I reloaded nginx.  
I think when i went to the website it used the cache version of the page but the reload actually did a real reload.  
I am still learning & playing around.  
Of all the websites telling me how to do things (most of their content copied and lot just not correct - damn google and their ad revenue!) this documentation is really good at not just telling me how its done but explaining why to do it as well.

---

<div class="post-metadata">

### Author: ![9peppe](https://sea3.discourse-cdn.com/letsencrypt/user_avatar/community.letsencrypt.org/9peppe/32/31596_2.png) [@9peppe](https://community.letsencrypt.org/u/9peppe)
#### Post date: [March 5, 2022, 9:15am UTC](https://community.letsencrypt.org/t/documentation-for-installing-certbot/173219/5 "2022-03-05T09:15:25Z")

</div>

(you put the same command in (1) and (2). I assume there's no `certonly` in (1))

---

<div class="post-metadata">

### Author: ![\_az](https://avatars.discourse-cdn.com/v4/letter/_/22d042/32.png) [@\_az](https://community.letsencrypt.org/u/_az)
#### Post date: [March 5, 2022, 9:40am UTC](https://community.letsencrypt.org/t/documentation-for-installing-certbot/173219/6 "2022-03-05T09:40:06Z")

</div>

Intentionally so, I'm just struggling to describe the behavior in a straightforward way.

Maybe:

1. If you set an installer, it will get reloaded at renewal time (via `certbot renew`). This is the case even if the certificate was created using `certonly`. (`--nginx` is shorthand for `--authenticator nginx --installer nginx`).
2. In an upcoming release, the `certonly` verb will _also_ reload the installer, if one is specified.

---

<div class="post-metadata">

### Author: ![9peppe](https://sea3.discourse-cdn.com/letsencrypt/user_avatar/community.letsencrypt.org/9peppe/32/31596_2.png) [@9peppe](https://community.letsencrypt.org/u/9peppe)
#### Post date: [March 5, 2022, 9:57am UTC](https://community.letsencrypt.org/t/documentation-for-installing-certbot/173219/7 "2022-03-05T09:57:42Z")

</div>

So if I run

`certbot certonly --webroot -w /some/path --installer nginx`  
or  
`certbot certonly --webroot -w /some/path --deploy-hook "some command"`

It will get reloaded on renewal. (Even though I don't know if the difference between `certonly` and `run` is meaningful in these commands)

But if I run

`certbot certonly --webroot -w /some/path`

it will not.

---

<div class="post-metadata">

### Author: ![system](https://global.discourse-cdn.com/letsencrypt/original/3X/c/a/ca6c06ea1ea201324bba7048c6841ce60236468d.png) [@system](https://community.letsencrypt.org/u/system)
#### Post date: [April 4, 2022, 9:58am UTC](https://community.letsencrypt.org/t/documentation-for-installing-certbot/173219/8 "2022-04-04T09:58:23Z")

</div>

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.
