Docker搭建以及使用

架构:

镜像(Images) :用于创建 Docker 容器的模板,比如 Ubuntu

容器(Container) :独立运行的一个或一组应用,是镜像运行时的实体

客户端(Client) :通过命令行或者其他工具使用 Docker SDK(SDK 允许您快速轻松地构建

和扩展 Docker 应用程序和解决方案)与 Docker 的守护进程通信

主机(Host) :一个物理或者虚拟的机器用于执行 Docker 守护进程和容器

仓库(Repository) 用来保存镜像

Hub :提供了庞大的镜像集合供使用

Registry :可以包含多个仓库,每个仓库可以包含多个标签(Tag),每个标签对应一

个镜像

Machine: 是一个简化 Docker 安装的命令行工具,通过一个简单的命令行即可在相应

的平台上安装 Docker

docker 常用命令:

# 用于与容器交互的命令

docker search :镜像的类型 搜索镜像文件

docker pull  :镜像的名字 获取镜像

docker images  :查看镜像信息

docker tag :名称 为本地镜像添加新的标签

docker create --name :名字 镜像类型 创建一个容器,但不启动它

docker run --name :名字 镜像类型   创建并启动一个容器

docker run -itd --name :名字 镜像类型 命令类型 后台运行

docker stop   :容器 或 id 停止容器

docker start   :容器 或 id 启动容器

docker restart :容器 或 id 重启容器

docker rm :容器 或 id 删除容器

docker attach :容器 id 连接到正在运行的容器中(退出容器暂停)

docker exec -it :容器 id /bin/bash 连接到正在运行的容器中(不会暂停)

docker exec -itd --name 名字 :执行的命令 在运行的容器中执行一条命令

docker export :容器名字 > 路径 导出容器快照

cat 容器快照 | docker import -存储路径:标签 导入容器快照

docker search :镜像类型 搜索镜像

docker-machine 常用命令:

docker-machine ls :列出可用机器

docker-machine create --driver virtualbox 名字 :创建机器

docker-machine ip 机器名字 :查看机器 IP

docker-machine stop 机器名字 :停止机器

docker-machine start 机器名字 :启用机器

docker-machine ssh 机器名字 :进入机器

docker-machine active :查看当前激活的 docker 主机

网络:

docker network create -d bridge 名字 :创建网络

docker network rm 名字 :删除网络

docker run -itd --name 容器 id --network 网络名字 系统类型 /bin/bash>>>>

>>>加入或者新终端都使用这条命令

DNS:

1.在宿主机配置文件编辑:/etc/docker/daemon.json

Docker搭建以及使用_第1张图片

2.重启

手动指定:docker run -itd --dns 地址 --name 名字 镜像类型 命令类型

注意:只对新开的容器配置,已存在的不支持

运行一个 web 实验:

1.获取镜像:docker pull nginx

2.运行容器:docker run --name 名字 -p 8080:80 -d nginx

-p 端口进行映射,将本地 8080 端口映射到容器内部的 80 端口

-d 设置容器在在后台一直运行

-v 旧的网页路径:新的网页路径 (指定网页)

安装 docker 方法:

1.检查内核: uname -r (系统内核版本要求 >= 3.1)

2.卸载旧的安装包:(首次可忽略)

        1.查询安装包:yum list installed | grep docker

        2.卸载搜索到的安装包:yum list remove 名字

        3.删除残留的文件:rm -rf  /var/lib/docker

3.安装依赖包:yum install -y device-mapper-persistent-data lvm2

        1.device-mapper-persistent-data:存储资源管理的块设备驱动

        2.lvm2:逻辑卷管理

4.设置 yum 库:yum-config-manager --add-repo http://mirrors.aliyun.com/docker-

ce/linux/centos/docker-ce.repo

5.测试 yum 库是否正常:yum makecache timer

6. 安装最新版的 docker:yum install -y docker-ce

        选择安装:

        1.列出:yum list docker-ce showduplicates | sort -r

        2.安装所需的版本:yum install -y 名字

        注意:安装时若出现以下错误,根据提示在命令结尾加上 --allowerasing 或 --nobest 后再次执行即可

7.启动以及开机自启:systemctl start docker && systemctl enable docker

安装(swarm)集群管理:

1.安装 Docker Machine (可以集中管理所有的 docker 主机)

base=https://github.com/docker/machine/releases/download/v0.16.0 &&

curl -L $base/docker-machine-$(uname -s)-$(uname -m) >/tmp/docker-machine && sudo mv /tmp/docker-machine /usr/local/bin/docker-machine && chmod +x /usr/local/bin/docker-machine

2.查看是否已经安装成功:docker-machine version

3.安装 VirtualBox(虚拟化工具)

        1.导入仓库:dnf config-manager --add-repo=https://download.virtualbox.org/virtualbox/rpm/el/virtualbox.repo

        2.导入公钥:rpm --import https://www.virtualbox.org/download/oracle_vbox.asc

        3.启用:dnf install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm -y

        4.安装工具以及依赖包:dnf install binutils kernel-devel kernel-headers libgomp make patch gcc glibc-headers glibc-devel dkms -y

5.列出可用版本:dnf search virtualbox

6.安装:dnf install VirtualBox-6.0 -y

7.如果启动不起来,输入:sudo /sbin/vboxconfig

8.再输入:/sbin/vboxconfig(注意看内核版本,需要安装想对应的)

网址为: http://mirrors.portworx.com/mirrors/http/mirror.centos.org/centos/8/BaseOS/x86_64/os/Packages/

9.装好后,输入刚刚的两条命令,再启动,如果还不行,安装这个组件

输入:yum install elfutils-libelf-devel

10.启动:VirtualBox

(swarm)集群管理实验:

1.创建集群管理节点:docker-machine create -d virtualbox 名字

2.进入节点:docker-machine ssh 名字

3.初始化:docker swarm init --advertise-addr 节点的ip

4.保存一个信息,后面需要用到

Docker搭建以及使用_第2张图片

5.创建两台节点主机,然后各自登录进去,输入刚刚保存的长串,提示这个就是已经添加成功

Docker搭建以及使用_第3张图片

6.进入管理节点查看:docker info

Docker搭建以及使用_第4张图片

7.查看节点:docker node ls

你可能感兴趣的:(Linux,docker)