Install Wine On Linux/Ubuntu - Run Windows Apps - Wine Shortcut
Indholdsfortegnelse:
- Forudsætninger
- Installer Docker på CentOS
- Udførelse af Docker-kommandoen uden Sudo
- Docker-kommandolinjegrænseflade
- Docker-billeder
- Docker-containere
- Konklusion
Docker er en containeriseringsteknologi, der giver dig mulighed for hurtigt at bygge, teste og distribuere applikationer som bærbare, selvforsynende containere, der kan køre praktisk talt overalt.
I denne selvstudie gennemgår vi, hvordan du installerer Docker CE på CentOS 7 og udforsker de grundlæggende Docker-koncepter og -kommandoer.
Forudsætninger
Før du fortsætter med denne tutorial, skal du sørge for, at følgende forudsætninger er opfyldt:
- CentOS 7 server Du er logget ind som en ikke-root bruger med sudo privilegier. Du tjekker denne vejledning om, hvordan du opretter en ny sudo-bruger.
Installer Docker på CentOS
Selvom Docker-pakken er tilgængelig i det officielle CentOS 7-lager, er det muligvis ikke altid den seneste version. Den anbefalede fremgangsmåde er at installere Docker fra Docker-lagrene.
Følg nedenstående trin for at installere Docker på din CentOS 7-server:
-
Start med at opdatere dine systempakker, og installer de nødvendige afhængigheder:
sudo yum update
sudo yum install yum-utils device-mapper-persistent-data lvm2
Kør derefter følgende kommando, som tilføjer Docker-stabile lagringsplads til dit system:
sudo yum-config-manager --add-repo
Nu hvor Docker-arkivet er aktiveret, skal du installere den nyeste version af Docker CE (Community Edition) ved hjælp af yum ved at skrive:
sudo yum install docker-ce
Når Docker-pakken er installeret, skal du starte Docker-dæmonen og aktivere den automatisk at starte ved starttidspunktet:
sudo systemctl start docker
sudo systemctl enable docker
Sådan kontrolleres, at Docker-tjenesten kører type:
sudo systemctl status docker
Outputet skal se sådan ud:
● docker.service - Docker Application Container Engine Loaded: loaded (/usr/lib/systemd/system/docker.service; enabled; vendor preset: disabled) Active: active (running) since Wed 2018-10-31 08:51:20 UTC; 7s ago Docs: https://docs.docker.com Main PID: 2492 (dockerd) CGroup: /system.slice/docker.service ├─2492 /usr/bin/dockerd └─2498 docker-containerd --config /var/run/docker/containerd/containerd.toml
I skrivende stund er den aktuelle stabile version af Docker,
18.06.1
, til udskrivning af Docker-versionstypen:docker -v
Docker version 18.06.1-ce, build e68fc7a
Udførelse af Docker-kommandoen uden Sudo
Som standardstyring kræver Docker administratorrettigheder. Hvis du vil køre Docker-kommandoer som en ikke-root-bruger uden at forberede
sudo
, skal du tilføje din bruger til docker-gruppen, der oprettes under installationen af Docker CE-pakken. Du kan gøre det ved at skrive:
sudo usermod -aG docker $USER
$USER
er en miljøvariabel, der indeholder dit brugernavn.
Log ud og log ind igen, så gruppemedlemmet opdateres.
For at bekræfte, at Docker er installeret med succes, og at du kan køre docker-kommandoer uden sudo, skal du udstede følgende kommando, der vil downloade et testbillede, køre det i en container, udskrive en "Hello from Docker" -meddelelse og afslutte:
docker container run hello-world
Outputet skal se sådan ud:
Unable to find image 'hello-world:latest' locally latest: Pulling from library/hello-world 9bb5a5d4561a: Pull complete Digest: sha256:f5233545e43561214ca4891fd1157e1c3c563316ed8e237750d59bde73361e77 Status: Downloaded newer image for hello-world:latest Hello from Docker! This message shows that your installation appears to be working correctly.
Docker-kommandolinjegrænseflade
Nu hvor vi har en fungerende Docker-installation, lad os gå over den grundlæggende syntaks for docker CLI.
Kommandolinjen til docker har følgende form:
docker
Du kan liste alle tilgængelige kommandoer ved at skrive
docker
uden parametre:
docker
Docker-billeder
Et Docker-billede består af en række lag, der repræsenterer instruktioner i billedets Dockerfile, der udgør en eksekverbar softwareapplikation. Et billede er en uforanderlig binær fil, der inkluderer applikationen og alle andre afhængigheder, som binære filer, biblioteker og instruktioner, der er nødvendige for at køre applikationen. Kort sagt, et Docker-billede er i det væsentlige et snapshot af en Docker-beholder.
Docker Hub er skybaseret registertjeneste, som blandt andet bruges til at opbevare Docker-billederne enten i et offentligt eller privat oplagringssted.
For at søge i Docker Hub-arkivet efter et billede skal du bare bruge underkommandoen til
search
. For at søge efter CentOS-billedet skal du f.eks. Køre:
docker search centos
Outputet skal se sådan ud:
NAME DESCRIPTION STARS OFFICIAL AUTOMATED centos The official build of CentOS. 4257 ansible/centos7-ansible Ansible on Centos7 109 jdeathe/centos-ssh CentOS-6 6.9 x86_64 / CentOS-7 7.4.1708 x86_… 94 consol/centos-xfce-vnc Centos container with "headless" VNC session… 52 imagine10255/centos6-lnmp-php56 centos6-lnmp-php56 40 tutum/centos Simple CentOS docker image with SSH access 39
Som du kan se, søgeresultaterne udskriver en tabel med fem kolonner,
NAME
,
DESCRIPTION
,
STARS
,
OFFICIAL
og
AUTOMATED
. Det officielle billede er et billede, som Docker udvikler i forbindelse med upstream-partnere.
Hvis vi vil downloade den officielle build af CentOS 7, kan vi gøre det ved at bruge underkommandoen til
image pull
:
docker image pull centos
Using default tag: latest latest: Pulling from library/centos 469cfcc7a4b3: Pull complete Digest: sha256:989b936d56b1ace20ddf855a301741e52abca38286382cba7f44443210e96d16 Status: Downloaded newer image for centos:latest
Afhængig af din internethastighed kan download tage et par sekunder eller et par minutter. Når billedet er downloadet, kan vi liste billederne med:
docker image ls
Outputet skal se sådan ud som følgende:
REPOSITORY TAG IMAGE ID CREATED SIZE hello-world latest e38bc07ac18e 3 weeks ago 1.85kB centos latest e934aafc2206 4 weeks ago 199MB
Hvis du af en eller anden grund ønsker at slette et billede, kan du gøre det med
image rm
underkommando:
docker image rm centos
Untagged: centos:latest Untagged: centos@sha256:989b936d56b1ace20ddf855a301741e52abca38286382cba7f44443210e96d16 Deleted: sha256:e934aafc22064b7322c0250f1e32e5ce93b2d19b356f4537f5864bd102e8531f Deleted: sha256:43e653f84b79ba52711b0f726ff5a7fd1162ae9df4be76ca1de8370b8bbf9bb0
Docker-containere
Et eksempel på et billede kaldes en container. En container repræsenterer en runtime for en enkelt applikation, proces eller service.
Det er måske ikke den mest passende sammenligning, men hvis du er en programmør kan du tænke på et Docker-billede som klasse og Docker-container som et eksempel på en klasse.
Vi kan starte, stoppe, fjerne og administrere en container med
docker container
.
Følgende kommando starter en Docker-container baseret på CentoOS-billedet. Hvis du ikke har billedet lokalt, downloader det det først:
docker container run centos
Ved første øjekast kan det forekomme for dig, at der overhovedet ikke skete noget. Det er ikke sandt. CentOS-containeren stopper umiddelbart efter opstart, fordi den ikke har en langvarig proces, og vi leverede ikke nogen kommando, så containeren startede op, kørte en tom kommando og derefter afsluttede.
Skiftet-det giver os mulighed for at interagere med containeren via kommandolinjen. Sådan starter du en interaktiv containertype:
docker container run -it centos /bin/bash
Som du kan se fra output, når beholderen er startet, ændres kommandoprompten, hvilket betyder, at du nu arbejder inde fra containeren:
#
Sådan viser du kørende containere:, skriv:
docker container ls
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 79ab8e16d567 centos "/bin/bash" 22 minutes ago Up 22 minutes ecstatic_ardinghelli
Hvis du ikke har nogen kørende containere, vil output være tomt.
For at se både kørende og stoppede containere skal du passere det
-a
kontakten:
docker container ls -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 79ab8e16d567 centos "/bin/bash" 22 minutes ago Up 22 minutes ecstatic_ardinghelli c55680af670c centos "/bin/bash" 30 minutes ago Exited (0) 30 minutes ago modest_hawking c6a147d1bc8a hello-world "/hello" 20 hours ago Exited (0) 20 hours ago sleepy_shannon
For at slette en eller flere containere skal du bare kopiere container-ID (eller ID'er) ovenfra og indsætte dem efter
container rm
underkommando:
docker container rm c55680af670c
Konklusion
Du har lært, hvordan du installerer Docker på din CentOS 7-maskine, og hvordan du downloader Docker-billeder og administrerer Docker-containere. Du ønsker måske også at læse om Docker Compose, som giver dig mulighed for at definere og køre multi-container Docker-applikationer.
Denne tutorial skraber næppe overfladen på Docker-økosystemet. I nogle af vores næste artikler vil vi fortsætte med at dykke ned i andre aspekter af Docker. For at lære mere om Docker, se den officielle Docker-dokumentation.
Sådan installeres og bruges docker compose på centos 7
Docker Compose er et værktøj, der giver dig mulighed for at definere og køre multi-container Docker-applikationer. Med Compose definerer du applikationens tjenester, netværk og volumener i en enkelt YAML-fil og drejer derefter din applikation med en enkelt kommando.
Sådan installeres og bruges docker compose på debian 10 linux
Docker Compose er et værktøj, der giver dig mulighed for at definere og orkestreere Docker-applikationer med flere containere. Denne tutorial forklarer, hvordan du installerer Docker Compose på Debian 10, Buster.
Sådan installeres og bruges docker compose på debian 9
Docker Compose er et værktøj, der giver dig mulighed for at definere og orkestreere Docker-applikationer med flere containere. Den bruger en YAML-fil til at konfigurere applikationens containere, netværk og volumener.