Docker

Docker: what is it?

 

Docker allows certain services to be started as containers. A container consists of specific software images that can be loaded from the Internet and started in isolation from the operating system and each other.

For network communication with the container, certain network ports can be made available outside the container. Certain folders within the container can be redirected to the host operating system to make thedata persistent .(So that they are not lost when the container is re-provisioned).

As an example, to provision a database, a Docker container might write the database files and their configuration to the local file system. In this case, the actual database runs isolated in the container after downloading the software images and is accessible from the outside via a network port, e.g. "localhost:1433". The data of the database are in the local file system, the software images can be exchanged with new image versions.

 


Preview Launch Docker containers on Linux.

Launch Docker containers on Linux.

changed: 2022-10-04 from Bernhard (Initial Release: 2022-05-05)

Instructions for installing Docker can be found on the manufacturer's site. For Debian / Ubuntu, I did the installation as follows. ... continue reading

Preview Launch Docker containers under Windows

Launch Docker containers under Windows

changed: 2022-08-22 from Bernhard (Initial Release: 2022-05-05)

How does it work: how does Windows get to the Linux kernel? In order for Docker to be used in Windows, a Linux kernel is required. The reason for this is that Docker builds on features of the Linux kernel and absolutely needs it to run the containers. The Linux kernel, and therefore Docker, is therefore provided in Docker Desktop via a small Linux virtual machine. ... continue reading

Preview secure https connection: Traefik Reverse Proxy + Let's Encrypt

secure https connection: Traefik Reverse Proxy + Let's Encrypt

created: 2023-02-21 from Bernhard

Ready-made Docker containers are available for almost all known web systems, or they can be created relatively easily or existing containers can be adapted. As Docker containers, the web services can be installed and operated very easily. Anyone publishing a web service over the Internet should definitely offer an encrypted connection (SSL) for this today. To control access to one or more containers, a reverse proxy with free Let's Encrypt certificates can be used for SSL offloading, see also: o... ... continue reading

Preview Docker Container GUI graphical web interface with Portainer

Docker Container GUI graphical web interface with Portainer

created: 2023-02-26 from Bernhard

Originally, I managed Docker purely via the command line, which is already very simple with a few simple commands. Portainer provides even more overview and a comfortable admin interface. Portainer itself can also be started as a Docker container and makes managing Docker containers a breeze.   ... continue reading

Preview Traefik: Forward traffic to another server

Traefik: Forward traffic to another server

created: 2022-09-12 from Bernhard

In preparation for moving my websites, I was looking for a way to simply forward all traffic from the old server to the new one. ... continue reading

Preview Moving web servers with Docker containers, theory and practice

Moving web servers with Docker containers, theory and practice

created: 2022-11-06 from Bernhard

Anyone who rents a virtual server or cloud server has to replace it for a new operating system from time to time. At the latest, when updates are no longer provided for the operating system, a server change is inevitable. Some time ago, I switched all websites to Docker containers, which should speed up the move. First, some theory on my thinking, then how my server move went last time. Additionally, I created a video about my last server move, see YouTube video. If you want to skip the the... ... continue reading

Preview Docker data storage: Docker Volumes vs. Host Folders

Docker data storage: Docker Volumes vs. Host Folders

created: 2022-12-26 from Bernhard

I run a handful of Docker containers on a single Linux host. Docker containers are known to be replaced when they are rebuilt or swapped to a newer image version, losing all changed data. To permanently store certain folders of the container, they need to be swapped out via volumes or bind mounts. I usually have specific paths of the containers in defined folders connected to the host for this purpose (bind mounts). One of the reasons for using bind mounts instead of volumes is that I can more e... ... continue reading

Practice: Backup Docker container data: Volumes / Bind Mounts

Practice: Backup Docker container data: Volumes / Bind Mounts

created: 2022-12-26 from Bernhard

In my article "All Docker containers: Moving hosts, theory and practice", I already went a little bit into the topic of backup. If you followed the article, you know that I outsource the data of my Docker containers via bind mounts and back them up with rsync. The backup job is started via crontab. But first, I thought about what actually needs to be backed up when using Docker in a single-server setup. ... continue reading

Preview Docker Compose vs. Docker Swarm: using and understanding it

Docker Compose vs. Docker Swarm: using and understanding it

