Skip to main content
deleted 22 characters in body
Source Link

In my experience IOG's bash scripts, used for running cardano-node, are poorly documented and have poor error handling. I suggest running cardano-node directly with the relevant config files:

/usr/local/bin/cardano-node run --config $CARDANO_CONFIG --topology $CARDANO_TOPOLOGY --database-path $CARDANO_DATABASE_PATH --socket-path $CARDANO_NODE_SOCKET_PATH --host-addr 0.0.0.0 --port 3001

The relevant config files can be found here: https://book.world.dev.cardano.org/environments.html

Of course you would have to change the entrypoint of the docker image to be able to do that. For that I suggest creating a new Dockerfile that wraps inputoutput/cardano-node:latest:

# syntax=docker/dockerfile:1
FROM inputoutput/cardano-node:latest

RUN mkdir -p /data/preprod
RUN mkdir -p /ipc
 
COPY ./config.json /data/preprod/config.json
COPY ./topology.json /data/preprod/topology.json
COPY ./byron-genesis.json /data/preprod/byron-genesis.json
COPY ./shelley-genesis.json /data/preprod/shelley-genesis.json
COPY ./alonzo-genesis.json /data/preprod/alonzo-genesis.json

COPY ./entrypoint /usr/local/bin/entrypoint
RUN chmod +x /usr/local/bin/entrypoint
ENTRYPOINT ["bash", "/usr/local/bin/entrypoint"]

The entrypoint script should contain the first command I mentioned:

#!/bin/bash

export CARDANO_CONFIG=/data/preprod/config.json
export CARDANO_TOPOLOGY=/data/preprod/topology.json
export CARDANO_DATABASE_PATH=/data/preprod/db
export CARDANO_NODE_SOCKET_PATH=/ipc/node.socket

exec /usr/local/bin/cardano-node run --config $CARDANO_CONFIG --topology $CARDANO_TOPOLOGY --database-path $CARDANO_DATABASE_PATH --socket-path $CARDANO_NODE_SOCKET_PATH --host-addr 0.0.0.0 --port 3001

Finally build your image and run it:

docker build -t cardano-preprodnet .
docker run -d -v cardano-node-data:/data cardano-preprodnet

A github repo that does precisely what I described above can be found here: https://github.com/Hyperion-BT/cardano-node-wrappers (disclaimer: I created thisam the creator)

In my experience IOG's bash scripts, used for running cardano-node, are poorly documented and have poor error handling. I suggest running cardano-node directly with the relevant config files:

/usr/local/bin/cardano-node run --config $CARDANO_CONFIG --topology $CARDANO_TOPOLOGY --database-path $CARDANO_DATABASE_PATH --socket-path $CARDANO_NODE_SOCKET_PATH --host-addr 0.0.0.0 --port 3001

The relevant config files can be found here: https://book.world.dev.cardano.org/environments.html

Of course you would have to change the entrypoint of the docker image to be able to do that. For that I suggest creating a new Dockerfile that wraps inputoutput/cardano-node:latest:

# syntax=docker/dockerfile:1
FROM inputoutput/cardano-node:latest

RUN mkdir -p /data/preprod
RUN mkdir -p /ipc
 
COPY ./config.json /data/preprod/config.json
COPY ./topology.json /data/preprod/topology.json
COPY ./byron-genesis.json /data/preprod/byron-genesis.json
COPY ./shelley-genesis.json /data/preprod/shelley-genesis.json
COPY ./alonzo-genesis.json /data/preprod/alonzo-genesis.json

COPY ./entrypoint /usr/local/bin/entrypoint
RUN chmod +x /usr/local/bin/entrypoint
ENTRYPOINT ["bash", "/usr/local/bin/entrypoint"]

The entrypoint script should contain the first command I mentioned:

#!/bin/bash

export CARDANO_CONFIG=/data/preprod/config.json
export CARDANO_TOPOLOGY=/data/preprod/topology.json
export CARDANO_DATABASE_PATH=/data/preprod/db
export CARDANO_NODE_SOCKET_PATH=/ipc/node.socket

