mirror of
https://github.com/swarm-game/swarm.git
synced 2024-09-11 14:46:33 +03:00
This is a rework of #1798 to facilitate a simpler web stack. # Demo View http://swarmgame.net/ NOTE: Requires IPv6 # Motivation Hosting cost is a main motivation. Cost per month for an EC2 instance, RDS, and the requisite other services approaches >$50 per month. In contrast, the lowest-tier Lightsail instance is $3.50/month. The deployment process is of course simplified. An incidental benefit to using SQLite is reduced latency of web requests; we no longer need to fetch credentials from an AWS API to connect to Postgres. ## Changes Major changes: * Use `sqlite` instead of `postgres` * Use Docker to build a statically-linked deployable binary, rather than deploying the app within a Docker image Fortunately, the API of `sqlite-simple` is near-identical to that of `postgresql-simple`, so most of the code change there is just to rip out AWS-specific stuff and Postgres connection info. I have no hesitation to delete this code since if we ever want to use the previous stack again, we can just look at #1798.
14 lines
322 B
Bash
Executable File
14 lines
322 B
Bash
Executable File
#!/bin/bash -ex
|
|
|
|
cd $(git rev-parse --show-toplevel)
|
|
|
|
TAG_NAME=swarm
|
|
docker build --tag $TAG_NAME --file tournament/scripts/docker/alpine/Dockerfile .
|
|
|
|
INTERNAL_BINARY_NAME=tournament-bin
|
|
|
|
ID=$(docker create $TAG_NAME)
|
|
docker cp $ID:/opt/swarm/$INTERNAL_BINARY_NAME - | tar xv
|
|
docker rm -v $ID
|
|
|
|
strip $INTERNAL_BINARY_NAME |