CentOS7部署阿里巴巴开源的pouch容器管理工具实战

本文涉及的产品
运维安全中心(堡垒机),企业双擎版 50资产 7天
运维安全中心(堡垒机),免费版 6个月
简介: 关于如何在CentOS 7.6操作系统上安装和使用阿里巴巴开源的Pouch容器管理工具的实战教程。

作者:尹正杰
版权声明:原创作品,谢绝转载!否则将追究法律责任。

一.安装CentOS7.6操作系统

  该过程过于简单,且CentOS 7各个版本之间部署方式几乎雷同,可参考我之前的笔记:"https://www.cnblogs.com/yinzhengjie/p/10181840.html"

  生产环境如果你要安装docker的话建议使用CentOS7.2以上版本,如果使用的版本较低可能会出现docker无法启动的情况。
AI 代码解读

二.安装pouch容器管理工具

1>.查看操作环境

[root@docker201.yinzhengjie.org.cn ~]# cat /etc/redhat-release 
CentOS Linux release 7.6.1810 (Core) 
[root@docker201.yinzhengjie.org.cn ~]# 
[root@docker201.yinzhengjie.org.cn ~]# uname -r
3.10.0-957.el7.x86_64
[root@docker201.yinzhengjie.org.cn ~]# 
[root@docker201.yinzhengjie.org.cn ~]# uname -m
x86_64
[root@docker201.yinzhengjie.org.cn ~]#
AI 代码解读

2>.下载阿里的软件源

[root@docker201.yinzhengjie.org.cn ~]# wget http://mirrors.aliyun.com/opsx/pouch/centos7.repo -O /etc/yum.repos.d/pouch-centos7.repo
--2020-01-13 18:39:37--  http://mirrors.aliyun.com/opsx/pouch/centos7.repo
Resolving mirrors.aliyun.com (mirrors.aliyun.com)... 27.221.92.123, 110.249.197.229, 119.167.168.229, ...
Connecting to mirrors.aliyun.com (mirrors.aliyun.com)|27.221.92.123|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 403 [application/octet-stream]
Saving to: ‘/etc/yum.repos.d/pouch-centos7.repo’

100%[====================================================================================================================================================================================================================================>] 403         --.-K/s   in 0s      

2020-01-13 18:39:37 (126 MB/s) - ‘/etc/yum.repos.d/pouch-centos7.repo’ saved [403/403]

[root@docker201.yinzhengjie.org.cn ~]#
AI 代码解读

[root@docker201.yinzhengjie.org.cn ~]# wget http://mirrors.aliyun.com/opsx/pouch/centos7.repo -O /etc/yum.repos.d/pouch-centos7.repo

[root@docker201.yinzhengjie.org.cn ~]# cat /etc/yum.repos.d/pouch-centos7.repo 
[pouch-stable]
name=Pouch Stable - $basearch
baseurl=http://mirrors.aliyun.com/opsx/pouch/linux/centos/7/$basearch/stable
enabled=1
gpgcheck=1
gpgkey=http://mirrors.aliyun.com/opsx/pouch/linux/centos/gpg
[pouch-test]
name=Pouch Test - $basearch
baseurl=http://mirrors.aliyun.com/opsx/pouch/linux/centos/7/$basearch/test
enabled=0
gpgcheck=1
gpgkey=http://mirrors.aliyun.com/opsx/pouch/linux/centos/gpg
[root@docker201.yinzhengjie.org.cn ~]# 
[root@docker201.yinzhengjie.org.cn ~]#
AI 代码解读

3>.通过yum的方式安装pouch

[root@docker201.yinzhengjie.org.cn ~]# yum -y install pouch
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: mirror.bit.edu.cn
 * extras: mirror.bit.edu.cn
 * updates: mirrors.aliyun.com
