diff --git a/docker-compose.yml b/docker-compose.yml
index 25e71520597f203f1d31077745621fa4ec9146c1..d308646d049aa65f1f12be86af96f7aadf235d2e 100644
--- a/docker-compose.yml
+++ b/docker-compose.yml
@@ -7,6 +7,7 @@ services:
       dockerfile: ./docker/Dockerfile.client
     ports:
       - "8080:8080"
+    restart: on-failure
     environment:
       FTL_SOCKET_SERVICE: socketservice:8080
       FTL_AUTH_SERVICE: authservice:8080
@@ -29,6 +30,7 @@ services:
       context: ./
       dockerfile: ./docker/Dockerfile.services
       target: socketservice
+    restart: on-failure
     environment:
       NODE_ENV: development
       REDIS_HOST: redis
@@ -43,6 +45,7 @@ services:
       context: ./
       dockerfile: ./docker/Dockerfile.services
       target: authservice
+    restart: on-failure
     environment:
       NODE_ENV: development
       REDIS_HOST: redis
@@ -58,6 +61,7 @@ services:
       context: ./
       dockerfile: ./docker/Dockerfile.services
       target: nodeservice
+    restart: on-failure
     environment:
       NODE_ENV: development
       REDIS_HOST: redis
@@ -73,6 +77,7 @@ services:
       context: ./
       dockerfile: ./docker/Dockerfile.services
       target: configservice
+    restart: on-failure
     environment:
       NODE_ENV: development
       REDIS_HOST: redis
@@ -88,6 +93,7 @@ services:
       context: ./
       dockerfile: ./docker/Dockerfile.services
       target: recorderservice
+    restart: on-failure
     environment:
       NODE_ENV: development
       REDIS_HOST: redis
@@ -103,6 +109,7 @@ services:
       context: ./
       dockerfile: ./docker/Dockerfile.services
       target: streamservice
+    restart: on-failure
     environment:
       NODE_ENV: development
       REDIS_HOST: redis
@@ -115,13 +122,13 @@ services:
       
   authmongo:
     image: mongo:4.2
-    restart: always
+    restart: on-failure
     ports:
       - "27017:27017"
 
   redis:
     image: redis:alpine
-    restart: always
+    restart: on-failure
     volumes:
       - ./.data:/data
     command: redis-server --maxmemory 200mb --save "300 1" --appendonly no
diff --git a/packages/auth-service/src/services/grant.ts b/packages/auth-service/src/services/grant.ts
index 34a8428a3b24b1856f443726152158d057e62a6d..3998c23f5222395ef21c56fd6504667fd97cf314 100644
--- a/packages/auth-service/src/services/grant.ts
+++ b/packages/auth-service/src/services/grant.ts
@@ -28,9 +28,9 @@ export default class GrantService {
       if (!client) {
         // eslint-disable-next-line new-cap
         const newClient = new this.clients({
+          _id: '614d906bf0d4d418b719b9a8',
           name: 'WebApp',
           grantTypes: ['password'],
-          secret: 'l7FNrUMa3ILzi3qiyo5J44wVGC40YTBx',
         });
         const result = await newClient.save();
         $log.info('Client token id', result.id);
@@ -59,7 +59,7 @@ export default class GrantService {
       // Validate the client first
       const { client_id, client_secret } = request;
 
-      if (!client_id || !client_secret) {
+      if (!client_id) {
         throw new OAuthException('invalid_request');
       }
 
diff --git a/packages/auth-service/src/services/group.ts b/packages/auth-service/src/services/group.ts
index abc6e8ef8feedd388bd9f4550ff592220973aefb..e5dbb749af1bfdab097aea3ec73ad01fbfad0a18 100644
--- a/packages/auth-service/src/services/group.ts
+++ b/packages/auth-service/src/services/group.ts
@@ -7,18 +7,6 @@ export default class GroupService {
     @Inject(Group)
     private groups: MongooseModel<Group>;
 
-    async $onInit() {
-      const adminGroup = await this.groups.findOne({ name: 'FTL Root' });
-
-      if (!adminGroup) {
-        await this.groups.create({
-          name: 'FTL Root',
-          scopes: ['*.*'],
-          children: [],
-        });
-      }
-    }
-
     async getAllRecursive(ids: string[]): Promise<Group[]> {
       return this.groups.find({ _id: { $in: ids } }).populate('children');
     }
diff --git a/packages/auth-service/src/services/user.ts b/packages/auth-service/src/services/user.ts
index 6f18e2759174244fa9fbf0010123b8620a57793d..8d48103771d459fb92294be8ce829b78195f41f2 100644
--- a/packages/auth-service/src/services/user.ts
+++ b/packages/auth-service/src/services/user.ts
@@ -20,7 +20,15 @@ export default class UserService {
 
     async $onInit() {
       const admin = await this.getByUsername('admin');
-      const adminGroup = await this.groups.findOne({ name: 'FTL Root' });
+      let adminGroup = await this.groups.findOne({ name: 'FTL Root' });
+
+      if (!adminGroup) {
+        adminGroup = await this.groups.create({
+          name: 'FTL Root',
+          scopes: ['*.*'],
+          children: [],
+        });
+      }
 
       if (!admin) {
         await this.create({
diff --git a/packages/client/src/views/Login/Login.tsx b/packages/client/src/views/Login/Login.tsx
index 19969db2dce2be2991895af9dd3840adbddb83f0..27556c51dd7c75e6f50040ac1c137828282346b1 100644
--- a/packages/client/src/views/Login/Login.tsx
+++ b/packages/client/src/views/Login/Login.tsx
@@ -14,7 +14,6 @@ async function login(username: string, password: string) {
       password,
       grant_type: 'password',
       client_id: process.env.CLIENT_ID,
-      client_secret: process.env.CLIENT_SECRET,
     });
     console.log('RES', res);
   } catch(err) {