diff --git a/docker/client/compose.sls b/docker/client/compose.sls
index a07eaf3..5347586 100644
--- a/docker/client/compose.sls
+++ b/docker/client/compose.sls
@@ -117,9 +117,9 @@
     endif %}docker-compose {{ compose.status }} -d'
     - cwd: {{ client.compose.base }}/{{ app }}
     - user: {{ compose.user|default("root") }}
-    {% if grains.noservices is defined %}
-    - onlyif: {% if grains.get('noservices', "True") %}"True"{% else %}False{% endif %}
-    {% endif %}
+    {%- if grains.get('noservices') %}
+    - onlyif: /bin/false
+    {%- endif %}
     - require:
         {%- if client.compose.source.engine == 'pkg' %}
         - pkg: docker_compose
diff --git a/docker/client/container.sls b/docker/client/container.sls
index 22b817e..e46b218 100644
--- a/docker/client/container.sls
+++ b/docker/client/container.sls
@@ -6,13 +6,16 @@
 {%- for name, container in client.get('container', {}).iteritems() %}
   {%- set id = name %}
   {%- set required_containers = [] %}
-{%- if not grains.get('noservices', True)%}
+
 {{id}}_image:
   dockerng.image_present:
     - name: {{ container.image }}
+    {%- if grains.get('noservices') %}
+    - onlyif: /bin/false
+    {%- endif %}
     - require:
       - pkg: docker_python
-{%- endif %}
+
 {%- set binds = {} %}
 {%- set volumes = {} %}
 {%- for volume in container.get('volumes', []) %}
@@ -35,13 +38,16 @@
 {%- endif %}
 
 {%- endfor %}
-{%- if not grains.get('noservices', True)%}
+
 {{id}}_container:
   dockerng.running:
     - name: {{id}}
     - start: {{ container.start|default(True) }}
     - user: {{ container.user|default("root") }}
     - image: {{container.image}}
+    {%- if grains.get('noservices') %}
+    - onlyif: /bin/false
+    {%- endif %}
   {%- if 'command' in container %}
     - command: {{container.command}}
   {%- endif %}
@@ -94,5 +100,5 @@
       - dockerng: {{containerid}}
     {%- endfor %}
   {%- endif %}
-{%- endif %}  
+
 {% endfor %}
diff --git a/docker/host.sls b/docker/host.sls
index fca6fec..81d6344 100644
--- a/docker/host.sls
+++ b/docker/host.sls
@@ -42,9 +42,9 @@
   service.running:
   - name: {{ host.service }}
   - enable: true
-  {% if grains.noservices is defined %}
-  - onlyif: {% if grains.get('noservices', "True") %}"True"{% else %}False{% endif %}
-  {% endif %}
+  {%- if grains.get('noservices') %}
+  - onlyif: /bin/false
+  {%- endif %}
   - require:
     - pkg: docker_packages
 
