环境

ubuntu:bionic的docker image

docker run -it ubuntu:bionic

python的grpc环境安装

参考grpc官网:https://grpc.io/docs/languages/python/quickstart/

# apt-get install python3-pip
# pip3 install grpcio
# pip3 install grpcio-tools Collecting grpcio
Downloading https://files.pythonhosted.org/packages/81/5e/168a7fa23a025beed6b7daa0981ace55e394a136db3082faed7d6cba4556/grpcio-1.34.1.tar.gz (21.1MB)
Collecting grpcio-tools
Downloading https://files.pythonhosted.org/packages/6b/9d/a5fa6506188e44393a225245c6898a5601caf6faa1e7093ed6af1b005fe3/grpcio-tools-1.34.1.tar.gz (2.1MB)
Requirement already satisfied: six>=1.5.2 in /usr/lib/python3/dist-packages (from grpcio)
Collecting protobuf<4.0dev,>=3.5.0.post1 (from grpcio-tools)
Downloading https://files.pythonhosted.org/packages/fe/fd/247ef25f5ec5f9acecfbc98ca3c6aaf66716cf52509aca9a93583d410493/protobuf-3.14.0-cp36-cp36m-manylinux1_x86_64.whl (1.0MB)
Requirement already satisfied: setuptools in /usr/lib/python3/dist-packages (from grpcio-tools)
Building wheels for collected packages: grpcio, grpcio-tools
Running setup.py bdist_wheel for grpcio: started
Running setup.py bdist_wheel for grpcio: still running...
Running setup.py bdist_wheel for grpcio: finished with status 'done'
Stored in directory: /root/.cache/pip/wheels/e2/60/7c/617a7c5af21a5d60c41e66ddb55f31235ec7d3f3d22d943f51
Running setup.py bdist_wheel for grpcio-tools: started
Running setup.py bdist_wheel for grpcio-tools: still running...
Running setup.py bdist_wheel for grpcio-tools: finished with status 'done'
Stored in directory: /root/.cache/pip/wheels/ee/f1/12/0bf094c3acabbb21dd495a7048e1e2bae64c8074890fc45b27
Successfully built grpcio grpcio-tools
Installing collected packages: grpcio, protobuf, grpcio-tools
Successfully installed grpcio-1.34.1 grpcio-tools-1.34.1 protobuf-3.14.0

验证

利用docker跑服务端和客户端

helloworld程序是github grpc里的示例文件,下载目录:https://github.com/grpc/grpc/tree/master/examples/python/helloworld

  1. 服务端启动
$ docker ps | grep ubuntu
be6f5b966749 ubuntu "/bin/sh -c /bin/bash" 2 hours ago Up 2 hours dazzling_margulis
$ docker exec -it be6f5b966749 sh helloworld# ls
greeter_client.py greeter_server.py
helloworld# python3 greeter_server.py
  1. 客户端启动
$ docker ps | grep ubuntu
be6f5b966749 ubuntu "/bin/sh -c /bin/bash" 2 hours ago Up 2 hours dazzling_margulis
$ docker exec -it be6f5b966749 sh helloworld# ls
greeter_client.py greeter_server.py
# python3 greeter_client.py
Greeter client received: Hello, you! <<<< 通信成功!

