I installed Docker in my machine where I have Ubuntu OS. When I run:
sudo docker run hello-world
All is ok, but I want to hide the sudo
command to make the command shorter.
If I write the command without sudo
docker run hello-world
That displays the following:
docker: Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Post http://%2Fvar%2Frun%2Fdocker.sock/v1.35/containers/create: dial unix /var/run/docker.sock: connect: permission denied. See 'docker run --help'.
The same happens when I try to run:
docker-compose up
How can I resolve this?
Answers
To run Docker commands without using sudo
, you need to add your user to the docker
group. Here's how you can do it:
-
Open a terminal window.
-
Run the following command to add your user to the
docker
group:sudo usermod -aG docker $USER
-
After running the command, you need to log out and log back in again for the changes to take effect. Alternatively, you can run the following command to apply the changes without logging out:
su - $USER
-
Once you've logged back in, you should be able to run Docker commands without using
sudo
. You can verify this by running:docker run hello-world
This should now work without requiring sudo
. Similarly, docker-compose up
should also work without sudo
after adding your user to the docker
group.