Merge Dockerfile and example files for backend support example (#7)

* Add template dockerfile for testing

* Switch to holo-docker image

* Add default entrypoint.sh

* Updated dockerfile to reflect CI/CD on database

* Add template makefile, main.c

* Adjusted entrypoint.sh to actually build binary

* Made entrypoint.sh executable

* Big README update and comments in Dockerfile
This commit is contained in:
TrainDoctor 2022-08-13 20:14:43 -07:00 committed by GitHub
commit af817b6b5f
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
6 changed files with 108 additions and 11 deletions

9
backend/Dockerfile Normal file
View file

@ -0,0 +1,9 @@
# we support images for building with a vanilla SteamOS base,
# or versions with ootb support for rust or go
# developers can also customize these images via this Dockerfile
#FROM ghcr.io/steamdeckhomebrew/holo-toolchain-rust:latest
#FROM ghcr.io/steamdeckhomebrew/holo-toolchain-go:latest
FROM ghcr.io/steamdeckhomebrew/holo-base:latest
# entrypoint.sh should always be located in the backend folder
ENTRYPOINT [ "/backend/entrypoint.sh" ]

14
backend/Makefile Normal file
View file

@ -0,0 +1,14 @@
# This is the default target, which will be built when
# you invoke make
.PHONY: all
all: hello
# This rule tells make how to build hello from hello.cpp
hello:
mkdir -p ./out
gcc -o ./out/hello ./src/main.c
# This rule tells make to delete hello and hello.o
.PHONY: clean
clean:
rm -f hello

8
backend/entrypoint.sh Executable file
View file

@ -0,0 +1,8 @@
#!/bin/sh
set -e
echo "Container's IP address: `awk 'END{print $1}' /etc/hosts`"
cd /backend
make

5
backend/src/main.c Normal file
View file

@ -0,0 +1,5 @@
#include <stdio.h>
int main() {
printf("Hello World\n");
return 0;
}