Skip to content

Commit

Permalink
Workspace: Mount as_user home read-only
Browse files Browse the repository at this point in the history
  • Loading branch information
ConnorNelson committed Sep 8, 2024
1 parent 27c9dfa commit 6936959
Showing 1 changed file with 6 additions and 5 deletions.
11 changes: 6 additions & 5 deletions dojo_plugin/api/v1/docker.py
Original file line number Diff line number Diff line change
Expand Up @@ -122,9 +122,9 @@ def start_container(docker_client, user, as_user, mounts, dojo_challenge, practi
]
+ [
docker.types.Mount(
str(target), str(source), "bind", propagation="shared"
str(target), str(source), "bind", propagation="shared", **(kwargs or {})
)
for target, source in mounts
for target, source, kwargs in mounts
],
devices=devices,
network=None,
Expand Down Expand Up @@ -211,11 +211,12 @@ def start_challenge(user, dojo_challenge, practice, *, as_user=None):
docker_client = user_docker_client(user)
remove_container(docker_client, user)

mounts = [("/home/hacker", HOST_HOMES_MOUNTS / str(as_user.id))]
mounts = [("/home/hacker", HOST_HOMES_MOUNTS / str(as_user.id)), None]
if as_user != user:
mounts = [
("/home/hacker", HOST_HOMES_OVERLAYS / f"{user.id}-{as_user.id}"),
("/home/me", HOST_HOMES_MOUNTS / str(user.id)),
# ("/home/hacker", HOST_HOMES_OVERLAYS / f"{user.id}-{as_user.id}"),
("/home/hacker", HOST_HOMES_MOUNTS / str(as_user.id), dict(read_only=True)),
("/home/me", HOST_HOMES_MOUNTS / str(user.id), None),
]

container = start_container(
Expand Down

0 comments on commit 6936959

Please sign in to comment.