exec /usr/local/bin/cardano-node run --config $CARDANO_CONFIG --topology $CARDANO_TOPOLOGY --database-path $CARDANO_DATABASE_PATH --socket-path $CARDANO_NODE_SOCKET_PATH --host-addr 0.0.0.0 --port 3001

Finally build your image and run it:

docker build -t cardano-preprodnet .
docker run -d -v cardano-node-data:/data cardano-preprodnet

A github repo that does precisely what I described above can be found here: https://github.com/Hyperion-BT/cardano-node-wrappers (disclaimer: I created this)

In my experience IOG's bash scripts, used for running cardano-node, are poorly documented and have poor error handling. I suggest running cardano-node directly with the relevant config files:

/usr/local/bin/cardano-node run --config $CARDANO_CONFIG --topology $CARDANO_TOPOLOGY --database-path $CARDANO_DATABASE_PATH --socket-path $CARDANO_NODE_SOCKET_PATH --host-addr 0.0.0.0 --port 3001

The relevant config files can be found here: https://book.world.dev.cardano.org/environments.html

Of course you would have to change the entrypoint of the docker image. For that I suggest creating a new Dockerfile that wraps inputoutput/cardano-node:latest:

# syntax=docker/dockerfile:1
FROM inputoutput/cardano-node:latest

RUN mkdir -p /data/preprod
RUN mkdir -p /ipc
 
COPY ./config.json /data/preprod/config.json
COPY ./topology.json /data/preprod/topology.json
COPY ./byron-genesis.json /data/preprod/byron-genesis.json
COPY ./shelley-genesis.json /data/preprod/shelley-genesis.json
COPY ./alonzo-genesis.json /data/preprod/alonzo-genesis.json

COPY ./entrypoint /usr/local/bin/entrypoint
RUN chmod +x /usr/local/bin/entrypoint
ENTRYPOINT ["bash", "/usr/local/bin/entrypoint"]

The entrypoint script should contain the first command I mentioned:

#!/bin/bash

export CARDANO_CONFIG=/data/preprod/config.json
export CARDANO_TOPOLOGY=/data/preprod/topology.json
export CARDANO_DATABASE_PATH=/data/preprod/db
export CARDANO_NODE_SOCKET_PATH=/ipc/node.socket

exec /usr/local/bin/cardano-node run --config $CARDANO_CONFIG --topology $CARDANO_TOPOLOGY --database-path $CARDANO_DATABASE_PATH --socket-path $CARDANO_NODE_SOCKET_PATH --host-addr 0.0.0.0 --port 3001

Finally build your image and run it:

docker build -t cardano-preprodnet .
docker run -d -v cardano-node-data:/data cardano-preprodnet

A github repo that does precisely what I described above can be found here: https://github.com/Hyperion-BT/cardano-node-wrappers (disclaimer: I am the creator)

added 126 characters in body
Source Link

You could runIn my experience IOG's bash scripts, used for running cardano-node, are poorly documented and have poor error handling. I suggest running cardano-node directly with the relevant config files:

/usr/local/bin/cardano-node run --config $CARDANO_CONFIG --topology $CARDANO_TOPOLOGY --database-path $CARDANO_DATABASE_PATH --socket-path $CARDANO_NODE_SOCKET_PATH --host-addr 0.0.0.0 --port 3001

The relevant config files can be found here: https://book.world.dev.cardano.org/environments.html

Of course you would have to change the entrypoint of the docker image to be able to do that. For that I suggest creating a new Dockerfile that builds onwraps inputoutput/cardano-node:latest:

# syntax=docker/dockerfile:1
FROM inputoutput/cardano-node:latest

RUN mkdir -p /data/preprod
RUN mkdir -p /ipc
 
