Author Topic: [docker] Images for full-node, delayed-node, cli-wallet and web-wallet  (Read 4704 times)

0 Members and 1 Guest are viewing this topic.

Offline xeroc

  • Board Moderator
  • Hero Member
  • *****
  • Posts: 12922
  • ChainSquad GmbH
    • View Profile
    • ChainSquad GmbH
  • BitShares: xeroc
  • GitHub: xeroc
I just upgraded the core bitshares/bitshares-2 container ..

Offline kuro112

If i had done a little more research this would have saved me so much time, you sir are a hero.
CTO @ Freebie, LLC

Offline wmbutler

  • Full Member
  • ***
  • Posts: 129
    • View Profile
    • Music City Bitcoins
  • GitHub: wmbutler
I have an account with codeship. It can compile docker containers as well. I haven't played with that functionality yet, but I use codeship to test/build non-docker containers at the moment but I know they support docker containers as well.
PTS: PnBVP1iLTsV6U8z4BeJYhF8jMpkLhtTi9r
BTS2.0: billbutler
There are 10 kinds of people. Those who understand binary and those who do not.

Offline xeroc

  • Board Moderator
  • Hero Member
  • *****
  • Posts: 12922
  • ChainSquad GmbH
    • View Profile
    • ChainSquad GmbH
  • BitShares: xeroc
  • GitHub: xeroc
That's good news ... would I actually need to have the bitshares-2 (core container) be built automatically is MORE RAM .. Either I submit a worker proposal to pay for a docker plan or I compile them on my own ..

Offline wmbutler

  • Full Member
  • ***
  • Posts: 129
    • View Profile
    • Music City Bitcoins
  • GitHub: wmbutler
Good news form Docker:

Dear Docker Hub User,

Next week Docker Hub is releasing a significant upgrade to our autobuilds functionality and infrastructure. This upgrade will offer dynamic matching of git branches and tags as well as faster builds.

With this new release, the Docker Hub build system can now be configured to dynamically trigger builds as your team creates new git branches and tags. So if for example you create a new git feature branch named “great-new-feature”, the build system will automatically build a docker image tagged as “great-new-feature”. This allows Docker Hub autobuilds to fit seamlessly into your development and deployment workflow. It is configurable to support full dynamic matches, regex filters, or simple static matches.



We have also overhauled the backend of our build system to provide you with faster builds. Our old system had a global build queue which (at peak times) caused delays of up to 2 hours on builds. Now, each user will have their own build queue. This way, your builds will execute immediately.

Finally, we are providing control over executing multiple builds in parallel. The Automated Build system will execute as many builds in parallel as you have private repositories. So if for example you are subscribed to our 10 repo “small” plan, you could execute 10 builds simultaneously. Users of our free plan (which includes 1 free private repo), can execute one build at a time.

The new build system will be released early next week. If you aren’t already using Automated Builds on docker, this is a great opportunity to try it.

Best regards,
The Docker Hub Team
PTS: PnBVP1iLTsV6U8z4BeJYhF8jMpkLhtTi9r
BTS2.0: billbutler
There are 10 kinds of people. Those who understand binary and those who do not.

Offline xeroc

  • Board Moderator
  • Hero Member
  • *****
  • Posts: 12922
  • ChainSquad GmbH
    • View Profile
    • ChainSquad GmbH
  • BitShares: xeroc
  • GitHub: xeroc
I added some instructions to ease the build for the basic Amazon Linux image and I've got a full node with RPC up and running at 52.23.94.205.

Edit: Got connected with:

ws://52.23.94.205:9080 !!
Very cool .. I merged your PL

Offline wmbutler

  • Full Member
  • ***
  • Posts: 129
    • View Profile
    • Music City Bitcoins
  • GitHub: wmbutler
I added some instructions to ease the build for the basic Amazon Linux image and I've got a full node with RPC up and running at 52.23.94.205.

Edit: Got connected with:

ws://52.23.94.205:9080 !!

