FROM ubuntu:18.04
RUN apt-get update -y
RUN apt-get install -y rsync git m4 build-essential patch unzip bubblewrap wget pkg-config libgmp-dev libev-dev libhidapi-dev libsodium-dev libcurl4-gnutls-dev ocaml
RUN apt-get install -y libgmp-dev m4 perl
RUN wget https://github.com/ocaml/opam/releases/download/2.0.3/opam-2.0.3-x86_64-linux
RUN cp opam-2.0.3-x86_64-linux /usr/local/bin/opam
RUN chmod a+x /usr/local/bin/opam
RUN git clone https://github.com/ocaml/dune.git
WORKDIR /dune/
RUN make release
RUN make install
WORKDIR /
RUN git clone https://gitlab.com/tezos/tezos.git
WORKDIR /tezos/
RUN git checkout alphanet
RUN opam init --bare --disable-sandboxing
RUN eval $(opam env)
RUN make build-deps
RUN eval $(opam env)
RUN opam update && opam upgrade -y
RUN opam config exec make
RUN export PATH=/tezos:$PATH
# RUN source ./src/bin_client/bash-completion.sh
RUN export TEZOS_CLIENT_UNSAFE_DISABLE_DISCLAIMER=Y
COPY ./start-tezos-sandbox.sh .
ENTRYPOINT ["./start-tezos-sandbox.sh"]
I'm trying to run a sandboxed tezos node in a Docker container.
Since it's (to my mind) not possible using the normal tezos docker image, and I ran into issues using granary, I tried setting up a Docker container using the following Dockerfile:
FROM ubuntu:18.04
RUN apt-get update -y
RUN apt-get install -y rsync git m4 build-essential patch unzip bubblewrap wget pkg-config libgmp-dev libev-dev libhidapi-dev libsodium-dev libcurl4-gnutls-dev ocaml
RUN apt-get install -y libgmp-dev m4 perl
RUN wget https://github.com/ocaml/opam/releases/download/2.0.3/opam-2.0.3-x86_64-linux
RUN cp opam-2.0.3-x86_64-linux /usr/local/bin/opam
RUN chmod a+x /usr/local/bin/opam
RUN git clone https://github.com/ocaml/dune.git
WORKDIR /dune/
RUN make release
RUN make install
WORKDIR /
RUN git clone https://gitlab.com/tezos/tezos.git
WORKDIR /tezos/
RUN git checkout alphanet
RUN opam init --bare --disable-sandboxing
RUN eval $(opam env)
RUN make build-deps
RUN eval $(opam env)
RUN opam update && opam upgrade -y
RUN opam config exec make
RUN export PATH=/tezos:$PATH
# RUN source ./src/bin_client/bash-completion.sh
RUN export TEZOS_CLIENT_UNSAFE_DISABLE_DISCLAIMER=Y
COPY ./start-tezos-sandbox.sh .
ENTRYPOINT ["./start-tezos-sandbox.sh"]
The node starts as expected, but executing the command to activate the alpha protocol (i.e., what's aliased to tezos-activate-alpha) does not seem to work. Instead, the third command of start-tezos-sandbox.sh only yields:
Error:
No matching plugin for key scheme
I'm not sure what's causing this error, and even whether running a sandboxed node like this is the correct approach. Is ther any other way to run a sandbox node as a Docker container? Or can this error be fixed? Any help would be appreciated!
Dockerコンテナでサンドボックス化されたtezosノードを実行しようとしています. 通常のtezosdockerイメージを使用することは(私の考えでは)不可能であり、granary <を使用すると問題が発生しました./a>、次のDockerfileを使用してDockerコンテナを設定してみました:
start-tezos-sandbox.sh
は次のようになります.ノードは期待どおりに起動しますが、アルファプロトコル(つまり、
tezos-activate-alpha
のエイリアス)をアクティブ化するコマンドを実行しても機能しないようです.代わりに、start-tezos-sandbox.sh
の3番目のコマンドは次のようになります.このエラーの原因はわかりません.また、このようなサンドボックス化されたノードを実行することが正しいアプローチであるかどうかもわかりません.サンドボックスノードをDockerコンテナとして実行する他の方法はありますか?または、このエラーを修正できますか?助けていただければ幸いです!
ありがとう!