diff --git a/docker-compose.yml b/docker-compose.yml index 21d837e..dd27a00 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -10,7 +10,7 @@ services: - "XBS_DB_NAME=$DB_NAME" - "XBS_DB_PASSWORD=$DB_PASSWORD" - "XBS_DB_USERNAME=$DB_USERNAME" - image: "mongo:4.4.4" + image: "mongo:latest" restart: "unless-stopped" volumes: - "xbs-db-data:/data/db" @@ -29,7 +29,7 @@ services: timeout: "10s" retries: "5" start_period: "30s" - image: "xbrowsersync/api:1.1.13" + image: "xbrowsersync/api:latest" restart: "unless-stopped" volumes: - "./settings.json:/usr/src/api/config/settings.json" @@ -39,7 +39,7 @@ services: container_name: "xbs-reverse-proxy" depends_on: - "api" - image: "caddy:2.3.0-alpine" + image: "caddy:alpine" ports: - "443:443" - "80:80" diff --git a/dockerfile b/dockerfile index 10cd4b3..23d149f 100644 --- a/dockerfile +++ b/dockerfile @@ -1,18 +1,22 @@ -FROM node:14.16.0-alpine +FROM node:fermium-alpine # Set environment variables -ENV XBROWSERSYNC_API_VERSION 1.1.13 WORKDIR /usr/src/api # Download release and unpack -RUN wget -q -O release.tar.gz https://github.com/xBrowserSync/api/archive/v$XBROWSERSYNC_API_VERSION.tar.gz \ +RUN apk update && apk add grep curl +RUN XBROWSERSYNC_API_VERSION="$(curl --silent "https://api.github.com/repos/xbrowsersync/api/releases/latest" | grep -Po '"tag_name": "\K.*?(?=")')" \ + && echo $XBROWSERSYNC_API_VERSION \ + && wget -q -O release.tar.gz https://github.com/xBrowserSync/api/archive/$XBROWSERSYNC_API_VERSION.tar.gz \ && tar -C . -xzf release.tar.gz \ && rm release.tar.gz \ + && XBROWSERSYNC_API_VERSION="${XBROWSERSYNC_API_VERSION:1}" \ && mv api-$XBROWSERSYNC_API_VERSION/* . \ && rm -rf api-$XBROWSERSYNC_API_VERSION/ # Install dependencies +RUN apk add python2 python3 make RUN npm install --only=production # Expose port and start api