文介绍如何在Google Cloud Platform的CentOS 7上安装TensorFlow-GPU版本来加速训练深度学习模型。   前期准备 开通Google Cloud Platform并购买带GPU的VM instance(推荐GPUs 1 x NVIDIA Tesla K80)https://console.cloud.google.com VM instance操作系统选择安装CentOS 安装Python发行版本(推荐Anaconda,https://www.anaconda.com)   安装基础开发包 Google Cloud Platform的CentOS 7默认没有安装gcc等软件包。需要手动下载epel来安装gcc。 epel下载地址:Index of /pub/epel/7/x86_64/Packages/e https://dl.fedoraproject.org/pub/epel/7/x86_64/Packages/e/ $ wget https://dl.fedoraproject.org/pub/epel/7/x86_64/Packages/e/epel-release-7-11.noarch.rpm $ sudo rpm -ivh epel-release-7-11.noarch.rpm $ sudo yum install –enablerepo=epel dkms $ sudo yum install kernel* $ sudo yum… Continue Reading Install TensorFlow-GPU on Google Cloud Platform CentOS 7

设计API接口需要考虑安全性,很有必要理清 Identification 识别、Authentication 认证和 Authorization 授权三者关系,其实很简单,举个例子来说: 你要登陆系统, 你有一个用户名 jack,它可以唯一代表你,这就是 Identification 识别; 你输入的用户名 jack 和 密码 123456,服务器验证通过,服务器认为你就是 jack,这就是 Authentication  认证; 你登陆系统后,可以发布/编辑文章,这就是 Authorization 授权。   Identification 识别 判断使用者是谁,鉴定必须是独一无二的,才能正确的分辨出每个人。 主要回答这些问题: 谁是用户?   Authentication 认证 判断使用者是不是他所宣称的那个人, 如帐号密码机制,是基于帐号密码为只有本人跟系统本身才知道的共享秘密,所以只要可以正确输入密码,系统就可判断使用者为这个帐号所代表的人物。 主要回答这些问题: 谁是用户? 用户真的是他/她代表自己的人吗?   Authorization 授权 判断当前使用者所拥有对系统资源存取的权限(等级),例如会员登入后拥有读写资源的权力,而访客只有读的权力。 主要回答这些问题: 用户X是否有权访问资源R? 用户X是否被授权执行操作P? 用户X是否被授权在资源R上执行操作P?   综述 上面识别、认证、授权三者的关系: 系统要知道某个使用者对系统资源的存取权力,包含三个部分 Identification  识别:使用者告诉系统他是谁。… Continue Reading Identification 识别、Authentication 认证和 Authorization 授权三者关系

Raspberry Pi 树莓派安装 Conda Python 发行版有两种办法,一是安装 Miniconda,参考上一篇《On Raspberry Pi 3 Model B – Installation of Miniconda (bundled with Python 3.6)》 https://blog.blogbins.com/2018/11/30/on-raspberry-pi-3-model-b-installation-of-miniconda-bundled-with-python-3-6/;二是安装 Berryconda。 Berryconda 是一款为树莓派定制基于 Conda Python 发行版的开源软件。可以使用它来实现类似 Miniconda 和 Anaconda 的功能。目前 Berryconda 提供了 python2.7 的 Berryconda2 和 python 3.6 的 Berryconda3,同时还支持 树莓派 Zero 1 2 3各个系列,可以根据自己的树莓派版本选择适合的版本安装即可。 GitHub地址https://github.com/jjhelmus/berryconda armv7l安装程序( 树莓派 2或者 3 ) Berryconda3-2.0.0-Linux-armv7l.sh… Continue Reading Raspberry Pi 树莓派通过 Berryconda 安装 Conda Python 发行版

在安装配置完Raspberry Pi树莓派后,系统自带默认的 Python 版本是 2.7,由于平常使用的是 Python3 ,计划升级Python版本。在PC上使用过Anaconda、Virtualenv、pyenv、Pip等多种方式安装升级Python版本和管理其依赖。其中Anaconda是一个开源包管理系统和环境管理系统,可在Windows,macOS和Linux上运行Python版本。 Conda可以快速安装,运行和更新Python软件包及其依赖项。 Conda可以轻松地在本地计算机上的Python环境之间创建,保存,加载和切换。 它是为Python程序创建的,但它可以为任何语言打包和分发软件。于是就想在树莓派上安装一套 Anaconda 环境。 Anaconda 是有系统版本的区分,在安装之前,查看以下系统的情况: [email protected]:~ $ uname -a Linux raspberrypi-blogbin 4.14.71-v7+ #1145 SMP Fri Sep 21 15:38:35 BST 2018 armv7l GNU/Linux 从输出信息可以看到,我们的树莓派和我们平常使用的 X86 平台不一样,树莓派是 armv7l 的平台,我尝试在 Anaconda 上查找相应的版本,但可惜的是 Anaconda 并没有相应的版本。 如果安装Anaconda版本会出现cannot execute binary file: Exec format error错误提示。 [email protected]:~ $ bash… Continue Reading On Raspberry Pi 3 Model B – Installation of Miniconda (bundled with Python 3.6)

rack-attack是用于阻止和限制恶意滥用Web请求的Rack中间件,可以保护您的Rails和Rack应用程序免受恶意客户的侵害。Rack :: Attack可让您根据请求的属性轻松决定何时允许,阻止和限制。 请参阅介绍Rack :: Attack的Backing&Hacking博客文章。https://www.kickstarter.com/backing-and-hacking/rack-attack-protection-from-abusive-clients 或访问https://github.com/kickstarter/rack-attack Getting started Installing Add this line to your application’s Gemfile: # In your Gemfile gem ‘rack-attack’ And then execute: $ bundle Or install it yourself as: $ gem install rack-attack Plugging into the application Then tell your ruby web application to use rack-attack… Continue Reading Ruby Gem – kickstarter/rack-attack: Rack middleware for blocking & throttling