COPY ./config.json /data/preprod/config.json
COPY ./topology.json /data/preprod/topology.json
COPY ./byron-genesis.json /data/preprod/byron-genesis.json
COPY ./shelley-genesis.json /data/preprod/shelley-genesis.json
COPY ./alonzo-genesis.json /data/preprod/alonzo-genesis.json

COPY ./entrypoint /usr/local/bin/entrypoint
RUN chmod +x /usr/local/bin/entrypoint
ENTRYPOINT ["bash", "/usr/local/bin/entrypoint"]

The entrypoint script should contain the first command I mentioned above:

#!/bin/bash

export CARDANO_CONFIG=/data/preprod/config.json
export CARDANO_TOPOLOGY=/data/preprod/topology.json
export CARDANO_DATABASE_PATH=/data/preprod/db
export CARDANO_NODE_SOCKET_PATH=/ipc/node.socket

exec /usr/local/bin/cardano-node run --config $CARDANO_CONFIG --topology $CARDANO_TOPOLOGY --database-path $CARDANO_DATABASE_PATH --socket-path $CARDANO_NODE_SOCKET_PATH --host-addr 0.0.0.0 --port 3001

Finally build your image and run it:

docker build -t cardano-preprodnet .
docker run -d -v cardano-node-data:/data cardano-preprodnet

A github repo that does precisely what I described above can be found here: https://github.com/Hyperion-BT/cardano-node-wrappers (disclaimer: I created this)

You could run cardano-node directly with the relevant config files:

/usr/local/bin/cardano-node run --config $CARDANO_CONFIG --topology $CARDANO_TOPOLOGY --database-path $CARDANO_DATABASE_PATH --socket-path $CARDANO_NODE_SOCKET_PATH --host-addr 0.0.0.0 --port 3001

The relevant config files can be found here: https://book.world.dev.cardano.org/environments.html

Of course you would have to change the entrypoint of the docker image to be able to do that. For that I suggest creating a new Dockerfile that builds on inputoutput/cardano-node:latest:

# syntax=docker/dockerfile:1
FROM inputoutput/cardano-node:latest

RUN mkdir -p /data/preprod
RUN mkdir -p /ipc
 
COPY ./config.json /data/preprod/config.json
COPY ./topology.json /data/preprod/topology.json
COPY ./byron-genesis.json /data/preprod/byron-genesis.json
COPY ./shelley-genesis.json /data/preprod/shelley-genesis.json
COPY ./alonzo-genesis.json /data/preprod/alonzo-genesis.json

COPY ./entrypoint /usr/local/bin/entrypoint
RUN chmod +x /usr/local/bin/entrypoint
ENTRYPOINT ["bash", "/usr/local/bin/entrypoint"]

The entrypoint script should contain the command I mentioned above:

#!/bin/bash

export CARDANO_CONFIG=/data/preprod/config.json
export CARDANO_TOPOLOGY=/data/preprod/topology.json
export CARDANO_DATABASE_PATH=/data/preprod/db
export CARDANO_NODE_SOCKET_PATH=/ipc/node.socket

exec /usr/local/bin/cardano-node run --config $CARDANO_CONFIG --topology $CARDANO_TOPOLOGY --database-path $CARDANO_DATABASE_PATH --socket-path $CARDANO_NODE_SOCKET_PATH --host-addr 0.0.0.0 --port 3001

Finally build your image and run it:

docker build -t cardano-preprodnet .
docker run -d -v cardano-node-data:/data cardano-preprodnet

A github repo that does precisely what I described above can be found here: https://github.com/Hyperion-BT/cardano-node-wrappers (disclaimer: I created this)

In my experience IOG's bash scripts, used for running cardano-node, are poorly documented and have poor error handling. I suggest running cardano-node directly with the relevant config files:

/usr/local/bin/cardano-node run --config $CARDANO_CONFIG --topology $CARDANO_TOPOLOGY --database-path $CARDANO_DATABASE_PATH --socket-path $CARDANO_NODE_SOCKET_PATH --host-addr 0.0.0.0 --port 3001

The relevant config files can be found here: https://book.world.dev.cardano.org/environments.html

