这篇文章已经有 1359 天没有更新了,内容可能已经过期

手动安装

OS:Centos7
安装时需要注意网络配置

安装时的版本信息请参考FATE.env

Python3.6.5

安装Python3.6的相关依赖包:

yum install openssl-devel bzip2-devel expat-devel gdbm-devel readline-devel sqlite-devel

安装wget,gcc

gcc是一个编译器

yum install wget gcc

安装Python3.6.5

# 下载对应版本的压缩包
wget https://www.python.org/ftp/python/3.6.5/Python-3.6.5.tgz

# 解压文件
tar -xzvf Python-3.6.5.tgz -C /usr/local

# 进入/usr/local/Python-3.6.5,并编译
cd /usr/local/Python-3.6.5
./configure --prefix=/usr/local/python3
make && make install

./configure生成Makefile,make是编译的意思,就是把源码包编译成二进制可执行文件,make install 就是安装的意思。

安装完成以后可以删除安装包,即/usr/local/Python-3.6.5文件夹。

更换系统默认Python版本

原来的系统默认使用的是python2.7

看一下/usr/bin路径下的python,命令:ll

  • 里面的python可能本身就是一个链接,如果是的话需要先删除:rm -rf python,然后创建新的软链接。
  • python是一个文件,使用命令:mv python python2(或者python2.7),再创建软链接。

创建软链接的命令:

ln -s /usr/local/python3/bin/python3.6 /usr/bin/python
ln -s /usr/local/python3/bin/pip3 /usr/bin/pip

创建完成后可以输入python -Vpip -V查看是否安装成功。

查看yum命令是否正常使用(应该是会报错的),
一次打开文件下面两个文件,将两个文件第一行代码都改为#!/usr/bin/python2是之前将原来的python改后的路径!!!

[root@localhost /]# vim /usr/bin/yum

#!/usr/bin/python
import sys


[root@localhost /]# vim /usr/libexec/urlgrabber-ext-down

#! /usr/bin/python

使用pip安装virtualenv和virtualenvwrapper

可以修改pip的安装源,改成国内的源

# 使用命令创建并进入家(不是home)目录下的`.pip`文件夹。
mkdir ~/.pip &&cd ~/.pip

# 创建这个文件
vim pip.conf 

添加一下内容:

[global]
timeout = 6000
index-url = http://pypi.mirrors.ustc.edu.cn/simple/

extra-index-url = http://mirrors.aliyun.com/pypi/simple/
                  http://pypi.tsinghua.edu.cn/simple/
                  http://pypi.org

[install]
trusted-host = pypi.mirrors.ustc.edu.cn
               mirrors.aliyun.com
               pypi.tsinghua.edu.cn
               pypi.org

windows类似,也是在用户的路径下创建文件夹.pip,在里面创建pip/conf文件,内容同上。

pip install virtualenv virtualenvwrapper

找到如下文件:

[root@localhost bin]# find / -name virtualenvwrapper.sh
/usr/local/python3/bin/virtualenvwrapper.sh

编辑配置文件

vim ~/.bashrc

添加如下命令

export WORK_NAME=~/.virtualenvs
export VIRTUALENVWRAPPER_VIRTUALENV=/usr/local/python3/bin/virtualenv

source /usr/local/python3/bin/virtualenvwrapper.sh

保存配置:

[root@localhost bin]# source ~/.bashrc
virtualenvwrapper.user_scripts creating /root/.virtualenvs/premkproject
virtualenvwrapper.user_scripts creating /root/.virtualenvs/postmkproject
virtualenvwrapper.user_scripts creating /root/.virtualenvs/initialize
virtualenvwrapper.user_scripts creating /root/.virtualenvs/premkvirtualenv
virtualenvwrapper.user_scripts creating /root/.virtualenvs/postmkvirtualenv
virtualenvwrapper.user_scripts creating /root/.virtualenvs/prermvirtualenv
virtualenvwrapper.user_scripts creating /root/.virtualenvs/postrmvirtualenv
virtualenvwrapper.user_scripts creating /root/.virtualenvs/predeactivate
virtualenvwrapper.user_scripts creating /root/.virtualenvs/postdeactivate
virtualenvwrapper.user_scripts creating /root/.virtualenvs/preactivate
virtualenvwrapper.user_scripts creating /root/.virtualenvs/postactivate
virtualenvwrapper.user_scripts creating /root/.virtualenvs/get_env_details

安装jdk

使用java -version查看本地有关java信息

使用rpm -qa|grep java命令查看安装包位置

[root@localhost bin]# rpm -qa|grep java
java-1.8.0-openjdk-1.8.0.282.b08-1.el7_9.x86_64
java-1.8.0-openjdk-headless-1.8.0.282.b08-1.el7_9.x86_64

删除上面两个文件:

rpm -e --nodeps java-1.8.0-openjdk-1.8.0.282.b08-1.el7_9.x86_64
rpm -e --nodeps java-1.8.0-openjdk-headless-1.8.0.282.b08-1.el7_9.x86_64

