Inhaltsverzeichnis
OpenJdk14 installieren (nicht empfohlen)
Entpacken Sie das komprimierte Paket
Installieren Sie Oraclejdk14 (empfohlen)
Verwenden Sie winscp, um in das Verzeichnis /usr/lib/jvm zu übertragen
Geben Sie etc/profile ein, um Umgebungsvariablen zu ändern
Überprüfen Sie die Java-Version
Docker 20 installieren (empfohlen)
Deinstallieren Sie die alte Version von Docker (falls Sie Docker bereits installiert haben).
Installieren Sie die erforderlichen Abhängigkeiten
Richten Sie das stabile Versions-Repository von Docker CE ein:
Stellen Sie sicher, dass Docker erfolgreich installiert wurde
Installieren Sie die Abhängigkeiten Curl, OpenSSL
Installieren Sie die erforderlichen Pakete
Überprüfen Sie die Docker-Version
Installation der angegebenen Version
Docker schließt sich beim Booten selbststartend an
Verwenden Sie Docker, um das Image lokal zu installieren und abzurufen
Geben Sie den MySQL-Container ein
Einrichtung der Python3-Umgebung
System-Python-Standort anzeigen
Laden Sie die für Python3 erforderlichen Abhängigkeiten herunter
Centos7 fügt Epel-Erweiterungsquelle hinzu
Verwenden Sie wegt, um Python3 herunterzuladen
Installieren Sie die Abhängigkeiten zlib, zlib-deve
Ändern Sie #!/usr/bin/python in der ersten Zeile wie folgt
Es gibt noch eine andere Stelle, die geändert werden muss
Ändern Sie #!/usr/bin/python in der ersten Zeile wie folgt
Docker stellt ein Blockchain-Netzwerk bereit
Erstellen Sie eine Blockchain mit einer einzelnen Gruppe und 4 Knoten
Bereitstellung der Fisco-Konsole
Kopieren Sie die Konsolenkonfigurationsdatei
Überprüfen Sie, ob MySQL im System installiert ist
Wenn ein Nullwert zurückgegeben wird, bedeutet dies, dass MySQL nicht installiert ist.
Überprüfen Sie die installierte MariaDB-Datenbankversion
Deinstallieren Sie die installierte MariaDB-Datenbank
Laden Sie die Installationspaketdatei herunter
wegt ist ungültig und muss aktualisiert werden
Installieren Sie das Paket mysql-community-release-el7-5.noarch.rpm
cd zum Installationsverzeichnis, ls zum Anzeigen des Verzeichnisses
Verfügbare MySQL-Installationsdateien anzeigen
Überprüfen Sie, ob MySQL erfolgreich installiert wurde
Richten Sie die Remote-Host-Anmeldung ein
Fügen Sie dem Root-Konto Remote-Anmeldefunktionen hinzu
WeBASE-Front nativ erstellen (nicht empfohlen)
Laden Sie das Installationspaket herunter
Kopieren Sie die SDK-Zertifikatdatei (generiert während build_chain).
Das Docker-Image erstellt schnell WeBase
Erstellen Sie einen Webbase-Benutzer
Geben Sie dem lokalen Webbase-Konto Datenbankeigentum
Überprüfen Sie das WeBASE-Konto
Ein-Klick-Bereitstellung von Webbase (empfohlen)
Überprüfen Sie die Netzwerkrichtlinien des Servers
Entpacken Sie es und geben Sie das Verzeichnis ein
Die Konfigurationsmanagementplattform stellt eine Verbindung zum Blockchain-System her
Wechseln Sie in das Blockchain-Verzeichnis
Verwenden Sie den Befehl, um den Verwaltungsplattformdienst zu starten
Verifizierungsplattformdienste
Erstellung neuer Knoten, Start, Prüfvorgänge (empfohlen)
Suchen Sie den Speicherort des Skripts
Ändern Sie die Konfiguration des neuen Knotens
Betrieb und Wartung der Plattform
Ändern Sie den neuen Knotenstatus und überwachen Sie ihn
Inhaltsverzeichnis
- Schalten Sie die Firewall aus, aktualisieren Sie Yum, aktualisieren Sie andere Elemente usw.
- Konfigurieren Sie Docker+
- Konfigurieren Sie Java
- Konfigurieren Sie MySQL
- Python konfigurieren
- Richten Sie das Cisco-Netzwerk und die Konsole ein
- Erstellen Sie eine Website
Basiseinstellung
Upgrade lecker
yum update
OpenJdk14 installieren (nicht empfohlen)
Download-Link
Archivierte OpenJDK GA-Releases (java.net)
Finden Sie ältere Versionen
查看是否自带java
java -version
检测jdk的安装包
rpm -qa | grep java
批量删除这些安装包
rpm -e --nodeps `rpm -qa | grep java
删除安装的java或jdk目录
which java
rm -rf /usr/bin/java
Entpacken Sie das komprimierte Paket
Verwenden Sie winscp zum Hochladen in das Verzeichnis /usr/lib
cd /usr/lib
In den aktuellen Ordner entpacken
tar -zxvf openjdk-14.0.2_linux-x64_bin.tar.gz
Installationspaket entfernen
rm -rf openjdk-14.0.2_linux-x64_bin.tar.gz
Umgebungsvariablen festlegen
vim /etc/profile
Drücken Sie lange auf i , um in den Einfügemodus zu gelangen, fügen Sie unten die folgenden Einstellungen hinzu, Esc + :wq zum Speichern und Beenden
# JAVA environment
export JAVA_HOME=/usr/lib/jdk-14.0.2
export JRE_HOME=$JAVA_HOME/jre
export CLASSPATH=$CLASSPATH:$JAVA_HOME/lib:$JRE_HOME/lib
export PATH=$PATH:$JAVA_HOME/bin
Konfiguration aktualisieren
source /etc/profile
Probieren Sie es aus
javac
java
Java -version
Installieren Sie Oraclejdk14 (empfohlen)
Download-Link
Java-Archiv-Downloads – Java SE 14
Verwenden Sie winscp, um in das Verzeichnis /usr/lib/jvm zu übertragen
sudo tar -zxvf jdk-14_linux-x64_bin.tar.gz -C /usr/lib/jvm
cd /usr/lib/jvm && sudo mv jdk-14 /usr/lib/jvm/
Geben Sie etc/profile ein, um Umgebungsvariablen zu ändern
vi /etc/profile
export JAVA_HOME=/usr/lib/jvm/jdk-14
export CLASSPATH=$JAVA_HOME/lib:$CLASSPATH
export PATH=$JAVA_HOME/bin:$PATH
Überprüfen Sie die Java-Version
java -version
Docker 20 installieren (empfohlen)
Deinstallieren Sie die alte Version von Docker (falls Sie Docker bereits installiert haben).
sudo yum remove docker docker-common docker-selinux docker-engine
Installieren Sie die erforderlichen Abhängigkeiten
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
Richten Sie das stabile Versions-Repository von Docker CE ein:
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo sudo yum-config-manager --enable docker-ce-nightly
Installieren Sie Docker 20
sudo yum update && sudo yum install docker-ce-20.10.9 docker-ce-cli-20.10.9 containerd.io
Starten Sie den Docker-Dienst
sudo systemctl start docker
Stellen Sie sicher, dass Docker erfolgreich installiert wurde
sudo docker version
Installieren Sie Docker18
Installieren Sie die Abhängigkeiten Curl, OpenSSL
# ubuntu
sudo apt install -y curl openssl
# centos
sudo yum install -y curl openssl openssl-devel
Installieren Sie die erforderlichen Pakete
yum install -y yum-utils device-mapper-persistent-data lvm2
Leckere Quelle einrichten
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
Überprüfen Sie die Docker-Version
yum list docker-ce --showduplicates | sort -r
Installation der angegebenen Version
yum install docker-ce-版本号
yum install docker-ce-18.06.3.ce
Starten Sie den Docker-Befehl
systemctl start docker
Docker schließt sich beim Booten selbststartend an
systemctl enable docker
MySQL 5.6 Dokcer-Installation
Verwenden Sie Docker, um das Image lokal zu installieren und abzurufen
docker pull mysql:5.6
Start-up
docker run -id -p 3307:3306 --name=c_mysql -v $PWD/conf:/etc/mysql/conf.d -v $PWD/logs:/logs -v $PWD/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 mysql:5.6
Behandlung von Startfehlern
1.停止 Docker 服务:可以使用以下命令停止 Docker 服务:
sudo systemctl stop docker
2.清除 iptables 规则:可以使用以下命令清除 iptables 规则:
sudo iptables -F
sudo iptables -X
sudo iptables -t nat -F
sudo iptables -t nat -X
sudo iptables -t mangle -F
sudo iptables -t mangle -X
3.重启 Docker 服务:可以使用以下命令重启 Docker 服务:
sudo systemctl start docker
停止并删除现有的容器
sudo docker stop c_mysql
sudo docker rm c_mysql
重新运行
docker run -id -p 3307:3306 --name=c_mysql -v $PWD/conf:/etc/mysql/conf.d -v $PWD/logs:/logs -v $PWD/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 mysql:5.6
Geben Sie den MySQL-Container ein
docker exec -it c_mysql /bin/bash
mysql -uroot -p123456
Einrichtung der Python3-Umgebung
System-Python-Standort anzeigen
whereis python
Wechseln Sie zum Python-Pfad
cd /usr/bin
Laden Sie die für Python3 erforderlichen Abhängigkeiten herunter
yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gcc make
Centos7 fügt Epel-Erweiterungsquelle hinzu
yum -y install epel-release
yum install python-pip
pip install --upgrade pip
pip install wget
Verwenden Sie wegt, um Python3 herunterzuladen
wget https://www.python.org/ftp/python/3.6.8/Python-3.6.8.tar.xz
这里提示 pip 版本不正确
建议不使用 wegt 的方法下载
下载包通过 winscp 的方法传过去
Entpacken
xz -d Python-3.6.8.tar.xz
tar -xf Python-3.6.8.tar
Manuelle Zusammenstellung
cd Python-3.6.8
./configure prefix=/usr/local/python3
make && make install
Installieren Sie die Abhängigkeiten zlib, zlib-deve
yum install zlib zlib
yum install zlib zlib-devel
Softlinks sichern
mv /usr/bin/python /usr/bin/python.bak
Softlink hinzufügen
ln -s /usr/local/python3/bin/python3.6 /usr/bin/python
prüfen
python -V
Ändern Sie die Yum-Konfiguration, da zur Ausführung Python2 erforderlich ist, da Yum sonst nicht ordnungsgemäß funktioniert.
vi /usr/bin/yum
Ändern Sie #!/usr/bin/python in der ersten Zeile wie folgt
#! /usr/bin/python2
Es gibt noch eine andere Stelle, die geändert werden muss
vi /usr/libexec/urlgrabber-ext-down
Ändern Sie #!/usr/bin/python in der ersten Zeile wie folgt
#! /usr/bin/python2
Abschlussprüfung
输入python2,提示python2.7.5
输入python,提示python3.6
Docker stellt ein Blockchain-Netzwerk bereit
Betriebsverzeichnis erstellen
cd ~ && mkdir -p fisco && cd fisco
Skript herunterladen
curl -#LO https://gitee.com/FISCO-BCOS/FISCO-BCOS/raw/master-2.0/tools/build_chain.sh && chmod u+x build_chain.sh
Erstellen Sie eine Blockchain mit einer einzelnen Gruppe und 4 Knoten
- Versuchen Sie, mit -p andere Ports anzugeben, um zu vermeiden, dass beim Starten der Verwaltungsplattform die Meldung angezeigt wird, dass der Port belegt ist.
bash build_chain.sh -d -l 127.0.0.1:4 -p 30500,20500,8945
Starten Sie die Blockchain
nodes/127.0.0.1/start_all.sh
Behälter prüfen
docker ps -a | egrep fiscobcos
Knoten anzeigen
tail -f nodes/127.0.0.1/node0/log/log* | grep connected
Konsens anzeigen
tail -f nodes/127.0.0.1/node0/log/log* | grep +++
Bereitstellung der Fisco-Konsole
Holen Sie sich die Konsole
cd ~/fisco && curl -LO https://github.com/FISCO-BCOS/console/releases/download/v2.9.2/download_console.sh && bash download_console.sh
Kopieren Sie die Konsolenkonfigurationsdatei
cp -n console/conf/config-example.toml console/conf/config.toml
Konfigurationsdatei ändern
cd console/conf && vi config.toml
# 将端口修改为自己在 build_chain 时用 -p指定的端口
# 如 build_chain.sh -d -l"127.0.0.1:4" -p 30500,20500,8945
# 需要在 config.toml 文件中将 network 一项中的端口参数修改一下
[network]
peers=["127.0.0.1:20500"."127.0.0.1:20501"] # The peer list to connect
Konsolendatei konfigurieren
cp -r nodes/127.0.0.1/sdk/* console/conf/
ls console/conf
Start-up
cd ~/fisco/console && bash start.sh
Installieren Sie MySQL nativ
Überprüfen Sie, ob MySQL im System installiert ist
rpm -qa | grep mysql
Wenn ein Nullwert zurückgegeben wird, bedeutet dies, dass MySQL nicht installiert ist.
Hinweis: In der neuen Version von CentOS7 wurde die Standarddatenbank auf Mariadb statt auf MySQL aktualisiert, sodass durch die Ausführung des Befehls yum install mysql nur die Mariadb-Datenbank aktualisiert und MySQL nicht installiert wird.
Überprüfen Sie die installierte MariaDB-Datenbankversion
rpm -qa|grep -i mariadb
Deinstallieren Sie die installierte MariaDB-Datenbank
rpm -qa|grep mariadb|xargs rpm -e --nodeps
Überprüfen Sie erneut die installierte MariaDB-Datenbankversion, um sicherzustellen, dass die Deinstallation abgeschlossen ist.
rpm -qa|grep -i mariadb
Laden Sie die Installationspaketdatei herunter
wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm
wegt ist ungültig und muss aktualisiert werden
sudo yum install wget
Installieren Sie das Paket mysql-community-release-el7-5.noarch.rpm
rpm -ivh mysql-community-release-el7-5.noarch.rpm
cd zum Installationsverzeichnis, ls zum Anzeigen des Verzeichnisses
cd /etc/yum.repos.d
Verfügbare MySQL-Installationsdateien anzeigen
yum repolist all | grep mysql
Installieren Sie MySQL
yum install mysql-server
Überprüfen Sie, ob MySQL erfolgreich installiert wurde
rpm -qa | grep mysql
Starten Sie den MySQL-Dienst
systemctl start mysqld.service #启动 mysql
systemctl restart mysqld.service #重启 mysql
systemctl stop mysqld.service #停止 mysql
systemctl enable mysqld.service #设置 mysql 开机启动
Passwort festlegen
# mysql -u root
mysql> use mysql;
mysql> update user set password=PASSWORD("这里输入root用户密码") where User='root';
mysql> flush privileges;
Richten Sie die Remote-Host-Anmeldung ein
mysql> GRANT ALL PRIVILEGES ON *.* TO 'your username'@'%' IDENTIFIED BY 'your password';
Fügen Sie dem Root-Konto Remote-Anmeldefunktionen hinzu
mysql> GRANT ALL PRIVILEGES ON *.* TO root@"%" IDENTIFIED BY "123456";
WeBASE-Front nativ erstellen (nicht empfohlen)
Laden Sie das Installationspaket herunter
cd ~/fisco
wget https://osp-1257653870.cos.ap-guangzhou.myqcloud.com/WeBASE/releases/download/v1.5.5/webase-front.zip
Entpacken
unzip webase-front.zip
cd webase-front
Kopieren Sie die SDK-Zertifikatdatei (generiert während build_chain).
-
nodes/${ip}/sdk
Kopieren Sie alle Dateien im Verzeichnis, in dem sich der Knoten befindet, in das aktuelleconf
Verzeichnis -
Wird verwendet, wenn das SDK eine Verbindung mit dem Knoten herstellt (das SDK ermittelt automatisch, ob es sich um ein nationales Geheimnis handelt und ob nationales geheimes SSL verwendet werden soll).
-
Das Verzeichnis der Kette
sdk
enthält die Ordnerca.crt, sdk.crt, sdk.key
undgm
-
gm
Der Ordner enthält die für National Secret SSL erforderlichen Zertifikate -
Beachten Sie, dass der Knoten das nationale SSL-Geheimnis nur
-G
verwendet , wenn es beim Erstellen der Verbindung manuell (in Großbuchstaben) angegeben wird.
-
-
cp -r nodes/${ip}/sdk/* ./conf/
Dienststart und -stopp
启动: bash start.sh
停止: bash stop.sh
检查: bash status.sh
Das Docker-Image erstellt schnell WeBase
Bild ziehen
docker pull fiscoorg/fisco-webase:v2.7.2
Container starten
- Sie müssen die Node0-Konfiguration und das SDK-Zertifikat des generierten
nodes
Verzeichnisses in den Container einbinden und die Protokolle im Container in den Container einbinden/nodes/127.0.0.1/node0/front-log
.
docker run -d -v /nodes/127.0.0.1/node0:/data -v /nodes/127.0.0.1/sdk:/data/sdk -v /nodes/127.0.0.1/node0/front-log:/front/log --network=host -w=/data fiscoorg/fisco-webase:v2.7.2
MySQL-Konfigurationsdaten
Erstellen Sie einen Webbase-Benutzer
CREATE USER 'webase'@'localhost' IDENTIFIED BY '123456';
Datenbank erstellen
create DATABASE webasenodemanager;
create DATABASE webasesign;
Geben Sie dem lokalen Webbase-Konto Datenbankeigentum
GRANT ALL PRIVILEGES ON webasenodemanager.* To 'webase'@'localhost';
GRANT ALL PRIVILEGES ON webasesign.* To 'webase'@'localhost';
quit
Überprüfen Sie das WeBASE-Konto
mysql -u webase -p123456
show databases;
Ein-Klick-Bereitstellung von Webbase (empfohlen)
Umgebung prüfen
- Oracle JDK 8 bis 14
- MySQL-5.6 und höher
- Python3.6 und höher
java -version
mysql --version
python --version
PyMySQL (Python3.6+)
sudo yum -y install python36-pip
sudo pip3 install PyMySQL
Überprüfen Sie die Netzwerkrichtlinien des Servers
- Öffnen Sie den Port der WeBASE-Verwaltungsplattform : Überprüfen Sie, ob der Port der Seite „WeBase-Web-Verwaltungsplattform“ (Standard ist 5000) so eingestellt ist
webPort
, dass er in der Netzwerksicherheitsgruppe des Servers geöffnet wird . Beispielsweise überprüfen Cloud-Service-Anbieter wie Tencent Cloud die Sicherheitsgruppeneinstellungen und öffnen Port 5000 für webase-web. Wenn der Port nicht geöffnet ist, kann der Browser nicht auf die WeBASE-Dienstseite zugreifen. - Öffnen Sie den Node-Front-Port: Wenn Sie über den Browser direkt auf die Seite des Webase-Front-Knotens zugreifen möchten, müssen Sie den Node-Front-Port öffnen
frontPort
(Standard 5002); da die Node-Front direkt mit dem Knoten verbunden ist, ist dies der Fall Es wird nicht empfohlen, die Knotenfront für das öffentliche Netzwerk zu öffnen. Stellen Sie den Port ein . Es wird empfohlen, ihn bei Bedarf zu öffnen
Firewall starten
sudo systemctl start firewalld
Fügen Sie die Ports, die geöffnet werden müssen, zu den Firewall-Regeln hinzu
sudo firewall-cmd --zone=public --add-port=5002/tcp --permanent
Neuladen wird wirksam
sudo firewall-cmd --reload
Bestätigen Sie, dass der Port gültig ist
sudo firewall-cmd --list-ports
Pull-Bereitstellungsskript
wget https://osp-1257653870.cos.ap-guangzhou.myqcloud.com/WeBASE/releases/download/v1.5.5/webase-deploy.zip
Entpacken Sie es und geben Sie das Verzeichnis ein
unzip webase-deploy.zip && cd webase-deploy
Die Konfigurationsmanagementplattform stellt eine Verbindung zum Blockchain-System her
Wechseln Sie in das Blockchain-Verzeichnis
cd ~/fisco/webase-deploy
Konfigurationsdatei ändern
vi common.properties
#将mysql.user和mysql.password改为webase和123456
# Mysql database configuration of WeBASE-Node-Manager 修改相应的MySQL
用户名密码等信息
mysql.ip=localhost
mysql.port=3306
mysql.user=webase #修改此处
mysql.password=123456 #修改此处
mysql.database=webasenodemanager
sign.mysql.ip=localhost
sign.mysql.port=3306
sign.mysql.user=webase #修改此处
sign.mysql.password=123456 #修改此处
sign.mysql.database=webasesign
Verwenden Sie den Befehl, um den Verwaltungsplattformdienst zu starten
# 下载
python3 deploy.py installAll
# 启动
python3 deploy.py startAll
Fehlerbehandlung
- Wenn es darauf hinweist, dass der Port belegt ist
# 查看当前系统中哪个进程正在占用 8545 端口
lsof -i:8545
# 查看当前系统中哪个进程正在占用 8545 端口
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
node 12345 user 12u IPv4 1234567 0t0 TCP *:8545 (LISTEN)
#PID 为 12345 的 node 进程正在占用 8545 端口。如果您想停止该进程:
sudo kill 12345
Verifizierungsplattformdienste
Der anfängliche Standardkontoname ist admin und das Passwort ist Abcd1234
http://localhost:5000
Erstellung neuer Knoten, Start, Prüfvorgänge (empfohlen)
Suchen Sie den Speicherort des Skripts
find / -name gen_node_cert.sh
Neuen Knoten erstellen
cd ~/fisco
bash ./webase-deploy/webase-node-mgr/script/deploy/gen_node_cert.sh -c nodes/cert/agency/ -o ./nodes/127.0.0.1/node4
Ändern Sie die Konfiguration des neuen Knotens
cd nodes/127.0.0.1
-
Kopieren Sie die Datei „config.ini“ der Knoten0-Datei auf den neuen Knoten
cp node0/config.ini node4/config.ini
cp node0/conf/group.1.genesis node4/conf
-
Geben Sie die neue Knotendatei config.ini ein, um die Konfiguration zu ändern.
vi node4/config.ini
将监听端口 20500 改为 20504
将监听端口 8945 改为 8949
将监听端口 30500 改为 30504
[rpc]
channel_listen_ip=0.0.0.0
channel_listen_port=20504
jsonrpc_listen_ip=127.0.0.1
jsonrpc_listen_port=8949
disable_dynamic_group=false
[p2p]
listen_ip=0.0.0.0
listen_port=30504
; nodes to connect
-
Geben Sie das Verzeichnis „node4“ ein und kopieren Sie die Befehlsdatei zum Starten und Stoppen des Knotens
cd node4 && cp ../node0/*.sh .
-
Neuen Knoten starten
./start.sh
Lösung für das Problem mit Startfehlern
[root@gen-173-168-063-126 node4]# ./start.sh
003f404c5163d7333f6d62e84d46983fc73fbedd20cc2882c0a47d1638bcac33
Exceed waiting time. Please try again to start node4
Error: No such object: rootfisconodes127.0.0.1node4
# 解决方法:
vi start.sh
# 将中间行的一段 sleep 1.5 注释掉再次运行即可
-
Ändern Sie die neue Knotenkonfiguration und zeigen Sie die Knoten-ID des Knotens an
# 进入conf目录,查看节点的nodeid
cd conf/
cat node.nodeid
# 复制 nodeid
# 进入console目录,启动Console控制台
cd /fisco/console && bash start.sh
# 将新节点作为观察节点加入群组1当中,并检查是否加入成功
# 查看观察节点列表
getObserverList
# 将新节点添加到观察节点列表中
addObserver (节点的nodeid)
# 检查是否加入成功
getObserverList