From 4edfaf3dfe71c9d41c6acc093e9dd170cd6d15ab Mon Sep 17 00:00:00 2001 From: Christine Dodrill Date: Sun, 8 Dec 2019 20:06:45 +0000 Subject: [PATCH] docker --- .dockerignore | 1 + Dockerfile | 14 ++++++++++++ cmd/wasmcloudd/main.go | 1 - cmd/wasmcloudd/postgres.go | 8 +++++++ cmd/wasmcloudd/sqlite.go | 8 +++++++ docker-compose.yml | 45 ++++++++++++++++++++++++++++++++++++++ 6 files changed, 76 insertions(+), 1 deletion(-) create mode 100644 .dockerignore create mode 100644 Dockerfile create mode 100644 cmd/wasmcloudd/postgres.go create mode 100644 cmd/wasmcloudd/sqlite.go create mode 100644 docker-compose.yml diff --git a/.dockerignore b/.dockerignore new file mode 100644 index 0000000..1f9df70 --- /dev/null +++ b/.dockerignore @@ -0,0 +1 @@ +wasmcloud.db diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..a5e9e0b --- /dev/null +++ b/Dockerfile @@ -0,0 +1,14 @@ +FROM xena/go:1.13.5 AS build +WORKDIR /wasmcloud +COPY . . +ENV GOPROXY https://cache.greedo.xeserv.us +RUN GOBIN=/wasmcloud/bin go install -tags=postgres ./cmd/... + +FROM xena/alpine +COPY --from=build /wasmcloud/bin/ /usr/local/bin +CMD wasmcloudd +WORKDIR /wasmcloud +COPY tmpl/ /wasmcloud/tmpl/ +COPY static/ /wasmcloud/static/ +COPY doc/ /wasmcloud/doc/ + diff --git a/cmd/wasmcloudd/main.go b/cmd/wasmcloudd/main.go index 0bdcb87..da61734 100644 --- a/cmd/wasmcloudd/main.go +++ b/cmd/wasmcloudd/main.go @@ -9,7 +9,6 @@ import ( "github.com/facebookgo/flagenv" "github.com/gorilla/mux" "github.com/jinzhu/gorm" - _ "github.com/mattn/go-sqlite3" nats "github.com/nats-io/nats.go" ) diff --git a/cmd/wasmcloudd/postgres.go b/cmd/wasmcloudd/postgres.go new file mode 100644 index 0000000..19e4d20 --- /dev/null +++ b/cmd/wasmcloudd/postgres.go @@ -0,0 +1,8 @@ +// +build postgres + +package main + +import ( + _ "github.com/jinzhu/gorm/dialects/postgres" + _ "github.com/lib/pq" +) diff --git a/cmd/wasmcloudd/sqlite.go b/cmd/wasmcloudd/sqlite.go new file mode 100644 index 0000000..321b041 --- /dev/null +++ b/cmd/wasmcloudd/sqlite.go @@ -0,0 +1,8 @@ +// +build !postgres + +package main + +import ( + _ "github.com/jinzhu/gorm/dialects/sqlite" + _ "github.com/mattn/go-sqlite3" +) diff --git a/docker-compose.yml b/docker-compose.yml new file mode 100644 index 0000000..1337678 --- /dev/null +++ b/docker-compose.yml @@ -0,0 +1,45 @@ +version: '3.7' +services: + ipfs: + image: "ipfs/go-ipfs:latest" + environment: + - IPFS_PROFILE=server + volumes: + - ipfs:/data/ipfs + worker: + deploy: + replicas: 3 + restart: always + image: xena/wasmcloud + environment: + - IPFS_HOST=ipfs:5001 + - NATS_URL=nats://nats:4222 + - WORKER_COUNT=16 + command: /usr/local/bin/wasmcloud-executor + web: + restart: always + image: xena/wasmcloud + ports: + - "3002:3002" + environment: + - DATABASE_KIND=postgres + - "DATABASE_URL=host=postgres port=5432 user=azurediamond dbname=wasmcloud password=hunter2 sslmode=disable" + - NATS_URL=nats://nats:4222 + - IPFS_HOST=ipfs:5001 + command: /usr/local/bin/wasmcloudd + postgres: + image: "postgres:alpine" + environment: + - POSTGRES_PASSWORD=hunter2 + - POSTGRES_USER=azurediamond + - POSTGRES_DB=wasmcloud + volumes: + - postgresql:/var/lib/postgresql + - postgresql_data:/var/lib/postgresql/data + nats: + image: "nats:latest" + +volumes: + ipfs: + postgresql: + postgresql_data: