Cover image

เริ่มต้นใช้งาน IPFS ด้วย Docker

18 Nov 2019

Share to:

สวัสดีครับ ในบทความนี้ผมจะอธิบายการใช้งาน IPFS ด้วย Docker ซึ่งการใช้งาน IPFS ด้วย Docker นั้นเป็นแนวทางนึงในการใช้งาน IPFS สําหรับใครที่อยากจะติดตั้งบนเครื่องก็สามารถอ่านเพิ่มเติมได้จาก Document ของ IPFS ได้เลยครับ แต่โดยส่วนตัวของผมนั้น ผมชอบที่จะใช้ผ่าน Docker เนื่องจากไม่ต้องติดตั้ง IPFS บนเครื่องของเรา ถ้าใครยังไม่รู้จัก Docker สามารถไปอ่านบนความเก่าๆได้ครับที่นี่ https://thiti.dev/tags/docker

เริ่มทําตามไปที่ละ Step นะครับ

Step1: Running IPFS ใน Docker

เราจะใช้ Docker image จาก hub.docker.com/r/ipfs/go-ipfs นะครับ

Start container ด้วยคําสั่งนี้

docker run -d --name ipfs_host -v <Your export directory>:/export -v <Your ipfs data directory>:/data/ipfs -p 4001:4001 -p 127.0.0.1:8080:8080 -p 127.0.0.1:5001:5001 ipfs/go-ipfs:latest

เปลี่ยน <Your export directory> และ <Your ipfs data directory> เป็น Directory ตามต้องการ

ตัวอย่าง

docker run -d --name ipfs_host -v /home/thiti/export:/export -v /home/thiti/ipfs:/data/ipfs -p 4001:4001 -p 127.0.0.1:8080:8080 -p 127.0.0.1:5001:5001 ipfs/go-ipfs:latest

จะพบว่ามี Docker Container ชื่อ ipfs_host รันขึ้นมา โดยมี Daemon ของ IPFS รันอยู่ภายใน

ให้ตรวจสอบ log ของ IPFS ว่าพร้อมใช้งานหรือยังด้วยคําสั่ง

docker logs -f ipfs_host

รอจนกว่าจะขึ้นประมาณนี้ แสดงว่า IPFS พร้อมใช้งานแล้ว

Gateway (readonly) server
listening on /ip4/0.0.0.0/tcp/8080

หลังจากนี้เมื่อต้องการใช้งาน IPFS ก็จะเรียกใช้งานผ่าน ipfs_host ครับ

Step2: เพิ่มไฟล์ที่ต้องการเข้าไปยัง IPFS Networkห

Copy File ที่ต้องการไปไว้ใน Directory export (Directory ที่เรา map volume ไว้ตอน Run Docker container)

เพิ่มไฟล์ที่ต้องการเข้าไปยัง IPFS Network โดยใช้คําสั่งตามนี้

docker exec ipfs_host ipfs add /export/<Your file name>

หรือถ้าต้องการเพิ่มทั้ง Directory ก็ใส่ “-r” ตามนี้ครับ

docker exec ipfs_host ipfs add -r /export/<Your directory name>

File ของคุณจะ Online และ IPFS จะแสดงค่า Hash ของ File ขึ้นมา ประมาณนี้

Image

โดยคุณสามารถเข้าถึงไฟล์ด้วยค่า Hash ดังกล่าวผ่านทาง Url นี้

https://ipfs.io/ipfs/<Your hash>

ตัวอย่าง ipfs.io/ipfs/QmVPv5MTWK5k9wbDZcD2LTKzgcpCbnRB3RBNvN4AcZx2VL

เท่านี้ไฟล์ของคุณก็จะคนอยู่ใน IPFS Network เป็นที่เรียบร้อย

File ที่ถูกเพิ่มเข้าไป จะยัง Online อยู่เสมอตามใดที่เครื่องยังเปิดอยู่ หรือมีคนสนใจไฟล์นี้ และ Pin ไฟล์นี้ไว้


Copyright © 2019 - 2024 thiti.dev |  v1.34.0 |  Privacy policy | 

Build with ❤️ and Astro.

Github profile   Linkedin profile   Instagram   X profile   Youtube channel   Telegram   Email contact   วงแหวนเว็บ