mirror of
https://github.com/odriverobotics/ODrive.git
synced 2026-08-18 18:20:15 +08:00
22226faef46726a2ffd3e45b53ffdc8f74a58393
The `Dockerfile` uses separate `RUN` instructions for each `apt-get`
command. Docker's documentation considers this as an anti-pattern,
because it can lead to caching issues [1].
Follow Docker's advice, and combine all `apt-get` invocations into a
single `RUN` instruction with an &&-chaned list of commands. This
makes it rather hard to tell which command produces which output, so
insert a `set -x` at the beginning of the command chain to generate a
trace of the executed commands.
[1] Each `RUN` instruction, including subsequent `RUN apt-get update`
and `RUN apt-get install` instructions create separate layers that
are stored in the Docker cache. If someone were to modify the
list of list of packages to install, then Docker would re-use the
layer created by the prior `RUN apt-get update` instruction,
meaning that `apt-get install` would use an outdate package list.
This can lead to outdated packages to be installed, or a failure
if the outdated version is not present anymore in the package
repository.
https://docs.docker.com/develop/develop-images/dockerfile_best-practices/#run
…
…
This project is all about accurately driving brushless motors, for cheap. The aim is to make it possible to use inexpensive brushless motors in high performance robotics projects, like this.
| Branch | Build Status |
|---|---|
| master | ![]() |
| devel | ![]() |
Please refer to the Developer Guide to get started with ODrive firmware development.
Repository Structure
- Firmware: ODrive firmware
- tools: Python library & tools
- docs: Documentation
Other Resources
Languages
C++
32.6%
C
29.8%
Python
19.2%
JavaScript
10.8%
Vue
4%
Other
3.6%


