Textstyles | ||||
---|---|---|---|---|
| ||||
WORK IN PROGRESS | Services are in active development and are subject to change. |
Textstyles | ||
---|---|---|
| ||
Charity Engine is the crowdsourced |
...
cloud – a compute service running on a global network of participating devices. This distributed platform provides an ecosystem of compute, storage, and networking capabilities. |
Contents
Table of Contents | ||||||||
---|---|---|---|---|---|---|---|---|
|
...
The CE Datacenter/Enterprise environment can be set up by running the following commands:
Code Block | ||
---|---|---|
| ||
$ wget -O ce-docker-setup.ubuntu.sh https://www.charityengine.com/files/setup/ce-docker-setup.sh.ubuntu |
...
$ sh ce-docker-setup.ubuntu.sh |
...
The ce-docker-setup.ubuntu.sh script supports the following optional parameters:
--auth
: Specify the authenticator to use to connect the host to Charity Engine (if omitted, system will prompt for authenticator)--with-ipfs
: Allow use of IPFS content on the host for task input files; this updates the ipfs config file to add a UNIX socket API interface so that files can be fetched--no-gpu
: Do not set up GPU packages or run the client with GPU support--service-mode (default)
: Keep container running, fetching and processing new tasks--task-mode
: Run a single task, if available, then stop the container
(To debug, see 2.2 To troubleshoot)
Once setup has been completed on a system, the CE client can be managed via Docker:
Code Block | ||
---|---|---|
| ||
$ docker [start|stop] ce-client |
...
|
Info |
---|
Running the docker start ce-client command will cause the client to either run a single compute job ("task_mode"), or continually check for and run compute jobs ("service mode" \[default\]) that have been submitted to the Charity Engine network, until manually stopped. |
...
When new features or other improvements have been made to the setup script or CE client container image, the environment can be upgraded by fetching and running the latest setup script:
Code Block | ||
---|---|---|
| ||
$ wget -O ce-docker-setup.ubuntu.sh https://www.charityengine.com/files/setup/ce-docker-setup.sh.ubuntu |
...
$ sh ce-docker-setup.ubuntu.sh |
...
The ce-docker-setup.ubuntu.sh script supports the following optional parameters:
--auth
: Specify the authenticator to use to connect the host to Charity Engine (if omitted, system will prompt for authenticator)--with-ipfs
: Allow use of IPFS content on the host for task input files; this updates the ipfs config file to add a UNIX socket API interface so that files can be fetched--no-gpu
: Do not set up GPU packages or run the client with GPU support--service-mode (default)
: Keep container running, fetching and processing new tasks--task-mode
: Run a single task, if available, then stop the container
(To debug, see 2.2 To troubleshoot)
The CE client configuration will remain in the ~/.ce directory, so any work that was in progress prior to the upgrade will be continued.
...
To remove all CE files and containers from the system:
Code Block | ||
---|---|---|
| ||
$ rm -r ~/.ce ce-docker-setup.ubuntu.sh nginx_work_proxy.conf |
...
$ docker rm -f ce-client work-proxy |
...
|
Note: These commands do not remove Docker CE, NVIDIA container runtime, or other packages that were installed as dependencies, nor do they revert changes to Docker system configuration that might have been made during setup to support rootless mode.
...
Testing + Troubleshooting
To run an initial demo
Launch the container:
Code Block | ||
---|---|---|
| ||
$ docker start ce-client |
...
|
Once the ce-client container is started,
- it will begin downloading available jobs. (*Per Section 1.2 above, the default setup is "service mode")
- the container may take a while to initialize as the container and associated data must be downloaded over the internet. Once processing starts, the computation job runs as a separate docker container. When the container starts, the computing container can be identified by running docker ps. The container is removed once computations are complete.
- it is possible to view logs of the container by running docker logs ce-client. This should show that the GPU is detected, the connection to Charity Engine servers has been made, and work has been retrieved and has started processing.
To troubleshoot
For details on what is happening, and especially to identify any errors, run:
Code Block | ||
---|---|---|
| ||
$ docker logs ce-client |
...
|
To capture output from the setup script, append " 2>&1 | tee debug.out
", which will write setup script activity to a file, debug.out
...
Code Block | ||
---|---|---|
| ||
$ sh |
...
ce-docker-setup.ubuntu.sh –service-mode 2>&1 | tee debug. |
...
out
|
Support
Please contact us with any questions.