1. 程式人生 > >docker 安裝

docker 安裝

1

Docker 是一個開源的應用容器引擎,讓開發者可以打包他們的應用以及依賴包到一個可移植的容器中,然後發布到任何流行的 Linux 機器上

Docker 使用客戶端-服務器 (C/S) 架構模式,使用遠程API來管理和創建Docker容器。Docker 容器通過 Docker 鏡像來創建。容器與鏡像的關系類似於面向對象編程中的對象與類。

Docker daemon 作為服務端接受來自客戶的請求,並處理這些請求(創建、運行、分發容器)。 客戶端和服務端既可以運行在一個機器上,也可通過 socket 或者RESTful API 來進行通信。 Docker daemon 一般在宿主主機後臺運行,等待接收來自客戶端的消息。 Docker 客戶端則為用戶提供一系列可執行命令,用戶用這些命令實現跟 Docker daemon 交互

一 安裝docker及基礎命令

yum install -y docker-io

service docker start 啟動 docker
docker search centos 搜索鏡像

docker pull centos 下載鏡像

docker push centos 上傳鏡像

docker images 查看鏡像

docker rmi 刪除鏡像

docker run -it centos /bin/bash 啟動進入鏡像

docker ps -a 查看鏡像

docker ps -l 查看最近啟動的docker容器

docker run -d --name mydocker -it centos sh -name docker容器的名字 -d 是在後臺運行

docker rm `docker ps -a -q` 刪除所有容器

docker exec -it centos /bin/bash 進入容器

docker logs container 查看容器日誌

二 docker端口映射

docker run -d -P -name mynginx -P 隨機映射端口

docker run -d -p 91:80 mynginx nginx -p指定宿主機91端口映射到容器80端口

三 docker 數據管理

數據卷是一個可供容器使用的特殊目錄,它繞過文件系統,可以提供很多有用的特性:

  1. 數據卷可以在容器之間共享和重用;

  2. 對數據卷的修改會立馬有效;

  3. 對數據卷的更新,不會影響鏡像;

  4. 卷會一直存在,直到沒有容器使用。

數據卷就是從物理機掛到容器中使用 掛載本地的目錄到容器裏

docker run -it --name test1 -h nginx -v /data centos -h 容器名稱 -v 數據卷

docker run -it --name test2 -h nginx -v /opt:/opt centos

數據卷容器 我們需要多個容器之間相互共享數據

docker run -it --name test4 --volumes-from test1 centos

四 dockerfile 構建命令

FROM 來至那個基礎鏡像

MAINTAINER 維護著

RUN 運行的那個命令

CMD 只能執行一次命令

EXPOSE 暴露的端口

ENV 環境變量設置

ADD 復制本地文件到容器

ENTRYPOINT 配置容器啟動後執行的命令

VOLUME 創建一個可以從本地主機或其他容器掛載的掛載點

USER 指定運行容器時的用戶名

WORKDIR 切換目錄

docker build -t nginx:v1 . 構建鏡像

五 Docker 四種網絡模式

host 模式,使用 --net=host 指定。

使用宿主機的 IP 和端口

container 模式,使用 --net=container:NAMEorID 指定。

這個模式指定新創建的容器和已經存在的一個容器共享一個 Network Namespace。

none 模式,使用 --net=none 指定。

這個 Docker 容器沒有網卡、IP、路由等信息。需要我們自己為 Docker 容器添加網卡、配置 IP 等。

bridge 模式,使用 --net=bridge 指定,默認設置。

bridge 模式是 Docker 默認的網絡設置,此模式會為每一個容器分配 Network Namespace、設置 IP 等,並將一個主機上的 Docker 容器連接到一個虛擬網橋上。當 Docker server 啟動時,會在主機上創建一個名為 docker0 的虛擬網橋,此主機上啟動的 Docker 容器會連接到這個虛擬網橋上。

六 docker私有倉庫

docker run -d -p 5000:5000 registry 創建私有倉庫

docker pull registry

docker images

先打鏡像

docker tag docker.io/nginx 192.168.50.39:5000/nginx/vs:2

docker images

上傳鏡像

docker push 192.168.50.39:5000/nginx/vs:2

查看鏡像是否成功

curl -XGET http://192.168.5.2:5000/v2/_catalog # curl -XGET http://192.168.5.2:5000/v2/image_name/tags/list

下載鏡像

docker pull 192.168.50.39:5000/nginx/vs:2


本文出自 “12062356” 博客,謝絕轉載!

docker 安裝