forked from udacity/CarND-Path-Planning-Project
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathDockerfile
More file actions
49 lines (40 loc) · 1.26 KB
/
Dockerfile
File metadata and controls
49 lines (40 loc) · 1.26 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
FROM ubuntu:20.04
MAINTAINER Kun Lin "kun.lin.596@gmail.com"
RUN apt update && DEBIAN_FRONTEND=noninteractive apt install -y \
build-essential\
gdb\
vim\
cmake\
git\
python3-dev\
pybind11-dev\
libfmt-dev\
libspdlog-dev\
libboost-all-dev\
libgtest-dev\
libuv1-dev\
libssl-dev\
libz-dev
WORKDIR /opt
RUN mkdir -p build
# Build uWebSockets
RUN \
git clone https://github.com/uWebSockets/uWebSockets ./src/uWebSockets && \
cd ./src/uWebSockets && git checkout e94b6e1 && cd /opt && \
cmake -S ./src/uWebSockets/ -B ./build/uWebSockets && \
cmake -j16 --build ./build/uWebSockets/ && \
cd ./build/uWebSockets/ && make install -j16
RUN ln -s /usr/lib64/libuWS.so /usr/lib/libuWS.so
# Build planning server
COPY ./CMakeLists.txt ./src/pathplanningserver/
COPY ./cmakepatch.txt ./src/pathplanningserver/
COPY ./src/ ./src/pathplanningserver/src/
RUN \
cmake -DCMAKE_BUILD_TYPE=Release -S /opt/src/pathplanningserver/ -B /opt/build/pathplanningserver && \
cd /opt/build/pathplanningserver && make -j16
# Configs and data
COPY ./data/ ./data/
COPY ./default_conf.json ./default_conf.json
# Run
ENV PATH "${PATH}:/opt/build/pathplanningserver"
CMD ["pathplanningserver", "--conf", "/opt/default_conf.json", "--map", "/opt/data/highway_map.csv", "--loglevel", "info"]