created: 2022-11-13 from Bernhard

Docker Swarm allows nodes (hosts) to be grouped together into a common federation. This allows containers to be run in any number of instances on any number of nodes (hosts) in the network. In Docker Swarm, the basis for communication between hosts is an overlay network for services: Multi-host networking. As indicated in my article on moving web servers, I tested Docker Swarm as a possible option for a shared cross-host network and gathered some insights on this, which I briefly summarize her... ... continue reading

Preview Docker Swarm, Portainer and Traefik combined

Docker Swarm, Portainer and Traefik combined

created: 2023-01-02 from Bernhard

As mentioned several times on this page, I primarily use the reverse proxy Traefik to access my Docker containers. To be able to manage the containers in a graphical GUI, I also use Portainer. For a single server, the setup fits so far, but if you want to deploy multiple servers, you can use Docker-Swarm for that. I first tested Portainer in combination with Swarm and extended the setup with Traefik including SSL with Let's Encrypt. ... continue reading

Preview https web services as VPN alternative: access to the network

https web services as VPN alternative: access to the network

created: 2023-02-20 from Bernhard

For a long time I used a VPN (Virtual Private Network) to access the home network from the Internet. And for along time I thought that a VPN was without alternative for accessing data or devices on one's own network. The VPN allows a connection from the Internet to the own network (LAN), just as if the device would be in the WLAN at home. But do I really need access to the entire network? Wouldn't it be better to enable only certain services? What do I need from my own network on the road?... ... continue reading

Preview Traefik and oAuth: Log in your own web services with Google.

Traefik and oAuth: Log in your own web services with Google.

created: 2023-02-13 from Bernhard

The security of a web service is largely dependent on its user login. If a web service does not have its own user logon, a logon can simply be activated upstream when using the Traefik reverse proxy. The access to the actual web service is only allowed if the login to the reverse proxy was successful. The simplest variant for an upstream login is a basic authentication. Somewhat more complex, but possibly more convenient and also usually even more secure is the use of OAuth. OAuth allows logging... ... continue reading

Preview Visitor statistics: Matomo, Google Analytic replacement self-hosting

Visitor statistics: Matomo, Google Analytic replacement self-hosting

created: 2023-02-01 from Bernhard

For those who already use Docker, the open source web analytics software Matomo to easily collect and analyze visitor statistics for their own websites. Unlike Google Analytics, this does not allow the data to be sent to a cloud service, but rather collected on your own self-hosted server. ... continue reading

Preview Spell checker: run LanguageTool server in Docker

Spell checker: run LanguageTool server in Docker

created: 2022-10-23 from Bernhard

While looking for a better spell checker for the browser, I came across the open source software LanguageTool. LanguageTool corrects errors for English, Spanish, French, German, Portuguese, Polish, Dutch and more than 20 other languages. In doing so, LanguageTool also finds errors that a simple spell checker cannot detect. Those who do not want to send their texts to a cloud service can run a LanguageTool server themselves for this purpose. Since the service is also available as a Docker version... ... continue reading

Preview Running Bitwarden in Docker - Setup step by step

Running Bitwarden in Docker - Setup step by step

changed: 2023-02-26 from Bernhard (Initial Release: 2022-08-12)

Bitwarden is a web-based password manager, similar to LastPass, but open source and the ability to run (host) it yourself. How Bitwarden compares to other password managers, I have considered on the following page: Password Managers Secure? KeePass vs LastPass vs Bitwarden. Bitwarden consists of several services, which can be provided via different containers. The relatively complex setup has been simplified with "Bitwarden Unified" especially for self-hosting by packing all services into one co... ... continue reading

Preview WordPress in Docker incl. HTTPS Let's Encrypt setup

WordPress in Docker incl. HTTPS Let's Encrypt setup

created: 2022-11-16 from Bernhard

The currently most widespread blogging software WordPress can be operated easily and cost-effectively in Docker containers, among other things. A virtual server or cloud server from a well-known hosting provider can be used as a server, see also: Provider change HostEurope vs Hetzner, vServer vs Cloud Server. If you are not afraid of running your own web server, you can use the setup presented here torun one or more WordPress sites onit, including a free https certificate. The cost of a virtual... ... continue reading

Preview Nextcloud Server Docker | Setup + https: Let's Encrypt [ssl]

