如何通过Docker进行容器编排
发布网友
发布时间:2022-02-26 21:20
我来回答
共2个回答
懂视网
时间:2022-02-27 01:41
产品型号:Thinkpad E15
系统版本:centos8
docker命令教程
例1:运行一个 container并加载镜像centos,运行起来这个实例后,在实例中执行 /bin/bash命令
docker常用参数:
run 运行
-i 以交互模式运行容器,通常与 -t 同时使用;
-t 为容器重新分配一个伪输入终端,通常与 -i 同时使用;
[root@xuegod63 ~]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
centos latest 196e0ce0c9fb 12 days ago 196.6 MB
[root@xuegod63 ~]# docker run -it centos:latest bash #启动一个实例,也就2秒就可以搞定
[root@068fd8c70344 /]# ls #查看实例环境
[root@f072b5ae7542 /]# cat /etc/redhat-release
退出容器:
[root@f072b5ae7542 /]#exit
例2:在 container 中启动一个长久运行的进程,不断向stdin输出 hello world 。模拟一个后台运行的服务
docker常用参数:
-d 后台运行容器,并返回容器ID;
-c 后面跟待完成的命令
[root@xuegod63 ~]# docker run -d centos:latest /bin/sh -c "while true;do echo hello world; sleep 1; done"
1b3493487c4fde6eb233d59fa9ab9a204ad993cd3debbd5a9a28be6816694605
#容器的ID
从一个容器中取日志,查看输出的内容,可用于后期检查docker实例在标准输出中弹出的错误信息或正常的信息。
语法: docker logs 容器实例的Name/ID
[root@xuegod63 ~]# docker logs 1b3493487c4 #容器的ID可以写全,也可以不写全,只要唯一就可以了
hello world
hello world
hello world
hello world
查看正在运行的容器:
[root@xuegod63 ~]# docker ps #列出所有运行中容器。
也可以使用短ID或docker实例的名字查看日志输出:
[root@xuegod63 ~]# docker logs 4109c3446284
或:
[root@xuegod63 ~]# docker logs flamboyant_davinci
[root@xuegod63 ~]# docker ps -a #-a 列出所有容器(包含沉睡/退出状态的容器);
总结:
1、docker run -it centos:latest bash 启动一个实例
2、docker run -d centos:latest /bin/sh -c "while true;do echo hello world; sleep 1; done" #后台运行容器,并返回容器ID;
3、docker logs 容器实例的Name/ID从一个容器中取日志,查看输出的内容
4、docker ps #列出所有运行中容器。
热心网友
时间:2022-02-26 22:49
使用 weave 前需要所宿主机安装 Docker 环境参考些教程 Ubuntu 或 CentOS/Fedora 发行版安装 Docker
Docker 环境部署完使用面命令安装 weave:
$ wget chmod a+x weave$ sudo cp weave /usr/local/bin
注意 PATH 环境变量要包含 /usr/local/bin 路径请 /etc/profile 文件加入行(LCTT 译注:要使环境变量效需要执行命令: source /etc/profile):
export PATH="$PATH:/usr/local/bin"
每台宿主机重复面操作
Weave TCP UDP 都使用 6783 端口系统启防火墙请确保两端口防火墙挡住
每台宿主机启 Weave 路由器
想要让处于同宿主机容器能够互相通信第步要做每台宿主机启 weave 路由器
第台宿主机运行面命令创建并启 weave 路由器容器(LCTT 译注:前面说weave 路由器容器):
$ sudo weave launch
第运行命令候载 weave 镜像花些间载完自运行镜像功启终端输 weave 路由器 ID 号
面命令用于查看路由器状态:
$ sudo weave status
第 weave 路由器绪目前止整 peer 等网络 peer 员
使用 docker 命令查看 weave 路由器状态:
$ docker ps
第二台宿主机部署步骤稍微点同我需要台宿主机 weave 路由器指定第台宿主机 IP 址命令:
$ sudo weave launch
查看路由器状态看两 peer 员:前宿主机第宿主机
启更路由器 peer 员列表更新路由器要指定前宿主机 IP 址请注意第宿主机 IP 址(LCTT 译注:链状结构)
现已经 weave 网络由位于同宿主机 weave 路由器组
同宿主机容器互联起
接要做同宿主机启 Docker 容器并使用虚拟网络互联起
假设我创建私网络 10.0.0.0/24 互联 Docker 容器并些容器随机配 IP 址
想新建能加入 weave 网络容器需要使用 weave 命令创建 docker 命令原 weave 命令内部调用 docker 命令新建容器设置网络
面命令宿主机 hostA 建立 Ubuntu 容器放 10.0.0.0/24 网络配 IP 址 10.0.0.1:
hostA:~$ sudo weave run 10.0.0.1/24 -t -i ubuntu
功运行终端显示容器 ID 号使用 ID 访问容器:
hostA:~$ docker attach
宿主机 hostB 创建 Ubuntu 容器IP 址 10.0.0.2:
hostB:~$ sudo weave run 10.0.0.2/24 -t -i ubuntu
访问容器控制台:
hostB:~$ docker attach
两容器能够互相 ping 通通容器控制台检查
检查每容器网络配置发现块名ethwe网卡配给容器 IP 址现(比别 10.0.0.1 10.0.0.2)
Weave 其高级用
weave 提供些非巧妙特性我作简单介绍
应用离
使用 weave创建虚拟网络并每网络设置同应用比群容器创建 10.0.0.0/24 网络另群容器创建 10.10.0.0/24 网络weave 自帮维护些网络并两网络互相隔离另外灵容器网络移另网络需要重启容器举例:
首先启容器运行 10.0.0.0/24 网络:
$ sudo weave run 10.0.0.2/24 -t -i ubuntu
让脱离网络:
$ sudo weave detach 10.0.0.2/24
加入 10.10.0.0/24 网络:
$ sudo weave attach 10.10.0.2/24
现容器与 10.10.0.0/24 网络其容器进行通信创建容器网络信息确定帮助
weave 网络与宿主机网络整合起
候想让虚拟网络容器能访问物理主机网络或者相反宿主机需要访问容器满足功能weave 允许虚拟网络与宿主机网络整合
举例宿主机 hostA 容器运行 10.0.0.0/24 运行使用面命令:
hostA:~$ sudo weave expose 10.0.0.100/24
命令 IP 址 10.0.0.100 配给宿主机 hostA宿主机 hostA 连 10.0.0.0/24 网络显宿主机选择 IP 址候需要选没其容器使用址
现 hostA 访问 10.0.0.0/24 所容器管些容器否位于 hostA 巧妙设定啊32 赞