Comments (12)
I think a logical first step would be to push the pbs, slurm, etc images to docker hub. That will really help simplify things on our end and will be a good first step toward speeding things up in the CI tests. Once that is done, we can go over how to install dependencies.
from dask-jobqueue.
For the PBS part, I'm trying talk with PBSPro organization to make them improve their images, so that we can depend on it, see http://community.pbspro.org/t/pbs-public-docker-image-improvement/887 discussion.
More generally, do we have some namespace in dockerhub where to put these images, or do we want to host them in user namespaces?
from dask-jobqueue.
from dask-jobqueue.
from dask-jobqueue.
Thinking about this, because the Travis build time can be quite long.
If we push some of our image to Dockerhub, how will we update them? Will we need to update them?
I see several possibilities:
- Push images that contains only the non Conda and Dask part, e.g. only the schedulers. We can push a sge-master and sge-slave image, for PBS it is also possible to pus a PBS:14.1.2 image. For Slurm we already do this. We then just install conda on top of that. Slurm is the fatest build, but it still takes close to 300 seconds to build the conda part of the docker image!
- We build images with scheduler + conda env, without dask (and eventually other key modules).
- We build images with everything, except dask-jobqueue.
For the two last options: what versions should we pin? Can we still have a kind of automated image build if one of our major dependency is updated (e.g. distributed or dask), or will we have to do it manually? Could we for example rely on requirement.txt to rebuild image only when modified?
from dask-jobqueue.
from dask-jobqueue.
If you're ok not having a solver that is... 😕
from dask-jobqueue.
from dask-jobqueue.
So you're proposing to have pre-built images with everyting, and just pip update (or the equivalent with conda) key modules like dask and distributed?
Where would we store the Dockerfiles? We would build and push this images manually? How often?
from dask-jobqueue.
from dask-jobqueue.
As @lesteve mentionned in #215, there is a PBS Docker image tagged correctly available in Dockerhub https://hub.docker.com/r/pbspro/pbspro/tags.
from dask-jobqueue.
We are now using Docker images on dockerhub thanks to #432, closing.
from dask-jobqueue.
Related Issues (20)
- Add CI with more tests for OAR
- dask_jobqueue tries to import non-existent function dask.utils.ignoring HOT 3
- a direct way to specify the worker spec HOT 4
- Documentation bug: interface HOT 1
- documentation: document `worker_command` kwarg
- Strange Worker KeyError when using LSFCluster. HOT 6
- Update NERSC Cori to NERSC Perlmutter in docs HOT 3
- SLURMCluster doesn't spawn new workers when old ones timeout HOT 12
- conftest.py not included in PyPI source tarball HOT 1
- CI is currently failing HOT 4
- ConnectionRefusedError HOT 2
- ImportError on ignoring attribute from dask.utils when importing dask_jobqueue HOT 2
- Resource allocation on SLURM cluster HOT 9
- Add a `py.typed` marker HOT 1
- Unable to submit jobs to PBS queue HOT 2
- Worker startup timeout leads to inconsistent cluster state HOT 3
- Remove deprecated project kwarg in Cluster implementation, or use it as it should be
- TypeError: unhashable type: 'list' when importing dask-jobqueue HOT 3
- Release soon HOT 25
- mem error HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from dask-jobqueue.