-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathMakefile
More file actions
78 lines (71 loc) · 3.01 KB
/
Makefile
File metadata and controls
78 lines (71 loc) · 3.01 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
.PHONY : default dev build_docker docker clean_docker run build clean exit
# add id for each ubuntu account (distinguish between uid/gid)
CONTAINER_NAME?=humble_haozhe
ROS_DATA?=./data
# DEVICE?=jetson
DEVICE?=pc
# DOCKER_BUILDKIT?=1
export CONTAINER_NAME
export ROS_DATA
# export DOCKER_BUILDKIT
export DEVICE
# Get the UID and GID of the user, make sure the persimssion to volume
UID := $(shell id -u)
GID := $(shell id -g)
# Outside the container
default:build_docker
@docker compose run --rm ros2_$(DEVICE) tmuxinator start -p ./docker_settings/.tmuxinator.yaml
dev:
@docker compose run --rm ros2_$(DEVICE) tmuxinator start -p ./docker_settings/.tmuxinator.yaml
build_docker:
@docker compose run --rm ros2_$(DEVICE) colcon build --symlink-install
docker:
docker buildx build --target $(DEVICE)_base -t mm_system/humble:$(CONTAINER_NAME) . \
--build-arg UID=$(UID) --build-arg GID=$(GID)
clean_docker:
@docker compose run --rm ros2_$(DEVICE) rm -r build install log
run:
@docker compose run --rm ros2_$(DEVICE)
isaacsim:
docker run --name isaac-sim --entrypoint bash -it --runtime=nvidia --gpus all -e "ACCEPT_EULA=Y" --rm --network=host \
-e "PRIVACY_CONSENT=Y" \
-e "ROS_DOMAIN_ID=45"\
-v ~/docker/isaac-sim/cache/kit:/isaac-sim/kit/cache:rw \
-v ~/docker/isaac-sim/cache/ov:/root/.cache/ov:rw \
-v ~/docker/isaac-sim/cache/pip:/root/.cache/pip:rw \
-v ~/docker/isaac-sim/cache/glcache:/root/.cache/nvidia/GLCache:rw \
-v ~/docker/isaac-sim/cache/computecache:/root/.nv/ComputeCache:rw \
-v ~/docker/isaac-sim/logs:/root/.nvidia-omniverse/logs:rw \
-v ~/docker/isaac-sim/data:/root/.local/share/ov/data:rw \
-v ~/docker/isaac-sim/documents:/root/Documents:rw \
-v ./src/simulation/isaacsim_env:/root/Documents/isaacsim_env:rw \
-v ./src/simulation/isaacsim_env/start_isaacsim_docker.sh:/isaac-sim/start_isaacsim_docker.sh:rw \
nvcr.io/nvidia/isaac-sim:4.5.0
isaacsim_privileged:
docker run --name isaac-sim --privileged --entrypoint bash -it --runtime=nvidia --gpus all -e "ACCEPT_EULA=Y" --rm --network=host \
-e "PRIVACY_CONSENT=Y" \
-v ~/docker/isaac-sim/cache/kit:/isaac-sim/kit/cache:rw \
-v ~/docker/isaac-sim/cache/ov:/root/.cache/ov:rw \
-v ~/docker/isaac-sim/cache/pip:/root/.cache/pip:rw \
-v ~/docker/isaac-sim/cache/glcache:/root/.cache/nvidia/GLCache:rw \
-v ~/docker/isaac-sim/cache/computecache:/root/.nv/ComputeCache:rw \
-v ~/docker/isaac-sim/logs:/root/.nvidia-omniverse/logs:rw \
-v ~/docker/isaac-sim/data:/root/.local/share/ov/data:rw \
-v ~/docker/isaac-sim/documents:/root/Documents:rw \
-v ./src/simulation/isaacsim_env:/root/Documents/isaacsim_env:rw \
-v ./src/simulation/isaacsim_env/start_isaacsim_docker.sh:/isaac-sim/start_isaacsim_docker.sh:rw \
nvcr.io/nvidia/isaac-sim:4.5.0
# Inside the container
build:
colcon build --symlink-install
bash ./install/setup.bash
clean:
rm -r build/ install/ log/
exit:
tmux kill-server
nav:
ros2 launch mm_bringup nav_isaacsim.launch.py
vlm:
ros2 launch mm_dev vlm_nav.launch.py
teleop:
ros2 launch gennav_sim_control teleop.launch.py