mirror of
https://github.com/tiyn/wiki.git
synced 2026-03-18 12:14:46 +01:00
Docker: added guide to find volumes container
This commit is contained in:
@@ -1,7 +1,7 @@
|
|||||||
# Docker
|
# Docker
|
||||||
|
|
||||||
Docker is a virtualization software that deploys docker containers.
|
Docker is a virtualization software that deploys docker containers.
|
||||||
Due to easy handling and reproducable environments it is a useful tool.
|
Due to easy handling and reproducible environments it is a useful tool.
|
||||||
|
|
||||||
## Setup
|
## Setup
|
||||||
|
|
||||||
@@ -23,36 +23,40 @@ This section addresses various features of Docker.
|
|||||||
|
|
||||||
### Virtualize Operating Systems
|
### Virtualize Operating Systems
|
||||||
|
|
||||||
Docker is a tool that can be used to virtualize different programs and softwares.
|
Docker is a tool that can be used to virtualize different programs and software.
|
||||||
Especially for containerizing and virtualizing operating systems (mostly based on
|
Especially for containerizing and virtualizing operating systems (mostly based on
|
||||||
[Linux](/wiki/linux.md)) can be handled by [distrobox](https://github.com/89luca89/distrobox).
|
[Linux](/wiki/linux.md)) can be handled by [Distrobox](https://github.com/89luca89/distrobox).
|
||||||
|
|
||||||
### Run Docker as non-root user
|
### Run Docker as non-root user
|
||||||
|
|
||||||
To run docker as a non-root user you need to add your user to the `docker` group.
|
To run docker as a non-root user you need to add your user to the `docker` group.
|
||||||
To do this create the group docker if it doesn't exist `sudo groupadd docker`
|
To do this, create the group docker if it doesn't exist `sudo groupadd docker`
|
||||||
and then add your user to the group using `sudo usermod -aG docker $USER`.
|
and then add your user to the group using `sudo usermod -aG docker $USER`.
|
||||||
After that relog into your machine and you should be able to run
|
After that log back into your machine.
|
||||||
`docker run hello-world`.
|
Then you should be able to run the following.
|
||||||
|
|
||||||
### Tools and Visualisation
|
```sh
|
||||||
|
docker run hello-world
|
||||||
|
```
|
||||||
|
|
||||||
|
### Tools and Visualization
|
||||||
|
|
||||||
The programs below are useful docker-management systems in different style.
|
The programs below are useful docker-management systems in different style.
|
||||||
|
|
||||||
- [ctop](https://github.com/bcicen/ctop): top-like cli interface for containers
|
- [ctop](https://github.com/bcicen/ctop): top-like CLI interface for containers
|
||||||
- [portainer](https://www.portainer.io/): web ui for managing docker and kubernetes
|
- [Portainer](https://www.portainer.io/): web UI for managing docker and Kubernetes
|
||||||
|
|
||||||
### Enable Nvidia GPUs
|
### Enable Nvidia GPUs
|
||||||
|
|
||||||
To use Nvidia GPUs with docker you need to install the nvidia-cuda-toolkit.
|
To use Nvidia GPUs with docker you need to install the Nvidia CUDA toolkit.
|
||||||
There is a [guide on marmelab](https://marmelab.com/blog/2018/03/21/using-nvidia-gpu-within-docker-container.html)
|
There is a [guide on Marmelab](https://marmelab.com/blog/2018/03/21/using-nvidia-gpu-within-docker-container.html)
|
||||||
that focusses on that topic.
|
that focuses on that topic.
|
||||||
|
|
||||||
### Block remote port access
|
### Block remote port access
|
||||||
|
|
||||||
If you configured a [reverse proxy](/wiki/reverse-proxy.md) to a port chances
|
If you configured a [reverse proxy](/wiki/reverse-proxy.md) to a port chances
|
||||||
are you don't want the port to be accessed outside of the proxy.
|
are you don't want the port to be accessed outside the proxy.
|
||||||
Especially if you set up a authentication over nginx the open port will avoid
|
Especially if you set up an authentication over nginx the open port will avoid
|
||||||
the authentication.
|
the authentication.
|
||||||
This can be changed at the forwarded docker-service by replacing for example
|
This can be changed at the forwarded docker-service by replacing for example
|
||||||
`-p 7000:7000` with `-p 172.17.0.1:7000:7000`.
|
`-p 7000:7000` with `-p 172.17.0.1:7000:7000`.
|
||||||
@@ -62,29 +66,49 @@ network, effectively banning remote access.
|
|||||||
If you use [Traefik](./traefik.md) it is not needed, because you don't have to
|
If you use [Traefik](./traefik.md) it is not needed, because you don't have to
|
||||||
publish ports to reverse proxy them.
|
publish ports to reverse proxy them.
|
||||||
|
|
||||||
### Dockerize a graphical application
|
### Containerize a graphical application
|
||||||
|
|
||||||
A graphical application can easily be dockerized and made available over both
|
A graphical application can easily be containerized using Docker and made available over both
|
||||||
the [web browser](/wiki/web_browser.md) or [VNC](/wiki/vnc.md).
|
the [web browser](/wiki/web_browser.md) or [VNC](/wiki/vnc.md).
|
||||||
For this
|
For this
|
||||||
[jlesages baseimage-gui container](https://hub.docker.com/r/jlesage/baseimage-gui)
|
[jlesages baseimage-gui container](https://hub.docker.com/r/jlesage/baseimage-gui)
|
||||||
can be used.
|
can be used.
|
||||||
|
|
||||||
## Troubleshooting
|
### Find the Container and the Mounting Point of a Volume
|
||||||
|
|
||||||
|
Sometimes it is unclear which container a volume belongs to.
|
||||||
|
This is especially the case if the volume was created automatically and not manually or explicitly
|
||||||
|
during the setup.
|
||||||
|
|
||||||
|
The following command will output the container a volume with the name `<volume-name>` belongs to.
|
||||||
|
|
||||||
|
```sh
|
||||||
|
docker ps -a --filter volume=<volume_name>
|
||||||
|
```
|
||||||
|
|
||||||
|
Additionally, the mounting point is also of interest.
|
||||||
|
To display it, run the following command where `<container-name>` is the name of the container the
|
||||||
|
volume belongs to.
|
||||||
|
|
||||||
|
```sh
|
||||||
|
docker inspect <container-name>
|
||||||
|
```
|
||||||
|
|
||||||
|
## Troubleshooting
|
||||||
|
|
||||||
This section will focus on errors and the fixing of errors of docker.
|
This section will focus on errors and the fixing of errors of docker.
|
||||||
|
|
||||||
### `Error saving credentials: 'Cannot autolaunch D-Bus without X11 $DISPLAY'`
|
### `Error saving credentials: 'Cannot autolaunch D-Bus without X11 $DISPLAY'`
|
||||||
|
|
||||||
As explained by
|
As explained by
|
||||||
[gotam19 in a Docker forum post](https://forums.docker.com/t/docker-login-fails-with-error-message-saving-credentials-cannot-autolaunch-d-bus-without-x11-display/77789)
|
[gotam19 in a Docker forum post](https://forums.docker.com/t/docker-login-fails-with-error-message-saving-credentials-cannot-autolaunch-d-bus-without-x11-display/77789)
|
||||||
this error message only occurs on [Linux](/wiki/linux.md) when trying to login or pulling a Docker
|
this error message only occurs on [Linux](/wiki/linux.md) when trying to log in or pulling a Docker
|
||||||
image.
|
image.
|
||||||
To fix it install [GPG](/wiki/linux/gpg.md) and the `pass`
|
To fix it install [GPG](/wiki/linux/gpg.md) and the `pass`
|
||||||
[package](/wiki/linux/package_manager.md).
|
[package](/wiki/linux/package_manager.md).
|
||||||
Afterwards running the following command should will perform the login to the Docker servers and
|
Afterward running the following command perform the login to the Docker servers and the error
|
||||||
the error message should not come up again.
|
message should not come up again.
|
||||||
|
|
||||||
```sh
|
```sh
|
||||||
docker login
|
docker login
|
||||||
```
|
```
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ It is based on the Remote Frame Buffer protocoll which is also named RFB.
|
|||||||
|
|
||||||
VNC is especially used for accessing graphical applications or
|
VNC is especially used for accessing graphical applications or
|
||||||
[terminals](/wiki/linux/system_console.md) of a remote server,
|
[terminals](/wiki/linux/system_console.md) of a remote server,
|
||||||
[dockerized](/wiki/docker.md#dockerize-a-graphical-application) or virtualized
|
[dockerized](/wiki/docker.md#containerize-a-graphical-application) or virtualized
|
||||||
program.
|
program.
|
||||||
|
|
||||||
## VNC Clients
|
## VNC Clients
|
||||||
|
|||||||
Reference in New Issue
Block a user