FROM ubuntu:20.04

# HOW TO USE THIS FILE
# 切換到這個檔案的目錄處
# 輸入以下指令
# docker build -t mavone_server:0.XX .

COPY mavone /home/mavone/pkg
COPY LibPack/libmavsdk-dev_1.4.18_ubuntu20.04_amd64.deb /home/mavone/pkg/libmavsdk.deb
RUN test -f /home/mavone/pkg/libmavsdk.deb || (echo "File not found: /home/mavone/pkg/libmavsdk.deb" && exit 1)

RUN apt-get update && apt-get install -y locales && rm -rf /var/lib/apt/lists/* \
	&& localedef -i en_US -c -f UTF-8 -A /usr/share/locale/locale.alias en_US.UTF-8

ENV LANG en_US.utf8
ENV CONFIG_FILE /home/mavone/config.txt

RUN apt-get update
RUN apt-get install -y g++ cmake libmysqlcppconn-dev

WORKDIR /home/mavone/pkg
RUN dpkg -i libmavsdk.deb

RUN cmake -Bbuild -H.
RUN cmake --build build
RUN cp build/mavone /usr/local/bin/mavone

WORKDIR /home/mavone
RUN rm -r /home/mavone/pkg

CMD ["/bin/sh", "-c", "mavone $CONFIG_FILE"]

# 測試語句
# docker run -it --rm -e CONFIG_FILE="/home/mavone/mavone_config.txt" -v D:\tryRun:/home/mavone mavone_server:0.60
# docker run -it --rm -e CONFIG_FILE="/home/mavone/mavone_config.txt" -p 14550:14550 -v D:\tryRun:/home/mavone mavone_server:0.60
# docker run -it --rm -e CONFIG_FILE="/home/mavone/config1.txt" -p 49304:49304 -v /home/webpage/Mavsdk_DEV/mavone:/home/mavone mavone_server:0.421

# 這個方式會是錯的  因為會去執行 host 的環境變數 而不是 container 的環境變數
# ENTRYPOINT ["mavone"]
# CMD ["$CONFIG_FILE"]