再次输入java就会报错。

下载jdk1.8,最好是本地下载之后上传,保存到/usr/local路径下,并解压

[root@localhost local]# tar -zxvf jdk-1.8.tar.gz
[root@localhost local]# mv jdk1.8.0_281 jdk8
[root@localhost local]# ls
bin  etc  games  include  jdk8  jdk-1.8.tar.gz  lib  lib64  libexec  python3  python-3.6.5  sbin  share  src

配置环境:

vim /etc/profile

# 在最后添加如下内容
export JAVA_HOME=/usr/local/jdk8 # 你的路径
export CLASSPATH=.:${JAVA_HOME}/jre/lib/rt.jar:${JAVA_HOME}/lib/dt.jar:${JAVA_HOME}/lib/toos/jar
export PATH=$PATH:${JAVA_HOME}/bin

# 检查
[root@localhost jdk8]# java -version
java version "1.8.0_281"
Java(TM) SE Runtime Environment (build 1.8.0_281-b09)
Java HotSpot(TM) 64-Bit Server VM (build 25.281-b09, mixed mode)

直接使用Docker安装

安装docker

删除旧版本

sudo yum remove docker \
                docker-client \
                docker-client-latest \
                docker-common \
                docker-latest \
                docker-latest-logrotate \
                docker-logrotate \
                docker-engine

设置仓库地址
安装所需的软件包。yum-utils 提供了 yum-config-manager ,并且 device mapper 存储驱动程序需要 device-mapper-persistent-data 和 lvm2。

yum install -y yum-utils \
  device-mapper-persistent-data \
  lvm2

添加阿里云镜像仓库地址:

sudo yum-config-manager \
    --add-repo \
    http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

这里可能会有报错:

[root@localhost ~]# yum-config-manager \
>     --add-repo \
>     http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
  File "/usr/bin/yum-config-manager", line 135
    except yum.Errors.RepoError, e:

# 修改文件/usr/bin/yum-config-manager,将第一行改为python2
[root@localhost ~]# vim /usr/bin/yum-config-manager

#!/usr/bin/python -tt

使用如下命令查看版本:

[root@localhost ~]# yum list docker-ce --showduplicates | sort -r
[root@localhost ~]# yum list docker-ce-cli --showduplicates | sort -r

docker-ce.x86_64            3:20.10.5-3.el7                     docker-ce-stable
docker-ce.x86_64            3:20.10.4-3.el7                     docker-ce-stable
docker-ce.x86_64            3:20.10.3-3.el7                     docker-ce-stable

安装对应版本的docker(建议安装18.09):

[root@localhost ~]# yum -y install  docker-ce-18.09.9 docker-ce-cli-18.09.9 containerd.io

# 使用如下命令查看是否安装成功
[root@localhost ~]# docker -v
Docker version 18.09.9, build 039a7df9ba

安装可视化界面(可选)

# 下载图形界面
yum groupinstall "GNOME Desktop" "Graphical Administration Tools"

# 查看默认启动方式
systemctl get-default # 是multi-user.target

# 修改默认启动
systemctl set-default graphical.target  # 将默认模式修改为图形界面模式

systemctl set-default multi-user.target # 将默认模式修改为命令行模式

# 使用reboot 命令重启查看

下载fate镜像

# 下载安装包:
mkdir ~/FATE && cd && ~/FATE
wget https://webank-ai-1251170195.cos.ap-guangzhou.myqcloud.com/docker_standalone_fate_1.6.0.tar.gz

# 解压文件
tar -xzvf docker_standalone_fate_1.6.0.tar.gz

# 执行部署
cd docker_standalone_fate_1.6.0
bash install_standalone_docker.sh

如果出现container已经在运行,停止运行再次输入上面的命令即可。

docker ps # 可以查看当前正在运行的容器
docker ps -a # 可以查看所有容器,包括没有运行的。

如果出现端口号8080被占用:

# 输入以下命令查看占用端口号的进程
[root@localhost docker_fate]# fuser -v -n tcp 8080
                     用户     进程号 权限   命令
8080/tcp:            root       7463 F.... java

# 使用kill命令结束进程
kill 7463

测试

# 进入docker环境
CONTAINER_ID=`docker ps -aqf "name=fate"`
docker exec -t -i ${CONTAINER_ID} bash

# 测试
bash ./python/federatedml/test/run_test.sh


# 出现下方语句表示成功:
there are 0 failed test

安装fate-client

virtualwrapper命令:

  • mkvirtualenv [virtualname]     创建新的虚拟环境, 并进入
  • lsvirtualenv           列出所有的虚拟环境
  • workon [virtualname]       进入或切换虚拟环境
  • cdvirtualenv           进入当前的虚拟环境的目录
  • deactivate           退出虚拟环境

创建虚拟环境并安装:

mkvirtual fate
pip install fate-client