📜 [專欄新文章] 使用 ethdock 開發以太坊智能合約應用
✍️ Peter Lai
📥 歡迎投稿: https://medium.com/taipei-ethereum-meetup #徵技術分享文 #使用心得 #教學文 #medium
前言
相信不少人在開發以太坊智能合約的時候都跟我一樣
不想使用瀏覽器版本的編輯環境 Remix 作為開發環境
而是想使用本機的環境再加上自動測試腳本
那這時遇到最大的問題就是環境的架設
如何架設測試 VM 或是私有鏈(要依照熟悉的語言做選擇)
這邊我們介紹使用 docker 容器以及 ethdock 來開發以太坊智能合約應用
讓我們只需要一行指令就可以快速開啟必要的容器
ethdock 以 javascript 和 solidity 為主,如果不是使用這個為主要開發語言可以先左轉
ethdock
ethdock 的命名源自於 ethereum + docker
最初開發是因為平常在公司的電腦跟個人開發的電腦環境不同
這樣要建立兩邊的開發環境會花費不少時間
剛好平時有在使用 docker 所以就建立了 ethdock
讓我可以只要裝 docker 兩邊就有相同的開發環境
服務
ethdock 裡面主要有以下三個開發需要用到的服務
開發的時候需要 workspace 服務和測試鏈服務(testrpc 或是 geth)
workspace
建立開發的工作環境的容器,容器裝了 truffle 可以使用自動測試
testrpc
javascript 測試 VM,每筆交易可以快速回饋這樣減少很多開發時間
geth
建置測試的私有鏈,每筆交易要經過礦工的驗證並記錄,會多增加一些開發時間
開發智能合約
使用 ethdock 開發前要建置並運行容器
testrpc
docker-compose up -d workspace testrpc
進入 workspace 容器,並執行 bash
docker-compose exec workspace bash
調整 truffle.js,就可以使用命令列的方式進行測試以及部署
development: { host: ‘testrpc’, port: 8545, network_id: ‘*’}
truffle test
geth
docker-compose up -d workspace geth
進入 workspace 容器,並執行 bash
docker-compose exec workspace bash
調整 truffle.js 的網路位置,就可以使用命令列的方式進行測試以及部署
development: { from: ‘address’ host: ‘geth’, port: 8545, network_id: ‘*’}
truffle test
使用 geth 作為私有鏈時開發要注意設置 from
結論
ethdock 使用方式非常簡單
讓我們可以迅速在不同的電腦中建立起一樣的開發環境
就不用擔心建立開發環境的方法太複雜
或是不同電腦因為開發環境的關係而影響程式的運作
參考
docker docs
ethdock github
使用 ethdock 開發以太坊智能合約應用 was originally published in Taipei Ethereum Meetup on Medium, where people are continuing the conversation by highlighting and responding to this story.
👏 歡迎轉載分享鼓掌
同時也有10000部Youtube影片,追蹤數超過2,910的網紅コバにゃんチャンネル,也在其Youtube影片中提到,...
「docker-compose exec bash」的推薦目錄:
- 關於docker-compose exec bash 在 Taipei Ethereum Meetup Facebook 的最佳貼文
- 關於docker-compose exec bash 在 コバにゃんチャンネル Youtube 的精選貼文
- 關於docker-compose exec bash 在 大象中醫 Youtube 的精選貼文
- 關於docker-compose exec bash 在 大象中醫 Youtube 的最佳解答
- 關於docker-compose exec bash 在 Interactive shell using Docker Compose - Stack Overflow 的評價
- 關於docker-compose exec bash 在 SSH into a container - DevTools CLI Documentation 的評價
- 關於docker-compose exec bash 在 SSH into docker-compose service container.md - gist GitHub 的評價
docker-compose exec bash 在 コバにゃんチャンネル Youtube 的精選貼文
docker-compose exec bash 在 大象中醫 Youtube 的精選貼文
docker-compose exec bash 在 大象中醫 Youtube 的最佳解答
docker-compose exec bash 在 SSH into a container - DevTools CLI Documentation 的推薦與評價
Use docker ps to get the name of the existing container · Use the command docker exec -it <container name> /bin/bash to get a bash shell in the container ... ... <看更多>
docker-compose exec bash 在 SSH into docker-compose service container.md - gist GitHub 的推薦與評價
While in the same folder as a running docker container execute the following command: docker-compose exec wp bash. For a much crappier shell, ... ... <看更多>
docker-compose exec bash 在 Interactive shell using Docker Compose - Stack Overflow 的推薦與評價
... <看更多>
相關內容