Nextcloud Server Docker | Setup + https: Let's Encrypt [ssl]

changed: 2023-02-26 from Bernhard (Initial Release: 2022-05-05)

To synchronize contacts, appointments, and photos of my NAS, I tested Nextcloud and thus turned my back on other cloud providers for my private data. Thanks to Docker, the installation is easier and more flexible than ever, allowing Nextcloud to run on almost any hardware. ... continue reading

Preview Running Docker Mailserver yourself | a field report

Running Docker Mailserver yourself | a field report

changed: 2022-12-23 from Bernhard (Initial Release: 2022-05-04)

With the help of a suitable Docker image, it is relatively easy to run a mail server yourself. I originally used the integrated mail server of the Host Europe vServer (Plesk) and came across a very simple Docker container while looking for a replacement. The lightweight container provides a mail server without a graphical management interface, but can be managed with a few simple commands. Any email client can be used to send and receive the mails, for this POP3 or IMAP is offered for receiving... ... continue reading

Preview Nginx-LetsEncrypt reverse proxy in practice

Nginx-LetsEncrypt reverse proxy in practice

changed: 2022-08-10 from Bernhard (Initial Release: 2022-05-04)

In addition to Traefk, the Nginx Proxy Automation project can be used to run multiple web services with corresponding SSL certificates on one server . The setup involves several Docker containers that together provide an Nginx reverse proxy including certificate management and SSL offloading. Once the containers are started via Docker Compose, they take care of serving multiple websites over a common IP and its certificate management: for issuing certificates for new containers and renewing the... ... continue reading

Preview InfluxDB: Time series database in Docker
Smart Home /

InfluxDB: Time series database in Docker

created: 2022-05-09 from Bernhard

An InfluxDB database is a database optimized for time data. For visualization InfluxDB is often used in combination with Grafana. Note: This article refers to InfluxDB version 1, information about version 2 will follow soon. ... continue reading

Zigbee2MQTT vs deCONZ and Phoscon

Zigbee2MQTT vs deCONZ and Phoscon

created: 2023-03-14 from Bernhard

Both Phoscon and Zigbee2MQTT are programs for controlling a Zigbee gateway, like the Conbee 2. The primary task of a Zigbee gateway is to connect and centrally control Zigbee devices. After initial difficulties with stability, Phoscon worked relatively well for me recently, but after more than a year of deCONZ and Phoscon I switched to Zigbee2MQTT.One reason for the change was a dimmer switch, which I did not get stable under Phoscon until last: Sometimes it worked, sometimes not, see also: Conb... ... continue reading

Preview Grafana: Docker - visualize data and define alarms
Smart Home /

Grafana: Docker - visualize data and define alarms

created: 2022-05-09 from Bernhard

Grafana is a web application for visualizing data. With Grafana you can create nice charts or define alarms in a few minutes. ... continue reading

MQTT - Broker in Docker
Smart Home /

MQTT - Broker in Docker

created: 2022-12-11 from Bernhard

MQTT (Message Queuing Telemetry Transport) is an open network protocol for transmitting messages between devices. An MQTT broker, like the open source Mosquitto server, is a simple solution to receive data from SmartHome devices or to control them .As an example, I use MQTT with an ESP32 microcontroller to have it send values to the MQTT broker, which can be retrieved via the MQTT integration in HomeAssistant. In addition, I use the MQTTBroker to communicate my Zigbee devices via Zigbee2MQT, see... ... continue reading

Preview Commissioning Zigbee2MQTT in Docker - step by step

Commissioning Zigbee2MQTT in Docker - step by step

created: 2023-03-01 from Bernhard

Zigbee2MQTT is an open source Zigbee bridge which can be easily integrated into existing smart home solutions thanks to the MQTT network protocol. As an example, Zigbee2MQTT combined with MQTT broker Mosquitto and Home Assistant can collect, display, record and control data from Zigbee devices. The setup described here uses Docker as a base. Manufacturer's website: https://www.zigbee2mqtt.io ... continue reading

Preview Docker commands in practice

Docker commands in practice

created: 2022-08-29 from Bernhard

Docker containers can be started, updated and managed using terminal commands. In the post I note commands that I have needed so far for Docker and corresponding examples: ... continue reading

√úbersetzung Deutsch

By continuing to browse the site, you agree to our use of cookies. More Details