Modius - Techblog

  • Ansible
  • Docker
  • DevOps
  • Gastautor werden
  • Newsletter abonnieren
  • Über Mich
  • Kontakt

Docker unter CentOS 7 richtig verwenden

Veröffentlicht am 9. März 2018 von Christian Piazzi 1 Kommentar , Aktualisiert am 12. Juli 2020
Geschätzte Lesezeit: 2 Minuten

Titelbild Docker unter CentOS - gestapelte Schiffscontainer

Docker ist zwar kein brandaktuelles Thema mehr, dennoch lohnt es sich mal einen Blick auf Docker zu werfen. Neben der Möglichkeiten für Developer und DevOps Themen findet Docker zum Beispiel auch im Bereich Data Science und Big Data seinen Platz.

In diesem ersten Artikel zu Docker will ich einmal zeigen, wie man die Software auf einem CentOS Server installiert und sich bereits fertige Container auf seinen Server herunterladen kann.

Inhaltsverzeichnis

Installation von Docker unter Centos

Um Docker auf unserem System zu installieren, kann der folgende Befehl verwendet werden. Dieser fügt das Repository auf unserem System hinzu und installiert anschließend die aktuelle Docker Version.

1
curl -fsSL https://get.docker.com/ | sh

Nach der Installation wird auf unserem System der entsprechende Service gestartet. Dafür kann der folgende Befehl verwendet werden.

1
sudo systemctl start docker

Damit der Service auch nach einem Neustart zur Verfügung steht, führen wir noch den folgenden Befehl aus.

1
sudo systemctl enable docker

Ausführen von Docker ohne root Rechte

Auf manchen Systemen kann es praktisch sein, wenn man Docker ohne entsprechende root Rechte auf dem System ausführen kann. Dafür muss ich den folgenden Befehl mit dem entsprechenden User durchführen. Da ich mich zur Zeit mit dem User angemeldet habe, verwende ich $(whoami).

1
sudo usermod -aG docker $(whoami)

Arbeiten mit Docker Images

Ein Image lässt sich relativ einfach mit dem Befehl docker run „ImageName“ starten. Im folgenden Codebeispiel sehen wir, wie ich auf dem CentOS System hello-world ausführe und was dabei passiert.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
docker run hello-world
Unable to find image 'hello-world:latest' locally
latest: Pulling from library/hello-world
ca4f61b1923c: Pull complete
Digest: sha256:083de497cff944f969d8499ab94f07134c50bcf5e6b9559b27182d3fa80ce3f7
Status: Downloaded newer image for hello-world:latest
 
Hello from Docker!
This message shows that your installation appears to be working correctly.
 
To generate this message, Docker took the following steps:
1. The Docker client contacted the Docker daemon.
2. The Docker daemon pulled the "hello-world" image from the Docker Hub.
    (amd64)
3. The Docker daemon created a new container from that image which runs the
    executable that produces the output you are currently reading.
4. The Docker daemon streamed that output to the Docker client, which sent it
    to your terminal.
 
To try something more ambitious, you can run an Ubuntu container with:
$ docker run -it ubuntu bash
 
Share images, automate workflows, and more with a free Docker ID:
https://cloud.docker.com/
 
For more examples and ideas, visit:
https://docs.docker.com/engine/userguide/

Da auf dem System kein Image mit dem Namen hello-world vorhanden ist, wird ein entsprechendes Image aus dem Repository heruntergeladen. Anschließend wird das Image ausgeführt, was man durch die Ausgabe „Hello from Docker!“ sieht.

