Pasinei nekuti yakanga yatove paHabré
Rega ndijekese pakarepo kuti ini handisi nyanzvi mune iyi ndima, asi ndakaratidza kufarira tekinoroji iyi kanopfuura kamwe, asi kuedza kutamba nayo kazhinji kwakakonzera kurwadziwa. Nhasi ndatanga kuedza zvakare ndikawana mamwe maresults andinoda kugovera. Muchidimbu, iyo IPFS yekuisa maitiro uye mamwe manomano anozotsanangurwa (zvese zvakaitwa pa ubuntu, ini handina kuzviyedza pane mamwe mapuratifomu).
Kana wakapotsa kuti IPFS chii, zvakanyorwa mune mamwe mashoko pano:
Kuiswa
Nekuda kwekuchena kwekuyedza, ini ndinokurudzira kuimisa pane imwe yekunze server ipapo ipapo, sezvo isu tichafunga mamwe misungo nekushanda munharaunda uye kure modhi. Zvino, kana uchida, hazvitore nguva kuti uiputse, hapana zvakawanda ipapo.
Isa go
Nokuda kweshanduro yazvino, ona
Ongorora: Zvirinani kuisa IPFS pachinzvimbo chemushandisi anotarisirwa kuishandisa kazhinji. Icho chokwadi ndechekuti pazasi isu tichafunga nezve sarudzo yekukwira kuburikidza
cd ~
curl -O https://dl.google.com/go/go1.12.9.linux-amd64.tar.gz
tar xvf go1.12.9.linux-amd64.tar.gz
sudo chown -R root:root ./go
sudo mv go /usr/local
rm go1.12.9.linux-amd64.tar.gz
Ipapo iwe unofanirwa kuvandudza nharaunda (zvimwe zvakawanda pano:
echo 'export GOPATH=$HOME/work' >> ~/.bashrc
echo 'export PATH=$PATH:/usr/local/go/bin:$GOPATH/bin' >> ~/.bashrc
source ~/.bashrc
Kutarisa kuti kuenda kunoiswa
go version
Kuisa IPFS
Ndakafarira nzira yekuisa zvakanyanya:
Tinoiisa nemurairo
go get -v -u github.com/ipfs/ipfs-update
Mushure meizvi unogona kumhanyisa inotevera mirairo:
ipfs-update shanduro — kuona mavhezheni ese aripo ekudhaunirodha.
ipfs-update vhezheni - kuti uone iyo yazvino yakaiswa vhezheni (kusvikira tave neIPFS yakaiswa, ichave isina).
ipfs-update install ichangoburwa - isa iyo yazvino vhezheni yeIPFS. Panzvimbo pezvichangoburwa, unogona kutsanangura zvakateerana chero vhezheni yaunoda kubva pane rondedzero iripo.
Kuisa ipfs
ipfs-update install latest
Kuongorora
ipfs --version
Zvese zvakanangana nekuiswa mune zvakajairika.
Kutanga IPFS
Kutanga
Kutanga iwe unofanirwa kuita yekutanga.
ipfs init
Mukupindura iwe uchagamuchira chinhu chakadai:
ipfs init
initializing IPFS node at /home/USERNAME/.ipfs
generating 2048-bit RSA keypair...done
peer identity: QmeCWX1DD7HnXXXXXXXXXXXXXXXXXXXXXXXXxxx
to get started, enter:
ipfs cat /ipfs/QmS4ustL54uo8FzR9455qaxZwuMiUhyvMcX9Ba8nUH4uVv/readme
Iwe unogona kumhanyisa iyo yakakurudzirwa kuraira
ipfs cat /ipfs/QmS4ustL54uo8FzR9455qaxZwuMiUhyvMcX9Ba8nUH4uVv/readme
mugumisiro
Hello and Welcome to IPFS!
██╗██████╗ ███████╗███████╗
██║██╔══██╗██╔════╝██╔════╝
██║██████╔╝█████╗ ███████╗
██║██╔═══╝ ██╔══╝ ╚════██║
██║██║ ██║ ███████║
╚═╝╚═╝ ╚═╝ ╚══════╝
If you're seeing this, you have successfully installed
IPFS and are now interfacing with the ipfs merkledag!
-------------------------------------------------------
| Warning: |
| This is alpha software. Use at your own discretion! |
| Much is missing or lacking polish. There are bugs. |
| Not yet secure. Read the security notes for more. |
-------------------------------------------------------
Check out some of the other files in this directory:
./about
./help
./quick-start <-- usage examples
./readme <-- this file
./security-notes
Apa ndipo, mukuona kwangu, zvinhu zvinotanga kunakidza. Kunyangwe padanho rekuisa, vakomana vari kutotanga kushandisa yavo tekinoroji. Iyo yakatsanangurwa hashi QmS4ustL54uo8FzR9455qaxZwuMiUhyvMcX9Ba8nUH4uVv haina kugadzirirwa iwe, asi yakanyudzwa mukuburitswa. Ndiko kuti, vasati vasunungurwa, vakagadzirira chinyorwa chinogamuchirwa, vakadurura muIPFS uye vakawedzera kero kumugadziri. Ndinofunga izvi zvakanaka kwazvo. Uye iyi faira (chaizvoizvo, iyo folda yese) ikozvino inogona kutariswa kwete chete munharaunda, asiwo pane yepamutemo gedhi.
Nenzira, mune iyi kesi, IPFS ine zvimwe zvakafanana neshanduro control server. Kana iwe ukaita shanduko kune iyo faira mafaera uye woisa iyo folda kuIPFS zvakare, ichagamuchira kero nyowani. Panguva imwecheteyo, iyo yekare dhairekitori haizoendi chero kupi zvakangodaro uye ichave iripo kune yayo yapfuura kero.
Direct launch
ipfs daemon
Iwe unofanirwa kuwana mhinduro seizvi:
ipfs daemon
Initializing daemon...
go-ipfs version: 0.4.22-
Repo version: 7
System version: amd64/linux
Golang version: go1.12.7
Swarm listening on /ip4/x.x.x.x/tcp/4001
Swarm listening on /ip4/127.0.0.1/tcp/4001
Swarm listening on /ip6/::1/tcp/4001
Swarm listening on /p2p-circuit
Swarm announcing /ip4/127.0.0.1/tcp/4001
Swarm announcing /ip6/::1/tcp/4001
API server listening on /ip4/127.0.0.1/tcp/5001
WebUI: http://127.0.0.1:5001/webui
Gateway (readonly) server listening on /ip4/127.0.0.1/tcp/8080
Daemon is ready
Kuvhura magonhi eInternet
Chenjerera kune iyi mitsetse miviri:
WebUI: http://127.0.0.1:5001/webui
Gateway (readonly) server listening on /ip4/127.0.0.1/tcp/8080
Zvino, kana iwe wakaisa IPFS munharaunda, iwe uchawana IPFS interfaces uchishandisa kero dzenzvimbo uye zvese zvichave zviripo kwauri (Semuenzaniso,
- webui admin (
github ) pachiteshi 5001. - External API pachiteshi 8080 (kuverenga chete).
Parizvino, ese madoko (5001 uye 8080) anogona kuvhurwa kuti aedze, asi pane yekugadzira server, hongu, port 5001 inoda kuvharwa nefirewall. Kune zvakare port 4001, inodiwa kuti vamwe vezera vakuwane. Inofanira kusiiwa yakavhurika kune zvikumbiro kubva kunze.
Vhura ~/.ipfs/config kuti ugadzirise uye uwane mitsara iyi mairi:
"Addresses": {
"Swarm": [
"/ip4/0.0.0.0/tcp/4001",
"/ip6/::/tcp/4001"
],
"Announce": [],
"NoAnnounce": [],
"API": "/ip4/127.0.0.1/tcp/5001",
"Gateway": "/ip4/127.0.0.1/tcp/8080"
}
Isu tinoshandura 127.0.0.1 kune ip yevhavha yako uye chengetedza faira, mushure mezvo tinotangazve ipfs (regai murairo unomhanya neCtrl + C uye uishandise zvakare).
Unofanira kuwana
...
WebUI: http://ip_вашего_сервера:5001/webui
Gateway (readonly) server listening on /ip4/ip_вашего_сервера/tcp/8080
Iye zvino nzvimbo dzekunze dzinofanira kunge dziripo.
Tarisa
http://домен_или_ip_сервера:8080/ipfs/QmS4ustL54uo8FzR9455qaxZwuMiUhyvMcX9Ba8nUH4uVv/readme
Iyo iri pamusoro readme faira inofanira kuvhurwa.
http://домен_или_ip_сервера:5001/webui/
Iyo web interface inofanira kuvhurwa.
Kana iwe uine webui inomhanya, ipapo IPFS marongero anogona kushandurwa zvakananga mairi, kusanganisira yekutarisa manhamba, asi pazasi ini ndichafunga sarudzo dzekugadzirisa zvakananga kuburikidza neiyo config faira, iyo isingawanzo kutsoropodza. Zviri nani kuyeuka kuti config ndepapi uye chii chekuita nayo, kana zvisina kudaro kana web interface isingashande, ichanyanya kuoma.
Kumisikidza webhu interface kuti ishande neserver yako
Heino gomba rekutanga, iro maawa matatu akashandiswa.
Kana iwe wakaisa IPFS pane yekunze server, asi usina kuisa kana kumhanyisa IPFS munharaunda, ipapo paunoenda ku / webui muwebhu interface unofanirwa kuona kukanganisa kwekubatanidza:
Chokwadi ndechekuti webui, mumaonero angu, inoshanda zvakasiyana. Kutanga, inoedza kubatanidza kune API yevhavha iyo iyo interface yakazaruka (zvichienderana nekero mubrowser, hongu). uye kana ikasashanda ipapo, zvino inoedza kubatana negedhi renzvimbo. Uye kana iwe uine IPFS inomhanya munharaunda, ipapo webui ichashanda zvakanaka kwauri, iwe chete unenge uchishanda ne IPFS yemuno, uye kwete yekunze, kunyangwe iwe wakavhura webui pane yekunze server. Wobva waisa mafaera, asi nekuda kwechimwe chikonzero haungoaona pane yekunze server...
Uye kana isina kuvhurwa munharaunda, isu tinowana kukanganisa kwekubatanidza. Muchiitiko chedu, kukanganisa kunonyanya kuitika nekuda kweCORS, iyo inoratidzwawo newebui, iyo inoratidza kuwedzera config.
ipfs config --json API.HTTPHeaders.Access-Control-Allow-Origin '["http://ip_вашего сервера:5001", "http://127.0.0.1:5001", "https://webui.ipfs.io"]'
ipfs config --json API.HTTPHeaders.Access-Control-Allow-Methods '["PUT", "GET", "POST"]'
Ndakangonyoresa wildcard zvangu
ipfs config --json API.HTTPHeaders.Access-Control-Allow-Origin '["*"]'
Misoro yakawedzerwa inogona kuwanikwa mune imwechete ~/.ipfs/config. Kana ndiri ini
"API": {
"HTTPHeaders": {
"Access-Control-Allow-Origin": [
"*"
]
}
},
Isu tinotangazve ipfs uye tinoona kuti webui yakabudirira kubatana (zvichida kana iwe wakavhura magedhi ekukumbira kubva kunze, sezvatsanangurwa pamusoro).
Iye zvino unogona kurodha maforodha nemafaira zvakananga kuburikidza newebhu interface, pamwe nekugadzira ako maforodha.
Kuisa iyo FUSE faira system
Ichi chinhu chinonakidza.
Isu tinogona kuwedzera mafaera (senge maforodha) kwete chete kuburikidza newebhu interface, asiwo zvakananga mune terminal, semuenzaniso
ipfs add test -r
added QmfYuz2gegRZNkDUDVLNa5DXzKmxxxxxxxxxx test/test.txt
added QmbnzgRVAP4fL814h5mQttyqk1aURxxxxxxxxxxxx test
Yekupedzisira hashi ndiyo hashi yemudzi folda.
Tichishandisa iyi hashi, tinogona kuvhura folda pane chero ipfs node (inogona kuwana yedu node uye kugamuchira zviri mukati), tinogona kuzviita muwebhu interface pachiteshi 5001 kana 8080, kana isu tinogona kuzviita munharaunda kuburikidza ne ipfs.
ipfs ls QmbnzgRVAP4fL814h5mQttyqk1aUxxxxxxxxxxxxx
QmfYuz2gegRZNkDUDVLNa5DXzKmKVxxxxxxxxxxxxxx 10 test.txt
Asi iwe unogona zvakare kuivhura senge folda yenguva dzose.
Ngatigadzire maforodha maviri mumudzi uye tipe kodzero kwavari kumushandisi wedu.
sudo mkdir /ipfs /ipns
sudo chown USERNAME /ipfs /ipns
uye tangazve ipfs ne --mount mureza
ipfs daemon --mount
Unogona kugadzira maforodha mune dzimwe nzvimbo uye kutsanangura nzira kwavari uchishandisa ipfs daemon paramita -mount -mount-ipfs /ipfs_path -mount-ipns /ipns_path
Ikozvino kuverenga kubva pane iyi folda hakuna kujairika.
ls -la /ipfs
ls: reading directory '/ipfs': Operation not permitted
total 0
Ndiko kuti, hapana nzira yakananga kumudzi weiyi folda. Asi iwe unogona kuwana zviri mukati kana iwe uchiziva hashi.
ls -la /ipfs/QmbnzgRVAP4fL814h5mQttyqxxxxxxxxxxxxxxxxx
total 0
-r--r--r-- 1 root root 10 Aug 31 07:03 test.txt
cat /ipfs/QmbnzgRVAP4fL814h5mQttyqxxxxxxxxxxxxxxxxx/test.txt
test
test
Uyezve, mukati mefolda, kunyangwe autocompletion inoshanda kana ichitsanangura nzira.
Sezvandambotaura pamusoro apa, pane zvisinganzwisisike nerudzi urwu rwekukwira: nekukasira, akaiswa FUSE maforodha anowanikwa chete kumushandisi wazvino (kunyangwe mudzi haugone kuverenga kubva kune rakadaro folda, tisingataure vamwe vashandisi muhurongwa) . Kana iwe uchida kuita kuti maforodha aya awanikwe kune vamwe vashandisi, ipapo mukugadzirisa iwe unofanirwa kushandura "FuseAllowOther": nhema ku "FuseAllowOther": chokwadi. Asi handizvo zvoga. Kana iwe uchimhanyisa IPFS semudzi, saka zvese zvakanaka. Uye kana pachinzvimbo chemushandisi wenguva dzose (kunyangwe sudo), iwe unowana kukanganisa
mount helper error: fusermount: option allow_other only allowed if 'user_allow_other' is set in /etc/fuse.conf
Muchiitiko ichi, unofanirwa kugadzirisa /etc/fuse.conf nekubvisa mutsara #user_allow_other.
Mushure meizvi tinotangazve ipfs.
Nyaya dzinozivikanwa neFUSE
Dambudziko rakaonekwa kanopfuura kamwechete kuti mushure mekutangazve ipfs nekukwira (uye pamwe mune dzimwe nguva), iyo / ipfs uye / ipns makomo mapoinzi haasvikiki. Iko hakuna mukana kwavari, asi ls -la /ipfs inoratidza ???? mumazita ekodzero.
Ndakawana mhinduro iyi:
fusermount -z -u /ipfs
fusermount -z -u /ipns
Zvadaro tinotangazve ipfs.
Kuwedzera sevhisi
Ehe, kumhanya mune terminal kwakakodzera chete bvunzo dzekutanga. Mukurwisa maitiro, iyo daemon inofanirwa kutanga yega kana sisitimu yatanga.
Pamusoro pe sudo, gadzira iyo faira /etc/systemd/system/ipfs.service uye nyora mairi:
[Unit]
Description=IPFS Daemon
After=syslog.target network.target remote-fs.target nss-lookup.target
[Service]
Type=simple
ExecStart=/home/USERNAME/work/bin/ipfs daemon --mount
User=USERNAME
Restart=always
[Install]
WantedBy=multi-user.target
USERNAME, hongu, inofanira kutsiviwa nemushandisi wako (uye pamwe nzira izere yeipfs chirongwa ichave yakasiyana kwauri (iwe unofanirwa kutsanangura iyo yakazara nzira)).
Ngatimuse sevhisi.
sudo systemctl enable ipfs.service
Ngatitangei sevhisi.
sudo service ipfs start
Kuongorora mamiriro ebasa.
sudo service ipfs status
Nekuchena kwekuyedza, zvinogoneka kudzoreredza server mune ramangwana kuti uone kuti ipfs inotanga zvakabudirira otomatiki.
Kuwedzera vezera vanozivikanwa kwatiri
Ngatitarisei mamiriro ezvinhu apo isu tine IPFS node dzakaiswa ese pane yekunze server uye munharaunda. Pane sevha yekunze tinowedzera imwe faira uye edza kuitora kuburikidza neIPFS munharaunda neCID. Chii chichaitika? Ehezve, sevha yemuno ingangove isina chainoziva nezve yedu yekunze sevha uye inongoedza kutsvaga faira neCID ne "kubvunza" vese IPFS vezera varipo kwairi (iyo yakatokwanisa "kuziva"). Ivowo vanozobvunza vamwe. Uye zvichingodaro kusvikira faira yawanikwa. Chaizvoizvo, chinhu chimwe chete chinoitika patinoedza kugamuchira faira kuburikidza negedhi repamutemo
1. Enda kune server iri kure uye tsvaga ~/.ipfs/config mukugadzirisa
"Identity": {
"PeerID": "QmeCWX1DD7HnPSuMHZSh6tFuxxxxxxxxxxxxxxxx",
2. Mhanya sudo sevhisi ipfs chimiro uye tsvaga Swarm mapindiro mairi, semuenzaniso:
Swarm announcing /ip4/ip_вашего_сервера/tcp/4001
3. Kubva pane izvi tinowedzera kero yakawanda yefomu "/ip4/ip_of_your_server/tcp/4001/ipfs/$PeerID".
4. Nekuvimbika, ngatiedzei kuwedzera kero iyi kune vezera redu kuburikidza newebhu webui yedu.
5. Kana zvinhu zvose zvakanaka, vhura config yemunharaunda ~/.ipfs/config, tsvaga "Bootstrap" mairi: [...
uye wedzera kero yakagamuchirwa kutanga kune yakarongwa.
Tangazve IPFS.
Zvino ngatiwedzerei faira kune yekunze server uye edza kuikumbira pane yemuno. Inofanira kubhururuka mukati nekukurumidza.
Asi kushanda uku hakusati kwagadzikana. Sekunzwisisa kwandinoita, kunyangwe tikatsanangura kero yevezera muBootstrap, panguva yekushanda ipfs inoshandura rondedzero yehukama hunoshanda kune vezera. Chero zvazvingava, nhaurirano yeizvi uye zvishuwo maererano nemukana wekutsanangura vezera rekusingaperi iri kuitika
Rondedzero yevezera razvino inogona kutariswa mune webui uye mune terminal.
ipfs swarm peers
Munzvimbo dzose dziri mbiri iwe unogona kuwedzera mabiko ako pachako.
ipfs swarm connect "/ip4/ip_вашего_сервера/tcp/4001/ipfs/$PeerID"
Kusvikira mashandiro aya avandudzwa, unogona kunyora chishandiso chekutarisa kubatana nevezera raunoda uye, kana zvisiri, kuwedzera kubatana.
Kukurukurirana
Pakati peavo vakatojairana neIPFS, pane zvese zvinopokana uye zvinopesana neIPFS. Chaizvoizvo, zuva rakapfuura nezuro
Rega nditsanangure. Kana iwe uchifunga nezvazvo nenzira iyi, ikozvino tinogovera ruzivo maererano nenheyo "Ndinovimba kuti uyo wandakapa kwaari achaidzivirira uye haizorasikirwe kana kugamuchirwa nemunhu waasina kuitirwa." Semuenzaniso, zviri nyore kufunga akasiyana e-mail masevhisi, kuchengetedza gore, nezvimwe. Uye chii chatinacho pakupedzisira? Hub paHabré
Ndeipi sarudzo yandinoona? Zvinoratidzika kwandiri kuti data inofanira kutanga kugoverwa pachena. Asi pachena munyaya iyi hazvirevi kuti zvose zvinofanira kuva nyore kuverenga. Ndiri kutaura nezve kuvhurika kwekuchengetedza uye kugovera, asi kwete kuvhurika kwakakwana mukuverenga. Ndinofungidzira kuti ruzivo runofanira kugoverwa nemakiyi eruzhinji. Mushure mezvose, musimboti wemakiyi eruzhinji / ega ega atove ekare seInternet. Kana ruzivo rwusina kuvanzika uye rwakaitirwa denderedzwa rakakura, rinobva ratumirwa nekukasira nekiyi yeruzhinji (asi ichiri mufomu yakavharidzirwa, chero munhu anogona kuinyora nekiyi iripo). Uye kana zvisiri, zvino inotumirwa pasina kiyi yeruzhinji, uye kiyi pachayo inotamirwa kune uyo anofanirwa kuwana ruzivo urwu. Panguva imwecheteyo, uyo anofanirwa kuiverenga anofanira kunge aine kiyi chete, uye kwaanowana ruzivo urwu haafanire kuve nebasa kwaari - anongoridhonza kubva kune network (iyi ndiyo nheyo itsva yekugovera nezviri mukati, uye kwete. nekero).
Saka, pakurwiswa kukuru, vanorwisa vachada kuwana nhamba huru yemakiyi akavanzika, uye izvi hazvigone kuitwa munzvimbo imwechete. Iri basa, sezvandinoriona, rakaoma pane kubira sevhisi chaiyo.
Uye pano panouya rimwe dambudziko: kusimbiswa kweunyori. Iye zvino paInternet unogona kuwana mazwi akawanda akanyorwa neshamwari dzedu. Asi ndeipi vimbiso yekuti ndivo vakanyora? Zvino, kana rekodhi imwe neimwe yakadaro ichiperekedzwa nedhijitari siginicha, zvingave zviri nyore. Uye hazvina basa kuti ruzivo urwu rwuri kupi, chinhu chikuru ndicho siginicha, izvo zviri pachena kuti zvakaoma kugadzira.
Uye hezvino izvo zvinonakidza pano: IPFS yatove ine encryption maturusi (mushure mezvose, yakavakirwa pane blockchain tekinoroji). Iyo yakavanzika kiyi inokurumidza kuratidzwa mune config.
"Identity": {
"PeerID": "QmeCWX1DD7HnPSuMHZSh6tFuMxxxxxxxxxxxxxx",
"PrivKey": "CAASqAkwggSkAgEAAoIBAQClZedVmj8JkPvT92sGrNIQmofVF3ne8xSWZIGqkm+t9IHNN+/NDI51jA0MRzpBviM3o/c/Nuz30wo95vWToNyWzJlyAISXnUHxnVhvpeJAbaeggQRcFxO9ujO9DH61aqgN1m+JoEplHjtc4KS5
pUEDqamve+xAJO8BWt/LgeRKA70JN4hlsRSghRqNFFwjeuBkT1kB6tZsG3YmvAXJ0o2uye+y+7LMS7jKpwJNJBiFAa/Kuyu3W6PrdOe7SqrXfjOLHQ0uX1oYfcqFIKQsBNj/Fb+GJMiciJUZaAjgHoaZrrf2b/Eii3z0i+QIVG7OypXT3Z9JUS60
KKLfjtJ0nVLjAgMBAAECggEAZqSR5sbdffNSxN2TtsXDa3hq+WwjPp/908M10QQleH/3mcKv98FmGz65zjfZyHjV5C7GPp24e6elgHr3RhGbM55vT5dQscJu7SGng0of2bnzQCEw8nGD18dZWmYJsE4rUsMT3wXxhUU4s8/Zijgq27oLyxKNr9T7
2gxqPCI06VTfMiCL1wBBUP1wHdFmD/YLJwOjV/sVzbsl9HxqzgzlDtfMn/bJodcURFI1sf1e6WO+MyTc3.................
Ini handisi nyanzvi yekuchengetedza uye ini handigone kunyatsoziva nzira yekushandisa izvi nemazvo, asi zvinoratidzika kwandiri kuti makiyi aya anoshandiswa padanho rekuchinjana pakati peIPFS node. Uye zvakare
Vashandisi vakanyoresa chete ndivo vanogona kutora chikamu muongororo.
Wakambonzwa nezve IPFS here?
-
Handisati ndambonzwa nezve IPFS, asi zvinoita sekunakidza
-
Handisati ndanzwa uye handidi kunzwa
-
Ndakanzwa nezvazvo, asi handina kuzvifarira
-
Ndakazvinzwa, asi handina kuzvinzwisisa, asi zvino zvinoita sekunakidza
-
Ndanga ndichishingaira kushandisa IPFS kwenguva yakareba.
69 vashandisi vakavhota. 13 vashandisi vakaramba.
Source: www.habr.com