溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Docker的安裝步驟及用法介紹

發(fā)布時間:2021-08-04 10:55:59 來源:億速云 閱讀:403 作者:chen 欄目:云計算

這篇文章主要介紹“Docker的安裝步驟及用法介紹”,在日常操作中,相信很多人在Docker的安裝步驟及用法介紹問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”Docker的安裝步驟及用法介紹”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!

1、 Docker安裝

(1)安裝docker

Windows下安裝docker,到https://www.docker.com/products/docker-desktop下載安裝包,直接執(zhí)行,注意安裝目錄里不要有中文。

安裝完成后,命令行下啟動示例docker試試看:docker run -d -p 80:80 docker/getting-started

訪問localhost:80如果出現(xiàn)正常頁面:

Docker的安裝步驟及用法介紹

說明我們的docker環(huán)境安裝成功了!

docker所在機器的ip和主機名會在hosts文件中配置,例如:

# Added by Docker Desktop

192.168.104.112 host.docker.internal

192.168.104.112 gateway.docker.internal

# To allow the same kube context to work on the host and the container:

127.0.0.1 kubernetes.docker.internal

Docker管理界面也能看到docker的列表和狀態(tài):

Docker的安裝步驟及用法介紹

這里把下一節(jié)安裝好的cAdvisor的docker也顯示了。

【docker基本命令】

基本概念:

Image id:鏡像id

Container Id:容器id,可以人為container ID是image ID的一個具體實例

命令

說明

docker image ls

查看當前鏡像

docker run -d -p 80:80 docker/getting-started

啟動docker, -p命令暴露端口 -d是daemon模式;docker/getting-started是docker倉庫的名稱.

例1:docker run -d -it --name spark2 myspark:v1

例2:使用鏡像nginx:latest以交互模式啟動一個容器,在容器內(nèi)執(zhí)行/bin/bash命令

docker run -it --name nginx nginx:latest /bin/bash

docker volume ls

顯示volume列表

Docker inspect containerId or imageId

查看具體實例的詳細信息

Docker pull

拉取鏡像

Docker push

上傳鏡像,要先登錄docker倉庫,例如:

 docker login

docker tag local-image:tagname sandea/spark:tagname

 docker push sandea/spark:tagname

 

Docker cp

Docker和主機之間傳遞文件。

例1:

docker cp testtomcat:/usr/local/tomcat/webapps/test/js/test.js /opt

從testtomcat容器拷貝test.js文件到宿主機/opt下

例2:

docker cp /opt/test.js testtomcat:/usr/local/tomcat/webapps/test/js

反過來將所主機文件拷貝到容器里

Docker start/stop containerId

啟動/停止docker容器

docker exec [options] container command [arg...]

在容器中執(zhí)行命令

Docker rm container

刪除容器

Docker rmi image

刪除鏡像

docker tag src_image[:tag] tar_image[:tag]

創(chuàng)建某個鏡像的副本

docker exec -it containerID /bin/bash

進入容器交互  containerID:鏡像ID

docker save ubuntu:load>/root/ubuntu.tar

docker load<ubuntu.tar

鏡像保存和鏡像導入

示例A:

目的:創(chuàng)建java鏡像,啟動docker容器,并且拷貝jar包到docker容器上,然后提交修改后的docker為新的鏡像,詳細步驟如下:

  1. Docker pull java:latest

  2. docker run -d -it --name java1 java:latest

  3. Docker cp ./xxx.jar /var/local/

  4. Docker commit -m “提交新鏡像” java1 myjava:v1

  5. 啟動新鏡像: docker run -d -it  --name newjava1 myjava:v1

(2)啟動cAdvisor

一臺主機上可以啟動多個docker,在這臺主機上安裝一個cAdvisor就可以采集這臺主機上的多個docker的監(jiān)控數(shù)據(jù),cAdvisor通常也是以docker的形式啟動的。

啟動cAdvisor docker的命令如下:

docker run   --volume=/:/rootfs:ro   --volume=/var/run:/var/run:ro   --volume=/sys:/sys:ro   --volume=/var/lib/docker/:/var/lib/docker:ro   --volume=/dev/disk/:/dev/disk:ro   --publish=8080:8080   --detach=true   --name=cadvisor   --privileged   --device=/dev/kmsg   google/cadvisor:latest

其中--publish=8080:8080是cAdvisor的監(jiān)聽端口,在prometheus里需要用到的。

(3)配置promeTheus采集cAdvisor的數(shù)據(jù)

在prometheus.yml添加下面一行:

- job_name: 'docker'

    static_configs:

- targets: ['localhost:8080']

意思采集監(jiān)聽在localhost:8080的cAdvisor的metrics數(shù)據(jù),該采集任務的名稱是”docker”。

然后重啟prometheus

(4)配置grafana面板監(jiān)控docker

首先在grafana里添加prometheus數(shù)據(jù)源,這步驟前面已經(jīng)說過,這里略過。

終于在grafana找到了一款可以選擇主機的docker監(jiān)控模板(8321)

下載地址https://grafana.com/api/dashboards/8321/revisions/3/download

效果如下:

Docker的安裝步驟及用法介紹

2、 Docker集群管理

使用portainer來管理docker集群

首先拉取鏡像:docker pull portainer/portainer

然后啟動主Portainer:

docker run -d -p 9000:9000 --name portainer -v /var/run/docker.sock:/var/run/docker.sock portainer/portainer

【注意事項】

Ensure that you have started the Portainer container with the following Docker flag:

-v "/var/run/docker.sock:/var/run/docker.sock" (Linux).

or

-v \\.\pipe\docker_engine:\\.\pipe\docker_engine (Windows).  //這邊貌似沒用,參考linux

輸入http://localhost:9000看能否訪問。

修改portainer登錄密碼,看到首頁如下:

Docker的安裝步驟及用法介紹

Remote是添加遠端docker機器,添加進來之后就可以作為進群的一部分進行統(tǒng)一管理。

看本地docker集群,點擊“Local”

Docker的安裝步驟及用法介紹

面板上可以清楚的看到有多個image,多少Container,網(wǎng)絡配置和Volume配置情況都能看到。

到此,關于“Docker的安裝步驟及用法介紹”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續(xù)學習更多相關知識,請繼續(xù)關注億速云網(wǎng)站,小編會繼續(xù)努力為大家?guī)砀鄬嵱玫奈恼拢?/p>

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內(nèi)容。

AI