Skip to content

Commit 7132a61

Browse files
committed
📝 Add docker doc
1 parent d940e25 commit 7132a61

File tree

2 files changed

+43
-2
lines changed

2 files changed

+43
-2
lines changed

docs/guide/limit.md

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -72,8 +72,7 @@ It is technically feasible to create a Docker container inside your container, b
7272

7373
> LXC upstream's position is that those containers aren't and cannot be root-safe. They are still valuable in an environment where you are running trusted workloads or where no untrusted task is running as root in the container. —— [Linux Containers - LXC - Security](https://linuxcontainers.org/lxc/security/)
7474
75-
Our position is Docker-based development should be deployed to the Nautilus cluster. However, you may request privilege on a short term basis with valid reason (e.g., to build a Docker image for your accepted paper).
76-
75+
Our position is Docker-based development should be deployed to the Nautilus cluster. However, you may request privilege on a short term basis with valid reason (e.g., to build a Docker image for your accepted paper). However, docker overlay2 storage driver [does not work well with LXC](https://discuss.linuxcontainers.org/t/problem-running-docker-inside-lxc-container/10392), so you may need to downgrade docker to 2.3.0 in order to use the removed `overlay` driver. See [Troubleshooting](/troubleshooting.md) for more information.
7776

7877

7978
## Firewall

docs/guide/troubleshooting.md

Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,48 @@ $ ssh -fN -L 3389:localhost:3340 ubuntu@roselab1.ucsd.edu -p port -i /path/to/ke
3838
$ # You can then connect to RDP at rdp://localhost:3340
3939
```
4040

41+
## Docker in Container
42+
43+
You may see the following error when trying to pull a Docker image in your container:
44+
45+
```bash
46+
Pulling netflow ... extracting (100.0%)
47+
ERROR: failed to register layer: Error ...
48+
```
49+
50+
This is because the Docker's latest overlay2 storage driver does not work well with LXC. However, the legacy `overlay` driver has been removed from Docker 2.4.0. You can downgrade Docker to 2.3.0 to use the `overlay` driver.
51+
52+
#### Solution
53+
54+
First, remove your existing Docker installation.
55+
56+
```bash
57+
sudo systemctl stop docker
58+
sudo apt-get remove docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
59+
```
60+
61+
Then, install Docker 2.3.0.
62+
63+
```bash
64+
sudo apt-get update
65+
sudo apt-get install docker-ce=5:23.0.0-1~ubuntu.22.04~jammy docker-ce-cli=5:23.0.0-1~ubuntu.22.04~jammy containerd.io docker-buildx-plugin docker-compose-plugin
66+
```
67+
68+
Start the Docker service and verify the installation.
69+
70+
```bash
71+
sudo systemctl start docker
72+
docker --version
73+
```
74+
75+
Pin the package version to prevent automatic upgrades:
76+
77+
```bash
78+
sudo apt-mark hold docker-ce docker-ce-cli
79+
```
80+
81+
Now you can pull Docker images in your container.
82+
4183
## Machine Learning Threshold
4284

4385
We recommend the our users to regularly inspect their [resource usage](http://roselab1.ucsd.edu) during GPU tasks to optimize their tasks.

0 commit comments

Comments
 (0)