diff --git a/README.md b/README.md index af986d6b..9aa843fa 100644 --- a/README.md +++ b/README.md @@ -7,3 +7,26 @@ Work Adventure is a web-based collaborative workspace for small to medium teams In Work Adventure, you can move around your office and talk to your colleagues (using a video-chat feature that is triggered when you move next to a colleague). + + +## Getting started + +Install Docker. + +Run: + +``` +docker-compose up +``` + +The environment will start. + +You should now be able to browse to http://workadventure.localhost/ and see the application. + +Note: on some OSes, you will need to add this line to your `/etc/hosts` file: + +**/etc/hosts** +``` +workadventure.localhost 127.0.0.1 +``` + diff --git a/docker-compose.yaml b/docker-compose.yaml new file mode 100644 index 00000000..6ee93942 --- /dev/null +++ b/docker-compose.yaml @@ -0,0 +1,25 @@ +version: "3" +services: + reverse-proxy: + image: traefik:v2.0 + command: --api.insecure=true --providers.docker + ports: + - "80:80" + # The Web UI (enabled by --api.insecure=true) + - "8080:8080" + volumes: + - /var/run/docker.sock:/var/run/docker.sock + + front: + image: thecodingmachine/nodejs:12 + environment: + HOST: "0.0.0.0" + NODE_ENV: development + API_URL: http://api.workadventure.localhost + STARTUP_COMMAND_1: yarn install + command: yarn run start + volumes: + - ./front:/usr/src/app + labels: + - "traefik.http.routers.front.rule=Host(`workadventure.localhost`)" + - "traefik.http.services.front.loadbalancer.server.port=8080" diff --git a/front/webpack.config.js b/front/webpack.config.js index 4053b9d1..21431e4c 100644 --- a/front/webpack.config.js +++ b/front/webpack.config.js @@ -6,6 +6,8 @@ module.exports = { devtool: 'inline-source-map', devServer: { contentBase: './dist', + host: '0.0.0.0', + disableHostCheck: true, }, module: { rules: [ @@ -26,6 +28,7 @@ module.exports = { plugins: [ new webpack.ProvidePlugin({ Phaser: 'phaser' - }) + }), + new webpack.EnvironmentPlugin(['API_URL']) ] };