-
Notifications
You must be signed in to change notification settings - Fork 98
feat: add docker image #600
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
0c37b32 to
7dc7664
Compare
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## master #600 +/- ##
==========================================
+ Coverage 68.87% 77.47% +8.59%
==========================================
Files 35 49 +14
Lines 4932 12766 +7834
==========================================
+ Hits 3397 9890 +6493
- Misses 1535 2876 +1341 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
mojoX911
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
utAck.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Great work on caching of steps, usually people miss on that. Left few comments.
|
@hulxv Please remove the merge commit, we usually rebase PR on top of master. |
dc2ff65 to
758046c
Compare
I merged it from the master because there are some conflicts, so I needed it to avoid them |
stark-3k
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
=> ERROR [builder 12/12] RUN --mount=type=cache,target=/root/.cargo/registry --mount=type=cache,t 1.3s
------
> [builder 12/12] RUN --mount=type=cache,target=/root/.cargo/registry --mount=type=cache,target=/root/.cargo/git git clone https://github.com/citadel-tech/tracker.git && cd tracker && cargo build --release && cp target/release/tracker /tmp/binaries/:
0.087 Cloning into 'tracker'...
1.333 error: failed to parse manifest at `/tmp/tracker/Cargo.toml`
1.333
1.333 Caused by:
1.333 feature `edition2024` is required
1.333
1.333 The package requires the Cargo feature called `edition2024`, but that feature is not stabilized in this version of Cargo (1.75.0 (1d8b05cdd 2023-11-20)).
1.333 Consider trying a newer version of Cargo (this may require the nightly release).
1.333 See https://doc.rust-lang.org/nightly/cargo/reference/unstable.html#edition-2024 for more information about the status of this feature.
------
Dockerfile.builder:49
--------------------
48 | WORKDIR /tmp
49 | >>> RUN --mount=type=cache,target=/root/.cargo/registry \
50 | >>> --mount=type=cache,target=/root/.cargo/git \
51 | >>> git clone https://github.com/citadel-tech/tracker.git && \
52 | >>> cd tracker && \
53 | >>> cargo build --release && \
54 | >>> cp target/release/tracker /tmp/binaries/
--------------------
ERROR: failed to solve: process "/bin/sh -c git clone https://github.com/citadel-tech/tracker.git && cd tracker && cargo build --release && cp target/release/tracker /tmp/binaries/" did not complete successfully: exit code: 101
[ERROR] Failed to build builder image
You might need to update the rust version. I recommend you use a rust alpine base image for the builder stage with updated rust version instead of manually installing rust.
|
@stark-3k I made a CI workflow for testing docker |
Seems like this base image is not available on DockerHub. Can you choose a different base image, preferably the latest stable ones. Also, did you try building these images locally? If not, can you please try to build the images locally before pushing the changes. |
|
@stark-3k it works now |
|
Getting this when running Likely the alpine tag of bitcoin does not support arm, you can use the default debian based image |
stark-3k
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
add docker-compose.generated.yml to gitignore
7b97c06 to
62dbc78
Compare
I tried many solutions to solve this error. can you give me more information about it? all logs the issue doesn't come from Alpine. It supports arm64v8. Maybe it comes from a different thing |
|
@stark-3k @hulxv Can we use these Docker to spawn makers and bitcoind for the demo easily? That would be really helpful if we could use this for platform-agnostic quick setups for maker and bitcoind backend. We can boost priority for this PR and would be good to get it in asap. But it needs the following:
I am not sure whats the current state of this PR. But if we can do that, setting the backend for the demo in users machine will be very smooth. |
Yes, we can use it. The demo will contain multiple containers that run with each other. After merging this PR, we will need to finalize the demo by making some scripts for it, like what we did here, but for deployment.
All these will be implemented in another PR because we need to finish this first.
Currently, the PR is ready, but @stark-3k faced some problem with his machine (macos, arm64) due to we used an image for bitcoind that doesn't support Also, I am working now to fix the broken CI. After all of that, the PR will be ready to merge without any problems. |
56e4e3f to
4475eeb
Compare
|
Changes needed as discussed:
|
39707e2 to
b802e4b
Compare
0512a63 to
0957a91
Compare
- Changes all reference to use Mutinynet instead of bitcoin core. - Nits and other fixes.
…`tracker` custom images
…nd external Tor image
dbad633 to
8a5628a
Compare
mojoX911
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ack
stark-3k
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ack
This PR adds complete Docker containerization support for the Coinswap project, making it easier to deploy, test, and run all Coinswap components in isolated, reproducible environments.
It will help users run and develop Coinswap without headaches during setup. I added the Docker image and some documentation that explains how to use it