pouch-stable                                                                                                                                                                                                                                           | 2.9 kB  00:00:00     
pouch-stable/x86_64/primary_db                                                                                                                                                                                                                         | 8.0 kB  00:00:00     
Resolving Dependencies
--> Running transaction check
---> Package pouch.x86_64 0:1.3.0-1.el7 will be installed
--> Processing Dependency: pam-devel for package: pouch-1.3.0-1.el7.x86_64
--> Processing Dependency: fuse-libs for package: pouch-1.3.0-1.el7.x86_64
--> Processing Dependency: fuse-devel for package: pouch-1.3.0-1.el7.x86_64
--> Processing Dependency: fuse for package: pouch-1.3.0-1.el7.x86_64
--> Running transaction check
---> Package fuse.x86_64 0:2.9.2-11.el7 will be installed
---> Package fuse-devel.x86_64 0:2.9.2-11.el7 will be installed
---> Package fuse-libs.x86_64 0:2.9.2-11.el7 will be installed
---> Package pam-devel.x86_64 0:1.1.8-22.el7 will be installed
--> Finished Dependency Resolution

Dependencies Resolved

==============================================================================================================================================================================================================================================================================
 Package                                                          Arch                                                         Version                                                               Repository                                                          Size
==============================================================================================================================================================================================================================================================================
Installing:
 pouch                                                            x86_64                                                       1.3.0-1.el7                                                           pouch-stable                                                        44 M
Installing for dependencies:
 fuse                                                             x86_64                                                       2.9.2-11.el7                                                          base                                                                86 k
 fuse-devel                                                       x86_64                                                       2.9.2-11.el7                                                          base                                                                37 k
 fuse-libs                                                        x86_64                                                       2.9.2-11.el7                                                          base                                                                93 k
 pam-devel                                                        x86_64                                                       1.1.8-22.el7                                                          base                                                               184 k

Transaction Summary
==============================================================================================================================================================================================================================================================================
Install  1 Package (+4 Dependent packages)

Total download size: 45 M
Installed size: 146 M
Downloading packages:
(1/5): fuse-2.9.2-11.el7.x86_64.rpm                                                                                                                                                                                                                    |  86 kB  00:00:00     
(2/5): fuse-devel-2.9.2-11.el7.x86_64.rpm                                                                                                                                                                                                              |  37 kB  00:00:00     
(3/5): fuse-libs-2.9.2-11.el7.x86_64.rpm                                                                                                                                                                                                               |  93 kB  00:00:00     
(4/5): pam-devel-1.1.8-22.el7.x86_64.rpm                                                                                                                                                                                                               | 184 kB  00:00:00     
warning: /var/cache/yum/x86_64/7/pouch-stable/packages/pouch-1.3.0-1.el7.x86_64.rpm: Header V4 RSA/SHA1 Signature, key ID 439ae9ec: NOKEY===========================================================================================        ] 7.0 MB/s |  42 MB  00:00:00 ETA 
Public key for pouch-1.3.0-1.el7.x86_64.rpm is not installed
(5/5): pouch-1.3.0-1.el7.x86_64.rpm                                                                                                                                                                                                                    |  44 MB  00:00:04     
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Total                                                                                                                                                                                                                                         9.9 MB/s |  45 MB  00:00:04     
Retrieving key from http://mirrors.aliyun.com/opsx/pouch/linux/centos/gpg
Importing GPG key 0x439AE9EC:
 Userid     : "Pouch Release <pouch-dev@list.alibaba-inc.com>"
 Fingerprint: b615 ddd7 90c7 0912 582d dc2d d7ae a5ed 439a e9ec
 From       : http://mirrors.aliyun.com/opsx/pouch/linux/centos/gpg
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  Installing : fuse-libs-2.9.2-11.el7.x86_64                                                                                                                                                                                                                              1/5 
  Installing : fuse-devel-2.9.2-11.el7.x86_64                                                                                                                                                                                                                             2/5 
  Installing : fuse-2.9.2-11.el7.x86_64                                                                                                                                                                                                                                   3/5 
  Installing : pam-devel-1.1.8-22.el7.x86_64                                                                                                                                                                                                                              4/5 
  Installing : pouch-1.3.0-1.el7.x86_64                                                                                                                                                                                                                                   5/5 
  Verifying  : pam-devel-1.1.8-22.el7.x86_64                                                                                                                                                                                                                              1/5 
  Verifying  : fuse-devel-2.9.2-11.el7.x86_64                                                                                                                                                                                                                             2/5 
  Verifying  : fuse-libs-2.9.2-11.el7.x86_64                                                                                                                                                                                                                              3/5 
  Verifying  : fuse-2.9.2-11.el7.x86_64                                                                                                                                                                                                                                   4/5 
  Verifying  : pouch-1.3.0-1.el7.x86_64                                                                                                                                                                                                                                   5/5 

