summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDennis Kobert <dennis@kobert.dev>2020-01-30 13:02:45 +0100
committerDennis Kobert <dennis@kobert.dev>2020-01-30 13:02:45 +0100
commit4b30c13b849ef72c8d31dfa6e42fce6fcd7eac52 (patch)
tree1c10d4b377a5d4150eab74af541ae6c54e0f2fa4
parent600f0e6a847017ee46c67e885ffbe1acdcba1ded (diff)
Add docker setup
-rw-r--r--.gitignore1
-rw-r--r--docker/Dockerfile11
-rw-r--r--docker/docker-compose.yml36
-rw-r--r--docker/noria/Dockerfile14
4 files changed, 62 insertions, 0 deletions
diff --git a/.gitignore b/.gitignore
index 37c8717..bf03dee 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,3 +1,4 @@
/target
**/*.rs.bk
.env
+.spotify_token_cache.json
diff --git a/docker/Dockerfile b/docker/Dockerfile
new file mode 100644
index 0000000..e8916e6
--- /dev/null
+++ b/docker/Dockerfile
@@ -0,0 +1,11 @@
+# composer install
+FROM liuchong/rustup:nightly as build
+COPY ./ /app/
+RUN cargo build cargo r --release
+
+
+FROM alpine as spotify_intersect
+WORKDIR /srv/spotify_intersect
+COPY --from=build /app/target/release/spotify_intersect /srv/spotify_intersect
+COPY .env /srv/spotify_intersect/.env
+CMD ./spotify_intersect
diff --git a/docker/docker-compose.yml b/docker/docker-compose.yml
new file mode 100644
index 0000000..cefa228
--- /dev/null
+++ b/docker/docker-compose.yml
@@ -0,0 +1,36 @@
+version: "3.6"
+services:
+ spotify_intersect:
+ image: spotify_intersect
+ container_name: spotify_intersect
+ build:
+ context: ..
+ dockerfile: docker/Dockerfile
+ #environment:
+ networks:
+ - database
+ - hostnet
+ depends_on:
+ - track_db
+ track_db:
+ image: noria
+ build:
+ context: ..
+ dockerfile: docker/noria/Dockerfile
+ #volumes:
+ #- db:/srv/noria
+ networks:
+ - database
+ #volumes:
+ #db: {}
+ zookeeper:
+ image: 'bitnami/zookeeper:latest'
+ networks:
+ - database
+
+networks:
+ database:
+ driver: bridge
+ hostnet:
+ external: true
+ name: frontend
diff --git a/docker/noria/Dockerfile b/docker/noria/Dockerfile
new file mode 100644
index 0000000..67a8c8b
--- /dev/null
+++ b/docker/noria/Dockerfile
@@ -0,0 +1,14 @@
+# composer install
+FROM liuchong/rustup:nightly as build
+WORKDIR /app
+RUN apt-get update
+RUN apt-get -y install git
+RUN git clone https://github.com/mit-pdos/noria /app
+RUN cargo build --release --bin noria-server
+
+
+FROM alpine as spotify_intersect
+WORKDIR /srv/noria
+COPY --from=build /app/target/release/noria /srv/noria
+COPY .env /srv/spotify_intersect/.env
+CMD ./noria --deployment track_db --no-reuse