« Last Edit: October 28, 2015, 03:10:48 am by wmbutler »
PTS: PnBVP1iLTsV6U8z4BeJYhF8jMpkLhtTi9r
BTS2.0: billbutler
There are 10 kinds of people. Those who understand binary and those who do not.

Offline xeroc

  • Board Moderator
  • Hero Member
  • *****
  • Posts: 12922
  • ChainSquad GmbH
    • View Profile
    • ChainSquad GmbH
  • BitShares: xeroc
  • GitHub: xeroc
xeroc, happy to give you the use of a fat AWS image if needed. Just let me know.
Thank you very much .. for now I got access to a machine from mindphlux (thanks again) ... but I will keep your offer in mind! Thanks

Offline wmbutler

  • Full Member
  • ***
  • Posts: 129
    • View Profile
    • Music City Bitcoins
  • GitHub: wmbutler
xeroc, happy to give you the use of a fat AWS image if needed. Just let me know.
PTS: PnBVP1iLTsV6U8z4BeJYhF8jMpkLhtTi9r
BTS2.0: billbutler
There are 10 kinds of people. Those who understand binary and those who do not.

Offline Riverhead

Latest docker build process now purges the temporary build files and should make the container a lot smaller ..
Currently building the container .. stay tuned

 +5% Great project!

Offline xeroc

  • Board Moderator
  • Hero Member
  • *****
  • Posts: 12922
  • ChainSquad GmbH
    • View Profile
    • ChainSquad GmbH
  • BitShares: xeroc
  • GitHub: xeroc
Latest docker build process now purges the temporary build files and should make the container a lot smaller ..
Currently building the container .. stay tuned


// hub.docker files are updated now! Have fun!
« Last Edit: October 27, 2015, 01:15:16 pm by xeroc »

Offline xeroc

  • Board Moderator
  • Hero Member
  • *****
  • Posts: 12922
  • ChainSquad GmbH
    • View Profile
    • ChainSquad GmbH
  • BitShares: xeroc
  • GitHub: xeroc
I no provide some start scripts and documentation in the README.md
the repo structure has change to faciltate the build and run procedure
the web wallet container can now also be used provided the user extracts the web wallet sources and manually adepts the web socket api server (maybe I can change this later on)

Who is willing to do a testrun on a digitaloceans machine? they support docker natively and I assume it will be deployed with just a few mouse clicks

Offline Musewhale

  • Hero Member
  • *****
  • Posts: 2881
  • 丑,实在是太丑了 !
    • View Profile
MUSE witness:mygoodfriend     vote for me

Offline xeroc

  • Board Moderator
  • Hero Member
  • *****
  • Posts: 12922
  • ChainSquad GmbH
    • View Profile
    • ChainSquad GmbH
  • BitShares: xeroc
  • GitHub: xeroc
I updated the OP .. I encourag everyone that has docker instaled to give it a try and let me know if something breaks

Offline fuzzy

WhaleShares==DKP; BitShares is our Community! 
ShareBits and WhaleShares = Love :D

Offline maqifrnswa

  • Hero Member
  • *****
  • Posts: 661
    • View Profile
nice!
has anyone tried the dockerfile in the bitshares-2 github repo?
https://github.com/bitshares/bitshares-2/blob/bitshares/Dockerfile

looks like it's just for a witness_node, xeroc's is the whole stack
maintains an Ubuntu PPA: https://launchpad.net/~showard314/+archive/ubuntu/bitshares [15% delegate] wallet_account_set_approval maqifrnswa true [50% delegate] wallet_account_set_approval delegate1.maqifrnswa true

Offline namjar

  • Full Member
  • ***
  • Posts: 51
    • View Profile
i am use OpenVZ vps,  cannot run docker, how to fix it?

Offline xeroc

  • Board Moderator
  • Hero Member
  • *****
  • Posts: 12922
  • ChainSquad GmbH
    • View Profile
    • ChainSquad GmbH
  • BitShares: xeroc
  • GitHub: xeroc
