Resolving Docker  Desktop 'Unable to log in' warning on Fedora 38 due to Pass initialization

Resolving Docker Desktop 'Unable to log in' warning on Fedora 38 due to Pass initialization

Unable to log in

Docker Desktop relies on passto store credentials in gpg2-encrypted files.

Before signing in to Docker Hub from the Docker Dashboard or the Docker menu, you must initialize pass. Docker Desktop displays a warning if you've not initialized pass.


Pass is the standard unix password manager.

With pass, each password lives inside of a gpg encrypted file whose filename is the title of the website or resource that requires the password. These encrypted files can be manipulated using standard command line file management utilities.

pass makes managing these individual password files extremely easy. All passwords live in ~/.password-store, and pass provides some nice commands for adding, editing, generating, and retrieving passwords.

It is a very short and simple shell script. It's capable of temporarily putting passwords on your clipboard and tracking password changes using git.

Let's get down to business

shall we?

The-office GIFs - Get the best GIF on GIPHY


Check your OS (optional)

This step is just to ensure you have Fedora 38 Linux installed. You can pick up one command or you can use them all.




cat /etc/os-release






When you run hostnamectl without any options, it provides detailed information about the system's hostname, operating system, kernel, and other system-related settings.


lsb_release -a


lsb_release is a command-line utility commonly found in Linux distributions that adhere to the Linux Standard Base (LSB). The LSB is a standardization initiative that aims to increase compatibility between different Linux distributions by defining a common set of libraries and conventions.


uname -a


The uname -a command is used to display detailed system information about the Linux operating system. It provides information about the system's kernel and other system-related details.

Pass is not initialized



Generate a gpg key

gpg --generate-key


The gpg --generate-key command is used to generate a new GPG (GNU Privacy Guard) key pair.

GPG is a widely used open-source software for encrypting and signing data and is commonly used for securing email communications, verifying the authenticity of software packages, and protecting sensitive information.

Provide information

Provide real name and email address

Choose a passphrase

Visualize your gpg key

List the keys

The following lists all the public keys

gpg --list-keys


Just in case you want to list all your private keys, you should run the following command:
gpg --list-secret-keys

Copy your public key

Initialize pass

pass init your-key

It should be something like the following:

pass init DAZF877093FCF01Z4BFA3A0256CD93F8BCFC51B4


Pass is initialized



Open Docker Desktop

Click on sign-in


Proceed to Docker Desktop

Click on Open Docker Desktop URI handler

Logged in

Now, you should see your logged in.



Happy Season 2 GIF by The Office - Find & Share on GIPHY

Let's become friends

Final thoughts

Thank you for reading this article.

If you have any questions, thoughts, suggestions, or corrections, please share them with us.

We appreciate your feedback and look forward to hearing from you.