---
title: "Resolving the 'Cannot Import Name Appengine' Error When Using Certbot with Nginx on Ubuntu 22.04.2"
date: 2023-09-25T17:43:07.000Z
author: Z.SHINCHVEN
tags: [Ubuntu, Certbot, Nginx, Server Setup, Python, Pip, Troubleshooting, Web Development, SSL, SysAdmin, Let's Encrypt]
canonical: https://atlassc.net/2023/09/26/certbot-urllib3-error
---
In the process of setting up Certbot with Nginx on a fresh Ubuntu 22.04.2 server, I encountered a perplexing error:

```log
cannot import name 'appengine' from 'urllib3.contrib' certbot
```

This blog post is dedicated to resolving this specific error. If you're facing this issue, read on as I share the solution I discovered.

## Understanding the Problem

First, let's understand what's causing this error. The issue arises from a conflict between two installations of the same Python package, `urllib3`. 

In our case, `urllib3` is installed twice, once via `apt` (the package-handling utility in Ubuntu), and once via `pip` (the Python package installer). This duplication causes an import error when Certbot tries to import the 'appengine' module from 'urllib3.contrib'.

## The Solution

To resolve this issue, we need to remove the `urllib3` version installed by `pip`. Here's how you can do it:

1. Open your terminal.

2. Type in the following command and hit Enter:

```bash
pip3 uninstall urllib3
```

This command tells `pip3` to uninstall the `urllib3` package. You will be asked to confirm the uninstallation. Press `y` and hit Enter.

And that's it! Your Certbot should now work fine.

## Verifying the Solution

To make sure that the problem is resolved, try running Certbot again. If everything goes well, you should not see the import error anymore.

## Wrapping Up

In this post, we've seen how to solve a common error that occurs when installing and using Certbot with Nginx on Ubuntu 22.04.2. The error is caused by duplicate installations of the `urllib3` package, and the solution is to uninstall the version installed by `pip`.

Remember, it's always a good practice to check for potential conflicts between `apt` and `pip` installations when you encounter similar import errors. 

I hope this blog post was helpful to you. If you encounter any other issues or have any questions, feel free to leave a comment below. Happy coding!

## References

- [stackoverflow: certbot cannot import name 'appengine' from 'urllib3.contrib'](https://stackoverflow.com/questions/76554745/certbot-cannot-import-name-appengine-from-urllib3-contrib)
