From 5e83f175550d2f919a58d1f9e094a3fb22944b95 Mon Sep 17 00:00:00 2001 From: jimmy Date: Fri, 9 Sep 2022 18:11:04 +1200 Subject: [PATCH] Initial commit --- .gitignore | 4 ++++ Dockerfile | 15 +++++++++++++++ README.md | 0 cloud-init.yaml | 33 +++++++++++++++++++++++++++++++++ docker-compose.yaml | 42 ++++++++++++++++++++++++++++++++++++++++++ 5 files changed, 94 insertions(+) create mode 100644 .gitignore create mode 100644 Dockerfile create mode 100644 README.md create mode 100644 cloud-init.yaml create mode 100644 docker-compose.yaml diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..48820a8 --- /dev/null +++ b/.gitignore @@ -0,0 +1,4 @@ +.vscode +app/node_modules +api/tmp +data \ No newline at end of file diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..6f8e7c2 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,15 @@ +FROM golang:1.19 as builder + +COPY ./api /api + +WORKDIR /api + +RUN go build -o /api/main /api/*.go + +FROM golang:1.18 + +COPY --from=builder /api/main /main + +EXPOSE 8080 + +CMD [ "/main" ] \ No newline at end of file diff --git a/README.md b/README.md new file mode 100644 index 0000000..e69de29 diff --git a/cloud-init.yaml b/cloud-init.yaml new file mode 100644 index 0000000..6cd6eda --- /dev/null +++ b/cloud-init.yaml @@ -0,0 +1,33 @@ +#cloud-config + +apt: + sources: + docker.list: + source: deb [arch=amd64] https://download.docker.com/linux/ubuntu $RELEASE stable + keyid: 9DC858229FC7DD38854AE2D88D81803C0EBFCD88 + + +packages: + - apt-transport-https + - ca-certificates + - curl + - gnupg-agent + - software-properties-common + - docker-ce + - docker-ce-cli + - containerd.io + - docker-compose + +# create the docker group +groups: + - docker + +# Add default auto created user to docker group +system_info: + default_user: + groups: [docker] + +snap: + commands: + - ["install", "go", "--classic"] + - ["install", "node", "--classic"] \ No newline at end of file diff --git a/docker-compose.yaml b/docker-compose.yaml new file mode 100644 index 0000000..7ae0ee0 --- /dev/null +++ b/docker-compose.yaml @@ -0,0 +1,42 @@ +version: '3.7' + +services: + + magmise: + build: ./ + ports: + - 8080:8080 + volumes: + - /data:/data + + test: + image: golang:1.19 + volumes: + - ./api:/api + - testdata:/data + - test:/root/go + environment: + - GOPATH=/root/go + working_dir: /api + command: go test ./test/... + + air: + image: cosmtrek/air + volumes: + - ./api:/api + - ./app/www:/api/www + - ./data:/data + working_dir: /api + ports: + - 8080:8080 + + stencil: + image: node + volumes: + - ./app:/app + working_dir: /app + command: sh -c "npm install && npm start" + +volumes: + test: + testdata: \ No newline at end of file