It seems hub.docker.com can't build the containers due to not enough RAM .. the build process gets killed by the kernel :(
Not sure this can be fixed .. I'll investigate

//edit: no way around this via automated build .. need a machine with power and good connectivity to upload the containers afterwards ..
anyone?
« Last Edit: October 22, 2015, 03:05:33 pm by xeroc »

Offline xeroc

  • Board Moderator
  • Hero Member
  • *****
  • Posts: 12922
  • ChainSquad GmbH
    • View Profile
    • ChainSquad GmbH
  • BitShares: xeroc
  • GitHub: xeroc
Hmm .. Maybe I put this thing into the docs once docker.io has built them ..

Offline liondani

  • Hero Member
  • *****
  • Posts: 3737
  • Inch by inch, play by play
    • View Profile
    • My detailed info
  • BitShares: liondani
  • GitHub: liondani

Offline cube

  • Hero Member
  • *****
  • Posts: 1404
  • Bit by bit, we will get there!
    • View Profile
  • BitShares: bitcube
Easy.  Things are going to get easier with this tool.  +5%
ID: bitcube
bitcube is a dedicated witness and committe member. Please vote for bitcube.

Offline betax

  • Hero Member
  • *****
  • Posts: 808
    • View Profile
We need a new thread, with tools, docs etc, or just stickies. In a couple of days this will disappear with other bits, like the python libraries / docs and other bits from puppies / spartako
https://metaexchange.info | Bitcoin<->Altcoin exchange | Instant | Safe | Low spreads

Offline betax

  • Hero Member
  • *****
  • Posts: 808
    • View Profile
https://metaexchange.info | Bitcoin<->Altcoin exchange | Instant | Safe | Low spreads

Offline xeroc

  • Board Moderator
  • Hero Member
  • *****
  • Posts: 12922
  • ChainSquad GmbH
    • View Profile
    • ChainSquad GmbH
  • BitShares: xeroc
  • GitHub: xeroc
Hey there,

today I took the time to setup docker build files and images for the full-node, the delayed-node, the cli-wallet and the web-wallet.
Here are the docker files:
https://github.com/xeroc/bitshares-docker

Running the containers
As I have a slow data rate internet connection at home, uploading the images
may take some more time.

Thanks to mindphlux who gave me a fat machine for a day or two, I was able to
build the docker container and upload it for everyone to use.
All you need to do (after installing docker of course) is
Code: [Select]
docker run --name trusted-full-node
           -p 9090:9090 \
           bitshares/bitshares-2-trusted-full-node
If you want to run a public API server you should expose the 8090 port like
this:

Code: [Select]
docker run --name trusted-full-node
           -p 9090:9090 \
           -p 8090:8090 \
           bitshares/bitshares-2-trusted-full-node

I have added some more launch scripts to the docker github repository. The
delayed node and the cli-wallet require a trusted-node and will link to it
automatically.

Note, the web-wallet containers do contain the official build and thus are not
yet using the websocket server in the trusted-full node. Hence, the web-wallet
will not yet do what you think it does!

Build them yourself
If you are brave you can build your own images using these docker files with
Code: [Select]
git clone https://github.com/xeroc/bitshares-docker
cd bitshares-docker
docker build -t bitshares/bitshares-2-trusted-full-node bitshares-2-trusted-full-node
docker build -t bitshares/bitshares-2-delayed-node bitshares-2-delayed-node
docker build -t bitshares/bitshares-2-cli-wallet bitshares-2-cli-wallet
docker build -t bitshares/bitshares-2-webwallet bitshares-2-webwallet
or use the build.sh script

Todo
* I only need to figure out how to let the web wallet connect to the trusted node to have a full bts2 stack deployable via docker.
* The containers are currently relatively big in size .. this size can be reduced by removing the build temp files
* documentation

Have fun!

ps. I expect some more public full nodes to be reachable soonish: https://bitsharestalk.org/index.php/topic,19254.0.html
« Last Edit: October 23, 2015, 07:22:24 am by xeroc »