-
Notifications
You must be signed in to change notification settings - Fork 237
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
Add Docker image #168
Add Docker image #168
Conversation
Hmm okay so our CI secrets don't like external contributors. Will have to figure that out. |
@fracek could you rebase on latest |
eef8871
to
fba85e3
Compare
Ok I rebased it. |
As mentioned on Discord there seems to be some issues with the image. The node is synchronizing but the RPC module is not working. |
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.
As I mentioned on Discord, I tried running the image and it turns out sync works but I cannot see rpc starting. I haven't investigated yet.
b1367f5
to
20f651f
Compare
I updated the image and now I can execute |
20f651f
to
50a06d4
Compare
I pushed the user change. I also noticed that container takes a few seconds to stop with |
@fracek can we try this? I spent some time with alpine and I think its worthwhile. feel free to use this in your PR and still get credit 💪
This:
|
@aphelionz I can rebase and amend this PR. |
Sounds good to me, thank you! |
699b90c
to
00ad25d
Compare
I updated the Dockerfile. I changed three things from what you posted:
|
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.
LGTM! Thanks @fracek, great work 👍
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.
Whoops, actually. My bad. Let's use --release
00ad25d
to
cc8ed10
Compare
I added the |
Great work @fracek we'll look after merging once the tests pass |
@Mirko-von-Leipzig the test failure is the issue with GH secrets right? I don't think anything in |
|
Thanks @fracek! |
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.
LGTM other than the small nit-pick WRT data directory location.
COPY --from=python-builder /usr/local/lib/python3.8/ /usr/local/lib/python3.8/ | ||
|
||
# Create directory and volume for persistent data | ||
RUN mkdir -p /usr/share/pathfinder/data |
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.
Hmm, shouldn't this be something like /var/lib/pathfinder
?
According to the Linux Filesystem Hierarchy Standard:
The /usr/share hierarchy is for all read-only architecture independent data files. [30]
And for /var/lib
(FHS reference):
This hierarchy holds state information pertaining to an application or the system. State information is data that programs modify while they run, and that pertains to one specific host. Users must never need to modify files in /var/lib to configure a package's operation, and the specific file hierarchy used to store the data must not be exposed to regular users.
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.
Makes sense to me, let's break this out into a new issue
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.
This hierarchy holds state information pertaining to an application or the system. State information is data that programs modify while they run, and that pertains to one specific host. Users must never need to modify files in /var/lib to configure a package's operation, and the specific file hierarchy used to store the data must not be exposed to regular users.
There should be 2 volumes: one for the configuration in /usr/share
and one for application data in /var/lib
.
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.
I created a docker image so it's easier to run the node. It can also persist data between restarts.