81 lines
2.2 KiB
Markdown
81 lines
2.2 KiB
Markdown
### Docker installation
|
|
|
|
## Build image
|
|
To build the docker image on your own machine, which may take 15-30 mins:
|
|
```
|
|
docker build -t stable-dreamfusion:latest .
|
|
```
|
|
|
|
If you have the error **No CUDA runtime is found** when building the wheels for tiny-cuda-nn you need to setup the nvidia-runtime for docker.
|
|
```
|
|
sudo apt-get install nvidia-container-runtime
|
|
```
|
|
Then edit `/etc/docker/daemon.json` and add the default-runtime:
|
|
```
|
|
{
|
|
"runtimes": {
|
|
"nvidia": {
|
|
"path": "nvidia-container-runtime",
|
|
"runtimeArgs": []
|
|
}
|
|
},
|
|
"default-runtime": "nvidia"
|
|
}
|
|
```
|
|
And restart docker:
|
|
```
|
|
sudo systemctl restart docker
|
|
```
|
|
Now you can build tiny-cuda-nn inside docker.
|
|
|
|
## Download image
|
|
To download the image (~6GB) instead:
|
|
```
|
|
docker pull supercabb/stable-dreamfusion:3080_0.0.1
|
|
docker tag supercabb/stable-dreamfusion:3080_0.0.1 stable-dreamfusion
|
|
```
|
|
|
|
## Use image
|
|
|
|
You can launch an interactive shell inside the container:
|
|
|
|
```
|
|
docker run --gpus all -it --rm -v $(cd ~ && pwd):/mnt stable-dreamfusion /bin/bash
|
|
```
|
|
From this shell, all the code in the repo should work.
|
|
|
|
To run any single command `<command...>` inside the docker container:
|
|
```
|
|
docker run --gpus all -it --rm -v $(cd ~ && pwd):/mnt stable-dreamfusion /bin/bash -c "<command...>"
|
|
```
|
|
To train:
|
|
```
|
|
export TOKEN="#HUGGING FACE ACCESS TOKEN#"
|
|
docker run --gpus all -it --rm -v $(cd ~ && pwd):/mnt stable-dreamfusion /bin/bash -c "echo ${TOKEN} > TOKEN \
|
|
&& python3 main.py --text \"a hamburger\" --workspace trial -O"
|
|
|
|
```
|
|
Run test without gui:
|
|
```
|
|
export PATH_TO_WORKSPACE="#PATH_TO_WORKSPACE#"
|
|
docker run --gpus all -it --rm -e DISPLAY=$DISPLAY -v /tmp/.X11-unix:/tmp/.X11-unix:ro -v $(cd ~ && pwd):/mnt \
|
|
-v $(cd ${PATH_TO_WORKSPACE} && pwd):/app/stable-dreamfusion/trial stable-dreamfusion /bin/bash -c "python3 \
|
|
main.py --workspace trial -O --test"
|
|
```
|
|
Run test with gui:
|
|
```
|
|
export PATH_TO_WORKSPACE="#PATH_TO_WORKSPACE#"
|
|
xhost +
|
|
docker run --gpus all -it --rm -e DISPLAY=$DISPLAY -v /tmp/.X11-unix:/tmp/.X11-unix:ro -v $(cd ~ && pwd):/mnt \
|
|
-v $(cd ${PATH_TO_WORKSPACE} && pwd):/app/stable-dreamfusion/trial stable-dreamfusion /bin/bash -c "python3 \
|
|
main.py --workspace trial -O --test --gui"
|
|
xhost -
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|