python的grpc环境安装的更多相关文章

  1. python新手之一环境安装

    今天开始学习python,首先环境安装 1.在https://www.python.org/downloads/下载python2.X或者3.X(ps:这里建议下载32位的python ,因为64位p ...

  2. python学习笔记1之-python简介及其环境安装

    python学习笔记之-python简介及其环境安装 最近几年python之火不用多说,最近开始利用时间自学python,在学习的过程中,按照自己的思路和理解记录下学习的过程,并分享出来,如果正好你也 ...

  3. selenium+python自动化之环境安装

    一.Python安装 1.操作系统:win7 64位系统 2.下载Python安装包,选择2.7版本和3.6版本都可以(最好安装2.7版本稳定)官网下载地址:https://www.python.or ...

  4. python+selenium自动化测试环境安装

    因为自己安装自动化测试环境时,遇到过许多问题,自己整理了一下安装的步骤,感谢那些帮助过我的人. 1.安装python,我装的是3.5版本,网络上也有许多安装步骤,照着就可以了(其实一直下一步也行) 不 ...

  5. Python系列:一、Python概述与环境安装--技术流ken

    Python简介 Python是一种计算机程序设计语言.是一种动态的.面向对象的脚本语言,最初被设计用于编写自动化脚本(shell),随着版本的不断更新和语言新功能的添加,越来越多被用于独立的.大型项 ...

  6. Python简介及环境安装

    Python 官网传送门 Python是一种面向对象的解释性计算机程序设计语言. Python 2.7将于2020年1月1日终止支持,本笔记基于Python3. pip pip 是一个现代的,通用的 ...

  7. Python系列之环境安装

    Python可以实现强大的数据爬虫功能,并且数据分析与挖掘挺方便,也提供了大量的库,比如numpy, pands,matplotlib等.尤其,使用Python做机器学习也成了近年来的趋势,有人经常会 ...

  8. python项目运行环境安装小结

    安装最新即可,实际的版本号可能不一样 安装过程较复杂,建议用一台单独的vm安装,能做成docker image最好 基础软件 nginx-1.10.0: sudo apt-get install ng ...

  9. centos 7下独立的python 2.7环境安装

    之前写过python 3.x的独立安装,相对来说比较简单直接安装即可,因为对于系统默认的python版本是2.x,那么安装3.x的时候只需要编译到新的目录即可,所有的模块都不会和之前的2有联系,但是如 ...

  10. python在windows环境安装MySQLdb

    一.环境 系统:win7,64位 python版本:2.7.15 pip版本:10.0.1 二.安装 1. 用pip安装 pip install MySQLdb 报错: Could not find ...

随机推荐

  1. 学习记录-Python的局部变量和全局变量

    目录 1 定义 2 作用域的重要性 2.1 全局作用域中的代码不能使用任何局部变量 2.2 局部作用域中的代码可以访问全局变量 2.3 不同局部作用域中的变量不能相互调用 2.4 在不同的作用域中,可 ...

  2. Qt class 前置声明

    转载:https://www.cnblogs.com/ycbeginner/p/9403976.html 在Qt开发项目中,经常会用到各种库,但是一般在.h文件中进行某类型变量定义时,都会对其类型的c ...

  3. 一文读懂 MySQL 索引

    1 索引简介 1.1 什么是 MySQL 的索引 官方定义:索引是帮助 MySQL 高效获取数据的数据结构 从上面定义中我们可以分析出索引本质是一个数据结构,他的作用是帮助我们高效获取数据,在正式介绍 ...

  4. github使用Webhooks实现自动化部署

    参考: https://blog.csdn.net/u013764814/article/details/85240752 -------------------------------------- ...

  5. 15行python代码实现人脸识别

    方法一:face_recognition import cv2 import face_recognition img_path = "C:/Users/CJK/Desktop/1.jpg& ...

  6. 7.Gitee导入其他远程托管中心仓库

    的码云是开源中国推出的基于Git的代码托管服务中心 网址是https://gitee.com/,使用方式跟github一致,并且是一个中文网站 码云的使用配置方式与github一致,码云支持导入git ...

  7. jquery的toggle()函数,显示/隐藏交替

    <!DOCTYPE html> <html lang="en"> <head> <script src="jquery.js&q ...

  8. 题解UVA10948 The primary problem

    前言 前置 \(\sf{Solution}\) 既然有了 \(n\) ,那找出 \(a\) 和 \(b\) 就只要枚举 \(a\) 的范围 \(1\sim n\),判断 \(a\) 和 \(n-a\) ...

  9. 前端学习笔记--HTML5

    网页的优点(客户端为网页)(B/S)模式 开发成本低) 不需要安装 无需更新 跨平台(最重要)可以有效的减小开发成本 传统的为C/S模式,开发成本高 前端工程师负责写网页的源代码,而浏览器负责把网页渲 ...

  10. 【Azure 环境】把OpenSSL生产的自签名证书导入到Azure Key Vault Certificate中报错

    问题描述 通过本地生成的自签名证书导入到Azure Key Vault Certificate报错. 错误信息 the specified PEM X.509 certificate content ...