Skip to content
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

Official Docker Image #5311

Open
ognots opened this issue Jan 8, 2021 · 4 comments
Open

Official Docker Image #5311

ognots opened this issue Jan 8, 2021 · 4 comments
Assignees
Labels
area/build Discussions about build and compilation issues kind/enhancement Kind: Enhancement need/team-input Hint: Needs Team Input

Comments

@ognots
Copy link
Contributor

ognots commented Jan 8, 2021

As part of the Lotus release process, create Docker image(s) containing all lotus binaries.

Guiding Principles

  • Runtime environment(s) should have required packages and libraries installed using latest acceptable versions. For lotus-miner and lotus-worker a viable GPU runtime should be included, likely based on nvidia/opencl. Likely an Ubuntu based image.
  • Should be deployment agnostic. No scripts or custom entry points or general opinions on how to run binaries should be included
  • Be a building block for custom Docker images. Any customization should occur as a further layer on top of this image, using this image as the FROM source
  • lotus-miner and lotus-worker binaries should produce native builds setting RUSTFLAGS="-C target-cpu=native -g and FFI_BUILD_FROM_SOURCE=1 - blocked by Upgrade blst to fix cross cpu architecture binary incompatibilities  #3339
  • images should be published to multiple sources, not just Dockerhub which has recently introduced restrictions on image pulls
  • include all binaries from lotus. grouping of binaries in individual images to be determined
@travisperson
Copy link
Contributor

There is an issue open currently to update the nvidia/opencl container to support ubuntu 20.04 but it appears that nvidia might no longer be maintaining the containers any longer. https://gitlab.com/nvidia/container-images/opencl/-/issues/3

This might require that we add the opencl support our selves and maintain the images or find an alternate base image for opencl.

@nonsense
Copy link
Member

Now that #5394 is merged, it is very easy to extend the initial Dockerfile (https://github.com/filecoin-project/lotus/blob/master/Dockerfile.lotus pretty much copy-pasted from https://github.com/filecoin-project/lotus-infra/tree/master/docker) (currently contains only lotus and lotus-shed binaries) and add any other binaries we might need - either in the same image, or as a separate image pushed to a separate public registry.

@mikeumus
Copy link

@nonsense https://github.com/filecoin-project/lotus-infra/tree/master/docker is 404 now.

Can we run Docker.lotus and be done or is that still just a step in setting up?

@TippyFlitsUK TippyFlitsUK added need/team-input Hint: Needs Team Input area/build Discussions about build and compilation issues kind/enhancement Kind: Enhancement labels May 3, 2022
@ianconsolata ianconsolata self-assigned this Dec 11, 2022
@ianconsolata
Copy link
Contributor

I believe with #9625 and associated fix #9826 this should be complete now.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/build Discussions about build and compilation issues kind/enhancement Kind: Enhancement need/team-input Hint: Needs Team Input
Projects
None yet
Development

No branches or pull requests

6 participants