This repo contains Dockerfiles used for testing Proxystore's code. "Nightly" image builds are created on the 1st and 15th of the month or when the corresponding Dockerfile is changed.
Dockerfile | Location | Details |
---|---|---|
Dockerfile-dim |
ghcr.io/proxystore/proxystore-dim:nightly |
Details |
Dockerfile-relay |
ghcr.io/proxystore/proxystore-relay:nightly |
Details |
- Add the Dockerfile to
dockerfiles/
. - Add a section in this README with any instructions.
- Update the table in this README with the links.
- Add a new matrix entry in
.github/workflows/check.yml
. - Add a new matrix entry in
.github/workflows/publish.yml
.
To effectively work on a system, the Dockerfile-dim
image needs to be compiled on the machine it will be used on.
For usage with Github Actions CI, a prebuilt image is provided.
$ docker run --rm -it --network host -v <local_path_to_proxystore_dir>:/proxystore ghcr.io/proxystore/proxystore-dim
$ docker build -t proxystore-dim -f dockerfiles/Dockerfile-dim .
$ docker run --rm -it --network host -v <local_path_to_proxystore_dir>:/proxystore proxystore-dim
This can be done as usual using tox: $ tox -e py39
.
All Python versions are available and tox
is pre-added to the $PATH
.
Relay (signaling) server runner image for testing p2p communication. This image installs the latest release of ProxyStore from PyPI.
The container defaults to exposing port 8700 and starting the relay using
a configuration file mounted at /data/config.toml
. The configuration file
location can be overridden via the CONFIG
environment variable passed to
docker run
. E.g., -e CONFIG=/path/in/container/to/config.toml
. Update
the -v $(pwd)/data:/data
mount depending on the location of your
configuration file.
$ docker run --rm -it -p 8700:8700 -v $(pwd)/data:/data --name relay ghcr.io/proxystore/proxystore-relay
All configuration of the relay server should be done via the configuration file.
When building the container, the following build arguments can be specified (listed are the default values).
--build-arg PYTHON_VERSION=3.11
--build-arg CONFIG=/data/config.toml
--build-arg PORT=8700
$ docker build -t proxystore-relay -f dockerfiles/Dockerfile-relay .
$ docker run --rm -it -p 8700:8700 -v $(pwd)/data:/data --name relay proxystore-relay