Skip to content

Commit

Permalink
docker: Add helper recipe
Browse files Browse the repository at this point in the history
My distro RUST setup is not running it out of the box
so I used a more recent one.

For the record the observed error was:

  error[E0599]: no variant or associated item named `OutOfMemory` found for enum `ErrorKind` in the current scope
  -> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/sqlx-core-0.5.10/src/sqlite/connection/establish.rs:107:32

Forwarded: astarte-platform#31
Relate-to: astarte-platform#20
Signed-off-by: Philippe Coval <[email protected]>
  • Loading branch information
rzr committed Jan 15, 2022
1 parent 1066027 commit de26f19
Show file tree
Hide file tree
Showing 2 changed files with 53 additions and 0 deletions.
5 changes: 5 additions & 0 deletions .dockerignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
#.dockerignore
.git/
#.gitignore
/target
Cargo.lock
48 changes: 48 additions & 0 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
#!/bin/echo docker build . -f
# -*- coding: utf-8 -*-
# SPDX-License-Identifier: MPL-2.0
#{
# Copyright: 2021+ Philippe Coval <https://purl.org/rzr/>
#
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/ .
#}

FROM ubuntu:22.04
LABEL maintainer="Philippe Coval ([email protected])"

RUN echo "#log: Setup system" \
&& set -x \
&& apt-get update \
&& apt-get install -y \
--no-install-recommends \
&& echo "info: rust it not in main?" \
&& sed -e 's|deb \(.*\) main$|deb \1 main contrib|g' -i /etc/apt/*.list \
&& apt-get update -y \
&& apt-get install -y --no-install-recommends \
ca-certificates \
libssl-dev \
pkg-config \
cargo \
&& apt-get upgrade -y \
&& apt-get clean \
&& rm -rf /var/lib/apt/lists/* \
&& date -u

ARG project=astarte-device-sdk-rust
ARG workdir="/local/src/${project}"

COPY . "${workdir}/"
WORKDIR "${workdir}"
RUN echo "#log: ${project}: Building sources" \
&& set -x \
&& export OPENSSL_NO_VENDOR=1 \
&& cargo build \
&& cargo install --path . \
|| cargo install --examples --path . \
&& date -u

WORKDIR "${workdir}"
ENTRYPOINT [ "/usr/bin/cargo" ]
CMD [ "run", "--example", "simple", "--help" ]

0 comments on commit de26f19

Please sign in to comment.