Skip to content

Commit 1ca5522

Browse files
committed
add docker
1 parent e94d487 commit 1ca5522

File tree

1 file changed

+77
-0
lines changed

1 file changed

+77
-0
lines changed

Dockerfile

Lines changed: 77 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,77 @@
1+
ARG BASE_IMAGE="ubuntu"
2+
# ARG TAG="18.04"
3+
ARG TAG="22.04"
4+
FROM ${BASE_IMAGE}:${TAG}
5+
WORKDIR /vesc_tool
6+
7+
ARG DEBIAN_FRONTEND=noninteractive
8+
ARG USER_NAME=vesc_tool
9+
ARG USER_UID=1000
10+
ARG USER_GID=1000
11+
12+
RUN groupadd ${USER_NAME} --gid ${USER_GID}\
13+
&& useradd -l -m ${USER_NAME} -u ${USER_UID} -g ${USER_GID} -s /bin/bash
14+
15+
RUN apt-get update && apt-get install --no-install-recommends -y \
16+
sudo \
17+
bash-completion \
18+
python3 python-is-python3 perl git openssl libssl-dev\
19+
wget curl iputils-ping build-essential \
20+
make ca-certificates xz-utils bzip2 zip \
21+
# libqt5printsupport5 libqt5quickwidgets5 libqt5gamepad5 libqt5serialport5 \
22+
# libqt5bluetooth5 libqt5positioning5 libqt5bluetooth5 libqt5widgets5 qml-module-qtquick-controls \
23+
# qml-module-qtquick-controls2 qml-module-qtquick-extras qml-module-qt-labs-settings \
24+
# qtbase5-dev qtchooser qt5-qmake qtbase5-dev-tools \
25+
# libdrm-dev libgles2-mesa-dev \
26+
# libxcb-xinerama0-dev "^libxcb.*" \
27+
# libx11-xcb-dev libglu1-mesa-dev libxrender-dev libxi-dev \
28+
# flex bison gperf libicu-dev libxslt-dev ruby libssl-dev \
29+
# libxcursor-dev libxcomposite-dev libxdamage-dev libxrandr-dev \
30+
# libfontconfig1-dev libcap-dev libxtst-dev libpulse-dev libudev-dev \
31+
# libpci-dev libnss3-dev libasound2-dev libxss-dev libegl1-mesa-dev \
32+
# gperf bison libbz2-dev libgcrypt20-dev libdrm-dev libcups2-dev \
33+
# libatkmm-1.6-dev libasound2-dev libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev \
34+
# libbluetooth-dev bluetooth blueman bluez libusb-dev libdbus-1-dev bluez-hcidump \
35+
# bluez-tools
36+
37+
qtbase5-private-dev qtscript5-dev \
38+
qml-module-qt-labs-folderlistmodel qml-module-qtquick-extras \
39+
qml-module-qtquick-controls2 qtbase5-dev qtchooser qt5-qmake qtbase5-dev-tools libqt5quickcontrols2-5 qtquickcontrols2-5-dev \
40+
qtcreator qtcreator-doc libqt5serialport5-dev qml-module-qt3d qt3d5-dev \
41+
qtdeclarative5-dev qtconnectivity5-dev qtmultimedia5-dev qtpositioning5-dev \
42+
libqt5gamepad5-dev qml-module-qt-labs-settings qml-module-qt-labs-platform libqt5svg5-dev
43+
44+
45+
46+
ENV USER=${USER_NAME}
47+
48+
RUN echo "vesc_tool ALL=(ALL) NOPASSWD:ALL" > /etc/sudoers.d/${USER_NAME}
49+
RUN chmod 0440 /etc/sudoers.d/${USER_NAME}
50+
51+
RUN chown -R ${USER_NAME}:${USER_NAME} /${USER_NAME}
52+
53+
USER ${USER_NAME}
54+
55+
# RUN cd /opt \
56+
# && sudo mkdir qt5 \
57+
# && sudo chown $USER qt5 \
58+
# && git clone https://code.qt.io/qt/qt5.git \
59+
# && cd qt5 \
60+
# && git checkout 5.15 \
61+
# && perl init-repository --module-subset=default,-qtwebkit,-qtwebkit-examples,-qtwebengine
62+
63+
# RUN sudo mkdir /opt/qt5/build \
64+
# && cd /opt/qt5/build \
65+
# && sudo chown $USER /opt/qt5/build \
66+
# && ../configure -prefix /opt/Qt/5.15-static/ -release -opensource -confirm-license \
67+
# -static -no-sql-mysql -no-sql-psql -no-sql-sqlite -no-journald -qt-zlib -no-mtdev \
68+
# -no-gif -qt-libpng -qt-libjpeg -qt-harfbuzz -qt-pcre -no-glib -no-compile-examples \
69+
# -no-cups -no-iconv -no-tslib -dbus-linked \
70+
# -no-xcb-xlib -no-eglfs -no-directfb -no-linuxfb -no-kms \
71+
# -nomake examples -nomake tests -skip qtwebsockets -skip qtwebchannel \
72+
# -skip qtwebengine -skip qtwayland -skip qtwinextras -skip qtsensors -skip multimedia \
73+
# -no-libproxy -no-icu -qt-freetype -skip qtimageformats -opengl es2 \
74+
# && make -j$(nproc) \
75+
# && sudo make install
76+
77+
CMD ["bash"]

0 commit comments

Comments
 (0)