Installed:
  pouch.x86_64 0:1.3.0-1.el7                                                                                                                                                                                                                                                  

Dependency Installed:
  fuse.x86_64 0:2.9.2-11.el7                                     fuse-devel.x86_64 0:2.9.2-11.el7                                     fuse-libs.x86_64 0:2.9.2-11.el7                                     pam-devel.x86_64 0:1.1.8-22.el7                                    

Complete!
[root@docker201.yinzhengjie.org.cn ~]#
AI 代码解读

[root@docker201.yinzhengjie.org.cn ~]# yum -y install pouch

三.pouch工具的基本使用

1>.启动pouch

[root@docker201.yinzhengjie.org.cn ~]# systemctl status pouch
● pouch.service - pouch
   Loaded: loaded (/usr/lib/systemd/system/pouch.service; disabled; vendor preset: disabled)
   Active: inactive (dead)
[root@docker201.yinzhengjie.org.cn ~]# 
[root@docker201.yinzhengjie.org.cn ~]# systemctl start pouch
[root@docker201.yinzhengjie.org.cn ~]# 
[root@docker201.yinzhengjie.org.cn ~]# systemctl status pouch
● pouch.service - pouch
   Loaded: loaded (/usr/lib/systemd/system/pouch.service; disabled; vendor preset: disabled)
   Active: active (running) since Mon 2020-01-13 18:44:21 CST; 2s ago
 Main PID: 18422 (pouchd)
    Tasks: 21
   Memory: 26.8M
   CGroup: /system.slice/pouch.service
           ├─18422 /usr/local/bin/pouchd
           └─18429 containerd --config /var/lib/pouch/containerd/state/pouch-containerd.toml --log-level info

Jan 13 18:44:19 docker201.yinzhengjie.org.cn pouchd[18422]: time="2020-01-13T18:44:19.748223865+08:00" level=info msg="loading plugin "io.containerd.grpc.v1.introspection"..." type=io.containerd.grpc.v1
Jan 13 18:44:19 docker201.yinzhengjie.org.cn pouchd[18422]: time="2020-01-13T18:44:19.748525272+08:00" level=info msg=serving... address="/run/containerd/debug.sock"
Jan 13 18:44:19 docker201.yinzhengjie.org.cn pouchd[18422]: time="2020-01-13T18:44:19.748575854+08:00" level=info msg=serving... address="/var/run/containerd.sock"
Jan 13 18:44:19 docker201.yinzhengjie.org.cn pouchd[18422]: time="2020-01-13T18:44:19.748583031+08:00" level=info msg="containerd successfully booted in 0.008565s"
Jan 13 18:44:19 docker201.yinzhengjie.org.cn pouchd[18422]: time="2020-01-13T18:44:19.753585443+08:00" level=info msg="success to start containerd" containerd-pid=18429 module=ctrd-supervisord
Jan 13 18:44:19 docker201.yinzhengjie.org.cn pouchd[18422]: time="2020-01-13T18:44:19.758489799+08:00" level=info msg="success to create 5 containerd clients, connect to: /var/run/containerd.sock"
Jan 13 18:44:19 docker201.yinzhengjie.org.cn pouchd[18422]: time="2020-01-13T18:44:19.759049076+08:00" level=info msg="Snapshotter is set to be overlayfs"
Jan 13 18:44:19 docker201.yinzhengjie.org.cn pouchd[18422]: time="2020-01-13T18:44:19.759278316+08:00" level=info msg="invoke pre-start hook in plugin"
Jan 13 18:44:21 docker201.yinzhengjie.org.cn pouchd[18422]: time="2020-01-13T18:44:21.605939977+08:00" level=info msg="start to listen to: unix:///var/run/pouchd.sock"
Jan 13 18:44:21 docker201.yinzhengjie.org.cn systemd[1]: Started pouch.
[root@docker201.yinzhengjie.org.cn ~]#
AI 代码解读

[root@docker201.yinzhengjie.org.cn ~]# systemctl start pouch

