diff --git a/Docker.md b/Docker.md new file mode 100644 index 0000000..3926834 --- /dev/null +++ b/Docker.md @@ -0,0 +1,10 @@ +Сборка docker образа avalanchego для akash +``` +git clone https://github.com/bloqhub/akash-avalanchego.git +cd akash-avalanchego +docker build -t bloqhub/avalanchego-ssh:0.1 ./ +``` +помещаем собранный образ в docker hub +``` +docker push bloqhub/avalanchego-ssh:0.1 +``` diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..04d5cf6 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,16 @@ +FROM debian +ARG password +RUN apt update && apt install -y openssh-server bash supervisor ca-certificates curl \ + && sed -i s/#PermitRootLogin.*/PermitRootLogin\ yes/ /etc/ssh/sshd_config \ + && apt clean +RUN sed -ie 's/#Port 22/Port 2242/g' /etc/ssh/sshd_config +RUN /usr/bin/ssh-keygen -A +RUN ssh-keygen -t rsa -b 4096 -f /etc/ssh/ssh_host_key +RUN mkdir /run/sshd +ENV NOTVISIBLE "in users profile" +RUN echo "export VISIBLE=now" >> /etc/profile +RUN curl -sSL https://github.com/ava-labs/avalanchego/releases/download/v1.5.2/avalanchego-linux-amd64-v1.5.2.tar.gz | tar -xzf - && \ +mv ./avalanchego-v1.5.2 /avalanchego +EXPOSE 9650 9651 +COPY supervisord.conf /etc/supervisor/conf.d/supervisord.conf +CMD ["/usr/bin/supervisord", "-c", "/etc/supervisor/conf.d/supervisord.conf"] diff --git a/README.md b/README.md new file mode 100644 index 0000000..bb3c345 --- /dev/null +++ b/README.md @@ -0,0 +1,185 @@ +*Установка и старт Avalanchego ноды в akash* + +Перед установкой akash определяем переменные среды +``` +AKASH_NET="https://raw.githubusercontent.com/ovrclk/net/master/mainnet" +AKASH_VERSION="$(curl -s "$AKASH_NET/version.txt")" +export AKASH_CHAIN_ID="$(curl -s "$AKASH_NET/chain-id.txt")" +export AKASH_NODE="$(curl -s "$AKASH_NET/rpc-nodes.txt" | shuf -n 1)" +``` +Устанавливаем akash (Linux) +``` +curl https://raw.githubusercontent.com/ovrclk/akash/master/godownloader.sh | sh -s -- "v$AKASH_VERSION" +cp ./bin/akash /usr/local/bin/ +``` + +Создаем кошелек +``` +akash keys add default +- name: default +type: local +address: akash1ra5sxladp3wv5ej9p8qx5y227zhya8sfqrdw8h +pubkey: akashpub1addwnpepqtdc60d8yfayuq6340waga494w9uknm2y0jpl37zyzj8wx6fa2cmq06p39e +mnemonic: "" +threshold: 0 +pubkeys: [] + +**Important** write this mnemonic phrase in a safe place. +It is the only way to recover your account if you ever forget your password. + +wood system walnut transfer square soon into very spatial note grief cliff dismiss ability sun exist twin tower marine crazy design gate lift bulk +``` +Сохраняем мнемоническую фразу, без нее восстановление кошелька будет невозможно. + +Определяем переменные с именем и адресом кошелька +``` +export AKASH_ACCOUNT_ADDRESS="$(akash keys show default -a)" +export AKASH_KEY_NAME="default" +``` +Для продолжения необходимо приобрести АКТ токены - https://akash.network/token + +Проверяем баланс +``` +akash --node "$AKASH_NODE" query bank balances "$AKASH_ACCOUNT_ADDRESS" +``` +Создаем сертификат +``` +akash tx cert create client --from=$AKASH_KEY_NAME --chain-id $AKASH_CHAIN_ID --node $AKASH_NODE --fees 200uakt -y +``` +На этом этапе установку akash можно считать завершенной + +Разворачиваем нашу конфигурацию с образом avalanchego +Создаем конфигурационный файл deploy.yml +``` +cat > deploy.yml <