Scenic在Rails中版本化数据库视图脚本。它为ActiveRecord :: Migration添加方法,以在Rails中用Migration版本方式来创建和管理数据库视图。 https://github.com/scenic-views/scenic 使用Scenic,您可以: 将SQL视图的强大功能带到Rails应用程序,而无需将架构格式切换为SQL。 作为额外的好处,您可以在SQL文件中定义视图的结构,这意味着您可以在您选择的编辑器中获得完整的SQL语法突出显示,并且可以在开发期间轻松地在数据库控制台中测试SQL。 提供了版本控制视图的约定,可使您的迁移历史记录在多个环境中保持一致且可逆,并避免在迁移过程中复制SQL字符串或者遗漏执行视图脚本。 Scenic内置适配器支持PostgreSQL。 其他关系型数据库适配器是可配置的(参见Scenic :: Configuration),并且具有其他gem可以提供的最小接口(参见Scenic :: Adapters :: Postgres)。 官方README.md文档介绍如何创建视图脚本,更新或回滚视图,也介绍如何创建和使用view-backed models,以及使用过程中的常见问题(视图缺少主键、定义过期失效等)。最后说明内置PostgreSQL适配器的原因,同时推荐其他关系型数据库适配器。 下面是一个简单的使用例子: 假如想要创建一个名为search_results的视图,您可以使用以下命令创建迁移和相应的视图定义文件: $ rails generate scenic:view search_results create db/views/search_results_v01.sql create db/migrate/[TIMESTAMP]_create_search_results.rb 编辑 db/views/search_results_v01.sql文件,用SQL语句定义您的视图。比如: SELECT statuses.id AS searchable_id, ‘Status’ AS searchable_type, comments.body AS term FROM statuses JOIN comments ON statuses.id = comments.status_id UNION SELECT… Continue Reading Ruby Gem – scenic-views/scenic: Versioned database views for Rails

本文记录如何在 macOS、Python 3.7上安装 TensorFlow,遇到的问题以及解决办法和参考网页链接。鉴于Python 3.7与TensorFlow 1.10.0存在一些兼容问题,如无特殊必要,建议使用Python 3.6安装TensorFlow。 一、环境准备 笔记本电脑:MacBook Pro (15-inch, 2017) 操作系统:macOS MoJave Version 10.14 Python:3.7 TensorFLow:1.10.0 二、安装方式 根据TensorFlow官方教程(https://www.tensorflow.org/install/install_mac?hl=zh-cn),目前可支持如下几种安装 TensorFlow 的方式: Virtualenv “原生”pip Docker 从源代码安装 现选择比较简单安装方式Virtualenv。 三、安装过程 通过发出以下命令安装 pip 和 Virtualenv: $ sudo easy_install pip $ pip install –upgrade virtualenv 通过发出以下某种格式的命令创建 Virtualenv 环境: $ virtualenv –system-site-packages -p python3 targetDirectory… Continue Reading 在 Mac OS X 上安装 TensorFlow  |  TensorFlow

树莓派卡片电脑安装 Docker CE 警告:切勿在没有配置 Docker APT 源的情况下直接使用 apt 命令安装 Docker. 系统要求 Docker CE 不仅支持 x86_64 架构的计算机,同时也支持 ARM 架构的计算机,本小节内容以树莓派单片电脑为例讲解 ARM 架构安装 Docker CE。 Docker CE 支持以下版本的 Raspbian 操作系统: Raspbian Stretch Raspbian Jessie 注: Raspbian 是树莓派的开发与维护机构 树莓派基金会 推荐用于树莓派的首选系统,其基于 Debian。 使用 APT 安装 由于 apt 源使用 HTTPS 以确保软件下载过程中不被篡改。因此,我们首先需要添加使用 HTTPS 传输的软件包以及 CA 证书。 $ sudo apt-get update $ sudo apt-get install \ apt-transport-https \ ca-certificates \ curl… Continue Reading 树莓派卡片电脑安装 Docker CE

推荐安装使用xrdp远程连接Raspberrypi(树莓派)。与其他远程桌面相比,xrdp使用简单与稳定。 首先SSH远程登陆Raspberrypi,安装xrdp sudo apt-get install xrdp Mac通过App Store安装Microsoft Remote Desktop client。 运行Microsoft Remote Desktop client输入你树莓派用户名密码。  

在Raspberry Pi 树莓派上安装V2Ray,并在本机启用Socks代理服务,允许本机和局域网通过Socks代理服务访问外网。 V2Ray 提供了一个在 Linux 中的自动化安装脚本。这个脚本会自动检测有没有安装过 V2Ray,如果没有,则进行完整的安装和配置;如果之前安装过 V2Ray,则只更新 V2Ray 二进制程序而不更新配置。 Raspberrypi(树莓派)属于Linux操作系统分支之一,也支持安装V2Ray。 1.安装V2Ray 以下指令假设已在 su 环境下,如果不是,请先运行 sudo su。 运行下面的指令下载并安装 V2Ray。当 yum 或 apt-get 可用的情况下,此脚本会自动安装 unzip 和 daemon。这两个组件是安装 V2Ray 的必要组件。如果你使用的系统不支持 yum 或 apt-get,请自行安装 unzip 和 daemon $ sudo bash <(curl -L -s https://install.direct/go.sh) Installing V2Ray v3.31 on armv7l Downloading V2Ray. %… Continue Reading Raspberry Pi 树莓派安装V2Ray和启用本地Socks代理