Skip to content
This repository has been archived by the owner on Dec 9, 2023. It is now read-only.

Add RGB node dockerization #71

Merged
merged 1 commit into from
Sep 16, 2020
Merged

Conversation

zoedberg
Copy link
Contributor

This PR adds a Dockerfile to launch an RGB node (closes #70).
I'll add its related documentation when solving #52.

Copy link
Member

@dr-orlovsky dr-orlovsky left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

utACK, thank you! Have you tried to run it?

--gecos "${USER} user" ${USER}

COPY --from=builder --chown=${USER}:${USER} \
${APP_DIR}/target/release/ /usr/local/bin/
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hm, are we copying content of /release/ dir here, not the dir itself?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The release dir contains binary files, so I've put them in a standard linux directory for binaries. In this way you can access the container running the node and have rgb-cli available in PATH.

Yes, I've tried to run it and it seems working. These are the logs I see when running it:

[2020-09-15T15:24:16Z DEBUG rgb::contracts::fungible::processor] Instantiating RGB asset manager ...
[2020-09-15T15:24:16Z INFO  rgb::contracts::fungible::processor] RGB fungible assets schema file not found, creating one
[2020-09-15T15:24:16Z DEBUG rgb::contracts::fungible::cache::file] Instantiating RGB fungible assets storage (disk storage) ...
[2020-09-15T15:24:16Z DEBUG rgb::contracts::fungible::cache::file] RGB fungible assets data directory '"./data/testnet/cache/fungible"' is not found; creating one
[2020-09-15T15:24:16Z DEBUG rgb::contracts::fungible::cache::file] Initializing assets file Some("./data/testnet/cache/fungible/assets.yaml") ...
[2020-09-15T15:24:16Z DEBUG rgb::contracts::fungible::runtime] Registering RGB20 schema
[2020-09-15T15:24:16Z DEBUG rgb::stash::storage::disk] Instantiating RGB storage (disk storage) ...
[2020-09-15T15:24:16Z DEBUG rgb::stash::storage::disk] RGB data directory '"./data/testnet/stash/default/"' is not found; creating one
[2020-09-15T15:24:16Z DEBUG rgb::stash::storage::disk] RGB schemata directory '"./data/testnet/stash/default/schemata"' is not found; creating one
[2020-09-15T15:24:16Z DEBUG rgb::stash::storage::disk] RGB geneses data directory '"./data/testnet/stash/default/geneses"' is not found; creating one
[2020-09-15T15:24:16Z DEBUG rgb::stash::storage::disk] RGB anchor data directory '"./data/testnet/stash/default/anchors"' is not found; creating one
[2020-09-15T15:24:16Z DEBUG rgb::stash::storage::disk] RGB state transition data directory '"./data/testnet/stash/default/transitions"' is not found; creating one
[2020-09-15T15:24:16Z DEBUG rgb::stash::index::btree] Instantiating RGB index (file & memory storage) ...
[2020-09-15T15:24:16Z DEBUG rgb::stash::runtime] Received ZMQ RPC request: AddSchema(Schema { field_types: {0: String(8), 1: String(256), 2: String(65535), 3: Unsigned(Bit64, 0, 18446744073709551615), 4: Unsigned(Bit64, 0, 18446744073709551615), 5: Unsigned(Bit64, 0, 18446744073709551615), 6: Unsigned(Bit8, 0, 18), 7: Bytes(65535), 8: Integer(Bit64, 1593870844, 9223372036854775807)}, assignment_types: {0: StateSchema { format: Declarative, abi: {Validate: Standard(IssueControl)} }, 1: StateSchema { format: DiscreteFiniteField(Unsigned64bit), abi: {Validate: Standard(ConfidentialAmount)} }, 2: StateSchema { format: Declarative, abi: {Validate: Standard(Prunning)} }}, genesis: GenesisSchema { metadata: {0: Once, 1: Once, 2: NoneOrOnce, 3: Once, 4: Once, 5: NoneOrOnce, 6: Once, 8: Once}, defines: {0: NoneOrOnce, 1: NoneOrUpTo(None), 2: NoneOrUpTo(None)}, abi: {} }, transitions: {0: TransitionSchema { metadata: {4: Once}, closes: {0: Once}, defines: {0: NoneOrOnce, 1: NoneOrUpTo(None), 2: NoneOrUpTo(None)}, abi: {} }, 1: TransitionSchema { metadata: {}, closes: {1: OnceOrUpTo(None)}, defines: {1: NoneOrUpTo(None)}, abi: {} }, 2: TransitionSchema { metadata: {7: NoneOrUpTo(None)}, closes: {1: OnceOrUpTo(None), 2: OnceOrUpTo(None)}, defines: {1: NoneOrUpTo(None), 2: NoneOrUpTo(None)}, abi: {} }} })
[2020-09-15T15:24:16Z DEBUG rgb::stash::runtime] Got ADD_SCHEMA schema_data1pyqqqqqypqqqzqqyqqqsyqqylllsxqqqpqqqqqqqqqqqqq8llllllllllllsgqqqpqqqqqqqqqqqqq8lllllllllllls2qqqpqqqqqqqqqqqqq8llllllllllllsvqqqqyqpypcqqhll7zqqqyy0ezgqtuqqqqqqlllllllllllh7qcqqqqqqqgqqrlsyqgqqyqqsqqqqqqqqqqqqrllllllllllllcpqqq07qgzqqqqzqqqlupssqqqqqqsqqqqqqqqqqqqqyqqzqqqqqqqqqqqqqpqqqqqqqqqqqqqqqqqxqqpqqqqqqqqqqqqqpqqqyqqqqqqqqqqqqq9qqqqqqqqqqqqqqqqqcqqzqqqqqqqqqqqqqyqqqgqqqqqqqqqqqqqxqqqqqqqqqqqqqqqqqqqqyq0alllqqqqqqqqqqpqplhlluqqqqqqqqqqqqqqqqpsqqqqqyqqgqqpqqqqqqqqqqqqqqgqqqqqzqqqqqqqqqqqqqpsqqqqqqqqqqqqqqqqqqqpqrl0llcqqqqqqqqqqgq0alllqqqqqqqqqqqqqqqqqyqqqqqpqqqsplllluqqqqqqqqqqzqqpqrl0llcqqqqqqqqqqqqqqqqzqqqsqpcqlmll7qqqqqqqqqqzqqqsplllluqqqqqqqqqqyq8llllsqqqqqqqqqqsqqyq0alllqqqqqqqqqqpqplhlluqqqqqqqqqqqqqqqqqqqgty8vw
[2020-09-15T15:24:16Z DEBUG rgb::stash::runtime] API request processing complete

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ok, b/c I thought COPY ${APP_DIR}/target/release/ /usr/local/bin/ will result in /usr/local/bin/release/rgbd and not /usr/local/bin/rgbd

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No, because the final / in the source directory instructs docker to copy the files that are inside the directory

@dr-orlovsky dr-orlovsky merged commit d644dfa into RGB-WG:master Sep 16, 2020
@dr-orlovsky
Copy link
Member

Can you also pls add it to LNP-BP/docker#8?

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Add RGB node Dockerfile
2 participants