2>.查看pouch的信息

[root@docker201.yinzhengjie.org.cn ~]# pouch info              #注意观察"Default Runtime"的属性值
Containers: 0
 Running: 0
 Paused: 0
 Stopped: 0
Images: 0
ID: 
Name: docker201.yinzhengjie.org.cn
Server Version: 1.3.0
Storage Driver: overlayfs
Driver Status: []
Logging Driver: json-file
Volume Drivers: [local tmpfs]
Cgroup Driver: cgroupfs
Default Runtime: runc
Runtimes: runc
runc: <nil>
containerd: <nil>
Security Options: [seccomp selinux]
Kernel Version: 3.10.0-957.el7.x86_64
Operating System: "CentOS Linux 7 (Core)"
OSType: linux
Architecture: amd64
HTTP Proxy: 
HTTPS Proxy: 
Registry: https://index.docker.io/v1/
Experimental: false
Debug: false
Labels:
  node_ip=192.168.6.201
  SN=VMware-56
CPUs: 2
Total Memory: 3.683GiB
Pouch Root Dir: /var/lib/pouch
LiveRestoreEnabled: true
LxcfsEnabled: false
CriEnabled: false
Daemon Listen Addresses: [unix:///var/run/pouchd.sock]
[root@docker201.yinzhengjie.org.cn ~]#
AI 代码解读

[root@docker201.yinzhengjie.org.cn ~]# pouch info              #注意观察"Default Runtime"的属性值

3>.查看pouch工具的帮助信息

[root@docker201.yinzhengjie.org.cn ~]# pouch --help
pouch is a client side tool pouch to interact with daemon side process pouchd. Flags and arguments can be input to do what actually you wish. Then pouch parses the flags and arguments and sends a RESTful request to daemon side pouchd.

Usage:
  pouch [command]

Available Commands:
  checkpoint    Manage checkpoint commands
  commit        Commit an image from a container
  create        Create a new container with specified image
  events        Get real time events from the daemon
  exec          Run a command in a running container
  gen-doc       Generate docs
  help          Help about any command
  history       Display history information on image
  image         Manage image
  images        List all images
  info          Display system-wide information
  inspect       Get the detailed information of container
  load          load a set of images from a tar archive or STDIN
  login         Login to a registry
  logout        Logout from a registry
  logs          Print a container's logs
  network       Manage pouch networks
  pause         Pause one or more running containers
  ps            List containers
  pull          Pull an image from registry
  remount-lxcfs remount lxcfs bind in containers
  rename        Rename a container with newName
  restart       restart one or more containers
  rm            Remove one or more containers
  rmi           Remove one or more images by reference
  run           Create a new container and start it
  save          Save an image to a tar archive or STDOUT
  start         Start one or more created or stopped containers
  stats         Display a live stream of container(s) resource usage statistics
  stop          Stop one or more running containers
  tag           Create a tag TARGET_IMAGE that refers to SOURCE_IMAGE
  top           Display the running processes of a container
  unpause       Unpause one or more paused container
  update        Update the configurations of a container
  updatedaemon  Update the configurations of pouchd
  upgrade       Upgrade a container with new image and args
  version       Print versions about Pouch CLI and Pouchd
  volume        Manage pouch volumes
  wait          Block until one or more containers stop, then print their exit codes

Flags:
  -D, --debug              Switch client log level to DEBUG mode
  -h, --help               help for pouch
  -H, --host string        Specify connecting address of Pouch CLI (default "unix:///var/run/pouchd.sock")
      --tlscacert string   Specify CA file of TLS
      --tlscert string     Specify cert file of TLS
      --tlskey string      Specify key file of TLS
      --tlsverify          Use TLS and verify remote

Use "pouch [command] --help" for more information about a command.
[root@docker201.yinzhengjie.org.cn ~]# 
[root@docker201.yinzhengjie.org.cn ~]#
AI 代码解读

[root@docker201.yinzhengjie.org.cn ~]# pouch --help

目录
打赏
0
2
2
0
177
分享
相关文章
揭秘 Microsoft.Docker.SDK:让容器开发更轻松的强大工具揭秘
随着云计算和容器技术的快速发展,`Docker` 已经成为容器化技术的事实标准。`Microsoft` 作为 `Docker` 的主要支持者和参与者,推出了 `Microsoft.Docker.SDK`,旨在帮助开发者更轻松地进行容器开发。本文将深入揭秘 Microsoft.Docker.SDK 的功能、使用方法以及它在容器开发中的应用。
45 12
自学软硬件第755 docker容器虚拟化技术youtube视频下载工具
docker容器虚拟化技术有什么用?怎么使用?TubeTube 项目使用youtube视频下载工具
容器化AI模型的安全防护实战:代码示例与最佳实践
本文基于前文探讨的容器化AI模型安全威胁,通过代码示例展示如何在实际项目中实现多层次的安全防护措施。以一个基于TensorFlow的图像分类模型为例,介绍了输入验证、模型加密、API认证和日志记录的具体实现方法,并结合最佳实践,如使用安全容器镜像、限制权限、网络隔离等,帮助构建更安全的AI服务。
容器化AI模型部署实战:从训练到推理
在上一篇中,我们探讨了AI技术如何赋能容器化生态。本篇聚焦于AI模型的容器化部署,通过图像分类任务实例,详细介绍了从模型训练到推理服务的完整流程。使用PyTorch训练CNN模型,Docker打包镜像,并借助Kubernetes进行编排和部署,最终通过FastAPI提供推理服务。容器化技术极大提升了AI模型部署的便利性和管理效率,未来将成为主流趋势。
正式开源,Doris Operator 支持高效 Kubernetes 容器化部署方案
飞轮科技推出了 Doris 的 Kubernetes Operator 开源项目(简称:Doris Operator),并捐赠给 Apache 基金会。该工具集成了原生 Kubernetes 资源的复杂管理能力,并融合了 Doris 组件间的分布式协同、用户集群形态的按需定制等经验,为用户提供了一个更简洁、高效、易用的容器化部署方案。
正式开源,Doris Operator 支持高效 Kubernetes 容器化部署方案
Dockerfile全面指南:从基础到进阶,掌握容器化构建的核心工具
Dockerfile 是容器化开发中的关键工具。理解并掌握其使用方式,不仅能提高开发效率,还能让你的应用具备更强的可移植性和灵活性。通过优化配置和合理安排构建步骤,可以打造更轻量、更高效的容器镜像。 只有锻炼思维才能可持续地解决问题,只有思维才是真正值得学习和分享的核心要素。如果这篇博客能给您带来一点帮助,麻烦您点个赞支持一下,还可以收藏起来以备不时之需,有疑问和错误欢迎在评论区指出~
实战~如何组织一个多容器项目docker-compose
本文介绍了如何使用Docker搭建Nginx、PHP和MySQL的环境。首先启动Nginx容器并查看IP地址,接着启动Alpine容器并安装curl测试连通性。通过`--link`方式或`docker-compose`配置文件实现服务间的通信。最后展示了Nginx配置文件和PHP代码示例,验证了各服务的正常运行。
128 3
实战~如何组织一个多容器项目docker-compose
|
4月前
|
CentOS停更沉寂,RHEL巨变限制源代:Docker容器化技术的兴起助力操作系统新格局
操作系统是计算机系统的核心软件,管理和控制硬件与软件资源,为用户和应用程序提供高效、安全的运行环境。Linux作为开源、跨平台的操作系统,具有高度可定制性、稳定性和安全性,广泛应用于服务器、云计算、物联网等领域。其发展得益于庞大的社区支持,多种发行版如Ubuntu、Debian、Fedora等满足不同需求。
105 5
解密开源Serverless容器框架:事件驱动篇
Knative是一款基于Kubernetes的开源Serverless框架,提供了云原生、跨平台的Serverless编排标准。作为Serverless中必不可少的事件驱动能力,Knative Eventing提供了云原生的事件驱动能力。
Docker容器性能调优的关键技巧,涵盖CPU、内存、网络及磁盘I/O的优化策略,结合实战案例,旨在帮助读者有效提升Docker容器的性能与稳定性。
本文介绍了Docker容器性能调优的关键技巧,涵盖CPU、内存、网络及磁盘I/O的优化策略,结合实战案例,旨在帮助读者有效提升Docker容器的性能与稳定性。
366 7