Im nächsten Schritt wollen wir remote nach entsprechenden Images suchen. Ich suche hier jetzt zum Beispiel mal alle Images die CentOS im Namen haben:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
docker search centos
NAME                               DESCRIPTION                                     STARS               OFFICIAL            AUTOMATED
centos                             The official build of CentOS.                   4055                [OK]
ansible/centos7-ansible            Ansible on Centos7                              105                                     [OK]
jdeathe/centos-ssh                 CentOS-6 6.9 x86_64 / CentOS-7 7.4.1708 x86_…   91                                      [OK]
consol/centos-xfce-vnc             Centos container with "headless" VNC session…   45                                      [OK]
imagine10255/centos6-lnmp-php56    centos6-lnmp-php56                              38                                      [OK]
tutum/centos                       Simple CentOS docker image with SSH access      36
gluster/gluster-centos             Official GlusterFS Image [ CentOS-7 +  Glust…   22                                      [OK]
centos/python-35-centos7           Platform for building and running Python 3.5…   19
openshift/base-centos7             A Centos7 derived base image for Source-To-I…   17
kinogmt/centos-ssh                 CentOS with SSH                                 17                                      [OK]
openshift/jenkins-2-centos7        A Centos7 based Jenkins v2.x image for use w…   10
centos/postgresql-96-centos7       PostgreSQL is an advanced Object-Relational …   7
openshift/mysql-55-centos7         DEPRECATED: A Centos7 based MySQL v5.5 image…   6
darksheer/centos                   Base Centos Image -- Updated hourly             3                                       [OK]
openshift/jenkins-1-centos7        DEPRECATED: A Centos7 based Jenkins v1.x ima…   3
pivotaldata/centos-gpdb-dev        CentOS image for GPDB development. Tag names…   3
openshift/wildfly-101-centos7      A Centos7 based WildFly v10.1 image for use …   3
blacklabelops/centos               CentOS Base Image! Built and Updates Daily!     1                                       [OK]
miko2u/centos6                     CentOS6 日本語環境                                   1                                       [OK]
pivotaldata/centos-mingw           Using the mingw toolchain to cross-compile t…   1
pivotaldata/centos                 Base centos, freshened up a little with a Do…   1
openshift/wildfly-100-centos7      A Centos7 based WildFly v10.0 image for use …   1
pivotaldata/centos-gcc-toolchain   CentOS with a toolchain, but unaffiliated wi…   0
jameseckersall/sonarr-centos       Sonarr on CentOS 7                              0                                       [OK]
smartentry/centos                  centos with smartentry                          0                                       [OK]

So haben wir die Möglichkeit zu sehen, welche Images es bereits zu einem bestimmten Signalwort schon gibt und wir müssen an dieser Stelle das Rad nicht neu erfinden.

Habe ich ein Image gefunden, welches ich nun verwenden will, kann ich dieses mit dem folgenden Befehl herunterladen. Ich werde an dieser Stelle das erste Image (centos) herunterladen.

1
2
3
4
5
6
docker pull centos
Using default tag: latest
latest: Pulling from library/centos
af4b0a2388c6: Pull complete
Digest: sha256:6247c7082d4c86c61b00f7f2e3edbf7f072a24aa8edc28b5b68b3de3101bc1ce
Status: Downloaded newer image for centos:latest

Mit dem folgenden Befehl können wir uns anzeigen lassen, welche Images auf unserem System nun hinterlegt sind.

1
2
3
4
docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
centos              latest              ff426288ea90        7 weeks ago         207MB
hello-world         latest              f2a91732366c        3 months ago        1.85kB

Einen Container laufen lassen

Um nun den Container zu starten, kann der folgende Befehl verwendet werden.

1
2
docker run -it centos
[root@f1ef1403fb52 /]#

Nach dem Ausführen des Befehls befinden wir uns direkt im Docker Container und können innerhalb dieses Containers arbeiten.

Damit haben wir erfolgreich Docker installiert, ein entsprechendes Image im Repository gesucht, diese Image heruntergeladen und anschließend das Image gestartet.

Video

Im nächsten Artikel beschäftige ich mich mit dem Thema Eigenes Docker Images mit Dockerfile erstellen.

Kategorie: DevOps, Docker Tags: Centos, Container, DevOps, Docker, Images, repository

Über Christian Piazzi

Ich blogge hier über alles, was mir so in meinem ITler Altag über den Weg läuft =)
Man findet mich privat bei Google+ und Twitter

Trackbacks

  1. Docker Container - anzeigen, starten, stoppen und löschen - Modius - Techblog sagt:
    25. April 2021 um 16:19 Uhr

    […] vergangenen Artikel haben wir uns nun bereits einige Docker Themen angeschaut. Das ging über die Installation von Docker über Python Apps deployen bis zum Aufbau kleiner Microservices. Heute schauen wir uns mal alles […]

    Antworten

Schreibe einen Kommentar Antworten abbrechen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Kategorien

  • Linux
  • Internet, Bloggen & Co
  • Programmierung
  • Sicherheit
  • Netzwerk & Co
  • Mikrokontroller
  • Windows

Neueste Kommentare

  • Prometheus Installation unter Ubuntu - Modius - Techblog bei Prometheus Installation unter CentOS
  • Rainer bei Docker Container – anzeigen, starten, stoppen und löschen
  • Rainer Wohlfarth bei Docker Container – anzeigen, starten, stoppen und löschen
  • Rainer Wohlfarth bei Docker Container – anzeigen, starten, stoppen und löschen
  • Rainer Wohlfarth bei Docker Container – anzeigen, starten, stoppen und löschen

Werbung

Archive

Kontakt, Datenschutz und Impressum

  • Kontakt
  • Datenschutz
  • Impressum

Schlagwörter

Anleitung Ansible Apache Apple App Store Automatisierung Blogparade C++ Centos centos 7 CentOS7 Container Datenbank DevOps Docker Dr. Racket Dr. Scheme funktional Gastartikel Google HowTo httpd Icinga2 Icinga 2 Installation itsm Linux Minecraft Monitoring mooc MySQL owncloud PHP Plugin Programmierung python Raspberry Pi Schritt für Schritt Server Sicherheit Tutorial Ubuntu Update Windows Wordpress

Copyright © 2025 · Outreach Pro on Genesis Framework · WordPress · Anmelden