Of course you would have to change the entrypoint of the docker image to be able to do that. For that I suggest creating a new Dockerfile that wraps inputoutput/cardano-node:latest:

# syntax=docker/dockerfile:1
FROM inputoutput/cardano-node:latest

RUN mkdir -p /data/preprod
RUN mkdir -p /ipc
 
COPY ./config.json /data/preprod/config.json
COPY ./topology.json /data/preprod/topology.json
COPY ./byron-genesis.json /data/preprod/byron-genesis.json
COPY ./shelley-genesis.json /data/preprod/shelley-genesis.json
COPY ./alonzo-genesis.json /data/preprod/alonzo-genesis.json

COPY ./entrypoint /usr/local/bin/entrypoint
RUN chmod +x /usr/local/bin/entrypoint
ENTRYPOINT ["bash", "/usr/local/bin/entrypoint"]

The entrypoint script should contain the first command I mentioned:

#!/bin/bash

export CARDANO_CONFIG=/data/preprod/config.json
export CARDANO_TOPOLOGY=/data/preprod/topology.json
export CARDANO_DATABASE_PATH=/data/preprod/db
export CARDANO_NODE_SOCKET_PATH=/ipc/node.socket

exec /usr/local/bin/cardano-node run --config $CARDANO_CONFIG --topology $CARDANO_TOPOLOGY --database-path $CARDANO_DATABASE_PATH --socket-path $CARDANO_NODE_SOCKET_PATH --host-addr 0.0.0.0 --port 3001

Finally build your image and run it:

docker build -t cardano-preprodnet .
docker run -d -v cardano-node-data:/data cardano-preprodnet

A github repo that does precisely what I described above can be found here: https://github.com/Hyperion-BT/cardano-node-wrappers (disclaimer: I created this)

Source Link

You could run cardano-node directly with the relevant config files:

/usr/local/bin/cardano-node run --config $CARDANO_CONFIG --topology $CARDANO_TOPOLOGY --database-path $CARDANO_DATABASE_PATH --socket-path $CARDANO_NODE_SOCKET_PATH --host-addr 0.0.0.0 --port 3001

The relevant config files can be found here: https://book.world.dev.cardano.org/environments.html

Of course you would have to change the entrypoint of the docker image to be able to do that. For that I suggest creating a new Dockerfile that builds on inputoutput/cardano-node:latest:

# syntax=docker/dockerfile:1
FROM inputoutput/cardano-node:latest

RUN mkdir -p /data/preprod
RUN mkdir -p /ipc
 
COPY ./config.json /data/preprod/config.json
COPY ./topology.json /data/preprod/topology.json
COPY ./byron-genesis.json /data/preprod/byron-genesis.json
COPY ./shelley-genesis.json /data/preprod/shelley-genesis.json
COPY ./alonzo-genesis.json /data/preprod/alonzo-genesis.json

COPY ./entrypoint /usr/local/bin/entrypoint
RUN chmod +x /usr/local/bin/entrypoint
ENTRYPOINT ["bash", "/usr/local/bin/entrypoint"]

The entrypoint script should contain the command I mentioned above:

#!/bin/bash

export CARDANO_CONFIG=/data/preprod/config.json
export CARDANO_TOPOLOGY=/data/preprod/topology.json
export CARDANO_DATABASE_PATH=/data/preprod/db
export CARDANO_NODE_SOCKET_PATH=/ipc/node.socket

exec /usr/local/bin/cardano-node run --config $CARDANO_CONFIG --topology $CARDANO_TOPOLOGY --database-path $CARDANO_DATABASE_PATH --socket-path $CARDANO_NODE_SOCKET_PATH --host-addr 0.0.0.0 --port 3001

Finally build your image and run it:

docker build -t cardano-preprodnet .
docker run -d -v cardano-node-data:/data cardano-preprodnet

A github repo that does precisely what I described above can be found here: https://github.com/Hyperion-BT/cardano-node-wrappers (disclaimer: I created this)