「快學Docker」Docker簡介、安裝和Hello World實現

前言

Docker已經成爲了一門煊赫一時的技術,每一個程序員(特別是後端程序員)都應該學習下Docker這門技術。linux

Docker是什麼

來自官網的定義:Docker是以Docker容器爲資源分割和調度的基本單位,封裝了整個軟件運行時環境,爲開發者和系統管理員設計的,用於構建、發佈和運行應用的平臺。Docker是開源的,其基於Go語言開發。Docker經過操做系統內核技術(namespace、cgroups等內核、資源隔離技術)爲容器提供資源隔離和安全保障。程序員

Docker能夠作什麼

一、消除線上、線下的環境差別,保證了應用生命週期的環境一致性和標準化docker

二、版本化控制。能夠像Git同樣進行版本控制,版本回滾等。shell

三、高資源利用率和資源隔離。能夠精確地爲應用分配CPU、內存等資源,保證了應用間互不影響。編程

四、跨平臺性。Docker將應用和其依賴的運行時環境打包成鏡像,實現了「構建一次,處處運行」的理念。ubuntu

五、等等等等~~~windows

Docker安裝

Docker命令的執行通常都須要root權限,爲了方便,因此下面的安裝方式都是在root用戶下進行的。非root用戶須要在命令前添加sudo。後端

腳本安裝方式(通用)

這種方式是經過下載腳原本安裝的,是比較通用的一種安裝方式。centos

curl -fsSL http://get.docker.com/ | sh
複製代碼

執行結果以下:安全

警告能夠忽略它。一切正常的話,就能夠啓動咱們的Docker了。

啓動docker:

systemctl start docker
或者
service docker start
複製代碼

centos系統安裝Docker-ce

移除老版本

$ sudo yum remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-engine
複製代碼

安裝docker ce

$ sudo yum install -y yum-utils \
  device-mapper-persistent-data \
  lvm2
複製代碼
$ sudo yum-config-manager \
    --add-repo \
    https://download.docker.com/linux/centos/docker-ce.repo
複製代碼
sudo yum install docker-ce docker-ce-cli containerd.io
複製代碼

詳細的安裝手冊,你們能夠參考官方文檔。官方文檔作了比較詳細的說明。

非Linux系統

我推薦使用Linux系統來安裝docker。若是想在windows、Mac上安裝docker,可使用docker for windows或者Desktop for Mac工具類解決吧。這裏就很少說了。

docker-ce,docker-ee和docker-io的區別?

較舊版本的Docker稱爲docker或docker-engine或docker.io。新的docker分爲兩個版本,社區版(ce)和企業版(ee)。

因此,儘可能不要經過yum -y install docker-io的方式來安裝docker,由於這樣安裝到的是老版本的docker了。

Hello World實現

編程界的慣例,先來個Hello World體驗下docker吧

搜索hello-world鏡像

docker search hello
複製代碼

能夠看到有一個官方的hello world鏡像。

獲取hello-world鏡像

docker pull hello-world
複製代碼

輸出結果:

Using default tag: latest
latest: Pulling from library/hello-world
1b930d010525: Pull complete
Digest: sha256:41a65640635299bab090f783209c1e3a3f11934cf7756b09cb2f1e02147c6ed8
Status: Downloaded newer image for hello-world:latest

複製代碼

啓動hello-world

docker run -it hello-world

複製代碼

輸出結果:

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://hub.docker.com/

For more examples and ideas, visit:
 https://docs.docker.com/get-started/


複製代碼

看第一行,輸出了Hello from Docker!。這就是docker官方爲咱們準備的hello world實現了,你們也能夠本身去體驗一下。

總結

本文簡單地介紹了Docker,而且介紹了Docker的安裝方法和演示了docker官方提供的hello world實現。這裏用到了一些docker命令,如search,pull,run,能夠先不用理會它,後面再具體分析。

相關文章
相關標籤/搜索