Merge pull request #16 from moufmouf/docker-compose

Adding docker-compose
This commit is contained in:
David Négrier 2020-04-03 18:48:36 +02:00 committed by GitHub
commit c0e75ae07e
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 52 additions and 1 deletions

View File

@ -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 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). 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
```

25
docker-compose.yaml Normal file
View File

@ -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"

View File

@ -6,6 +6,8 @@ module.exports = {
devtool: 'inline-source-map', devtool: 'inline-source-map',
devServer: { devServer: {
contentBase: './dist', contentBase: './dist',
host: '0.0.0.0',
disableHostCheck: true,
}, },
module: { module: {
rules: [ rules: [
@ -26,6 +28,7 @@ module.exports = {
plugins: [ plugins: [
new webpack.ProvidePlugin({ new webpack.ProvidePlugin({
Phaser: 'phaser' Phaser: 'phaser'
}) }),
new webpack.EnvironmentPlugin(['API_URL'])
] ]
}; };