Where communities thrive

  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community

    Hello @t-bast! sorry to disturb you again.
    i tried your solution to fix tendermint 0.18.0 issue but i got that error message when i tried to create indigo process.

    docker: Error response from daemon: OCI runtime create failed: container_linux.go:348: starting container process caused "exec: \"/usr/bin/tendermint\": permission denied": unknown.

    This is what i done:

    1- get tendermint docker repository here : https://github.com/tendermint/tendermint/tree/master/DOCKER
    2- get tendermint 0.18.0 binary here https://github.com/tendermint/tendermint/releases/download/v0.18.0-autodraft/tendermint_0.18.0_linux_amd64.zip and copied at root of DOCKER repository
    3- at root of DOCKER repository run this command sudo docker build -t tendermint . and this sudo docker tag tendermint tendermint/tendermint:0.18.0
    4- run this command sudo docker image ls to check if i have correctly created tendermint 0.18.0 image. I got this output

    tendermint latest 5144420b518a 32 minutes ago 38.9MB
    tendermint/tendermint 0.18.0 5144420b518a 32 minutes ago 38.9MB
    alpine 3.7 3fd9065eaf02 4 months ago 4.15MB

    But after when i tried to create my indigo process i got error below.

    Can you tell me what i done wrong ? Sorry i'm not docker expert :(

    Bastien Teinturier
    Hi gdansou, here are the detailed steps on how to make it work until Tendermint releases a 1.0.0:
    1) Clone the tendermint repo.
    2) Go to DOCKER/Dockerfile and replace it with this: https://gist.github.com/t-bast/978efe9100cfb8d52efc059d93
    3) In the DOCKER directory run: docker build -t "tendermint/tendermint" -t "tendermint/tendermint:0.18.0" .
    4) Now you can generate your project with strat generate and it should work
    Note that I'm having an issue on my machine with docker compose not being able to configure connectivity, but it looks like it's a docker compose issue and some people are complaining on their github - hopefully you won't have that problem with your version of docker
    Many thanks @t-bast for your help ! but i can't access to your github file. can you give me the rights?
    Bastien Teinturier
    Sorry, that's strange it's supposed to be a public gist but
    indeed the link doesn't work
    Here is the content of the file:

    FROM alpine:3.7

    Tendermint will be looking for genesis file in /tendermint (unless you change

    genesis_file in config.toml). You can put your config.toml and private

    validator file into /tendermint.


    The /tendermint/data dir is used by tendermint to store state.

    ENV DATA_ROOT /tendermint

    Set user right away for determinism

    RUN addgroup tmuser && \
    adduser -S -G tmuser tmuser

    Create directory for persistence and give our user ownership

    RUN mkdir -p $DATA_ROOT && \
    chown -R tmuser:tmuser $DATA_ROOT

    jq and curl used for extracting pub_key from private validator while

    deploying tendermint with Kubernetes. It is nice to have bash so the users

    could execute bash commands.

    RUN apk add --no-cache bash curl jq

    RUN apk add --no-cache openssl && \
    wget https://github.com/tendermint/tendermint/releases/download/v0.18.0/tendermint_0.18.0_linux_amd64.zip && \
    unzip -d /bin tendermint_0.18.0_linux_amd64.zip && \
    apk del openssl && \
    rm -f tendermint_0.18.0_linux_amd64.zip

    Expose the data directory as a volume since there's mutable state in there


    p2p port

    EXPOSE 46656

    rpc port

    EXPOSE 46657

    ENTRYPOINT ["tendermint"]

    CMD ["node", "--moniker=hostname"]

    Damn gitter interpreted the # as titles, everything in bold should be a comment :). Let me know if that works for you, otherwise I'll try to fix the gist tomorrow
    Bastien Teinturier
    I've re-tested the gist link and it should be working, it was probably a Github caching issue: https://gist.github.com/t-bast/978efe9100cf9437cfb8d52efc059d93
    Good! it's work but now i got that error chown: cannot error read directory '/etc/grafana/provisioning': Permission denied
    Bastien Teinturier
    I don't repro this, we'll need to investigate further. Just remove grafana from your docker-compose.yml, you most likely don't need monitoring for your tests right now.
    do you accept institutional investors and will have any form of ICO or equity sale ?

    Good morning @t-bast, @alexppxela - trying out Indigo Framework, very impressed so far

    I worked my way out of the machine clustering thing, however I'm bumping into a disk size issue, as the data folder of my nodes keeps growing after the node is started and mining, regardless of whether my blocks contain any data.

    Tried modifying create_empty_blocks = true and create_empty_blocks_interval = 0 in tendermint config.toml, without visible effect (I suspect this file is ignored, at least at node startup time)

    Tried passing in --create_empty_blocks=false at CLI, no more success

    I suspect this has to do with the AppHash changing at every block, hence the --create_empty_blocks directive being ignored - same as tendermint/ethermint#308

    Can you help me out of this swamp?


    Bastien Teinturier
    Hello @rafiduck, glad you were able to successfully build on our framework!
    This does ring a bell indeed (at least the changing app hash issue), we would have to dig into it further.
    I must admit we haven't used Tendermint in a while, we're waiting for their 1.0 release (which shouldn't be too far) to release a new version of our framework with more in-depth tests (and hopefully really stop getting empty blocks).
    Since there will be a lot of changes in their interfaces and configuration, we prefer waiting for a stable version on their side to release something that's prod-ready.
    Got it - so +200mb / day on a standard node is a pain I'll have to live with until then?
    Bastien Teinturier
    That sounds a bit big for blocks that are mainly empty...but basically yes the tendermint layer in that version isn't prod-ready at all (the Tendermint team found and fixed a lot of issues since then) so we don't advise going to production yet, only experimenting with proof of concepts. We will wait for a stable Tendermint version to investigate empty blocks properly and "tuning" the consensus layer to our needs. Is that ok for you?
    Got it - thanks for replying
    In the meantime, maybe woud it be possible at least to reduce that 200mb footprint? Like by adjusting inter-block time, reducing block size, deleting unused past wal files, etc.?
    Alexandre Thibault
    I have not tested with the last version but I used the option -create_empty_blocks_interval=60 to generate less block per day. If you do not need "realtime" validation you can try it.
    @alexppxela either passing it in CLI or in config.toml has no effect on block creation interval - using Tendermint 0.18 and IC 0.3
    @alexppxela did you test it with these versions?
    Alexandre Thibault
    It worked with indigocore 0.2 (tendermint 0.13), but not with the latest version
    We will check and work on it using the tendermint release 1.0
    I have a doubt. for a min block duration as 2h , how many wal files be written in /wal directory. if we have 00001 00002 and 000003 writing. then at which point will 000001 and 000002 has stopped writing. is it time calculation or size calculation of files