mirror of
https://github.com/odriverobotics/ODrive.git
synced 2026-02-06 23:41:53 +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
Description
Languages
C++
32.6%
C
29.8%
Python
19.2%
JavaScript
10.8%
Vue
4%
Other
3.6%


