# Execute fswebcam running Node Red in Docker

**URL:** https://discourse.nodered.org/t/execute-fswebcam-running-node-red-in-docker/17395
**Category:** General
**Created:** [1 November 2019 00:07 UTC](https://discourse.nodered.org/t/execute-fswebcam-running-node-red-in-docker/17395 "2019-11-01T00:07:55Z")
**Posts on this page:** 8
**Page:** 1

<div class="post-metadata">

### Author: ![Mr.T](https://avatars.discourse-cdn.com/v4/letter/m/e47c2d/32.png) [@Mr.T](https://discourse.nodered.org/u/Mr.T)
#### Post date: [1 November 2019 00:07 UTC](https://discourse.nodered.org/t/execute-fswebcam-running-node-red-in-docker/17395/1 "2019-11-01T00:07:55Z")

</div>

I have a problem using the exec node.  
Maybe I miss something fundamental. Any Information might help.  
The goal was to use a command like this:

_fswebcam --rotate 270 /home/pi/nodehttpd/image.jpg_

Node Red is started in a Docker container via Docker-Compose.

```auto
  nodered:
    container_name: nodered
    build: ./services/nodered/.
    privileged: true
    restart: unless-stopped
    user: "1000"
    ports:
      - 1880:1880
    volumes:
      - ./volumes/nodered/data:/data

```

"fswebcam" is installed on the host.

I cannot executed it, even with a shell script in the shares /data folder. direct paths etc tested.

Debug : "command not found"

Any suggestions?

---

<div class="post-metadata">

### Author: ![dceejay](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/dceejay/32/38_2.png) [@dceejay](https://discourse.nodered.org/u/dceejay)
#### Post date: [1 November 2019 07:48 UTC](https://discourse.nodered.org/t/execute-fswebcam-running-node-red-in-docker/17395/2 "2019-11-01T07:48:31Z")

</div>

Did you try giving the full path to the command ?

---

<div class="post-metadata">

### Author: ![Mr.T](https://avatars.discourse-cdn.com/v4/letter/m/e47c2d/32.png) [@Mr.T](https://discourse.nodered.org/u/Mr.T)
#### Post date: [1 November 2019 08:00 UTC](https://discourse.nodered.org/t/execute-fswebcam-running-node-red-in-docker/17395/3 "2019-11-01T08:00:18Z")

</div>

Yes,  
in the exec node I also tried:

_/usr/bin/fswebcam --rotate 270 /home/pi/nodehttpd/image.jpg_

I also tried it with a simple bash script in the data folder (getpic.sh), containing the commands above  
exec command then was:  
_bash /data/getpc.sh_

---

<div class="post-metadata">

### Author: ![dceejay](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/dceejay/32/38_2.png) [@dceejay](https://discourse.nodered.org/u/dceejay)
#### Post date: [1 November 2019 08:11 UTC](https://discourse.nodered.org/t/execute-fswebcam-running-node-red-in-docker/17395/4 "2019-11-01T08:11:53Z")

</div>

the container has it's own isolated file system (that is kind of the point :-). so you would need to either ssh back out of the container to the host - or mount (or maybe alias) the command into the mounted volume (but then it may not have access to all the required libraries (if any are needed))

---

<div class="post-metadata">

### Author: ![Mr.T](https://avatars.discourse-cdn.com/v4/letter/m/e47c2d/32.png) [@Mr.T](https://discourse.nodered.org/u/Mr.T)
#### Post date: [1 November 2019 14:04 UTC](https://discourse.nodered.org/t/execute-fswebcam-running-node-red-in-docker/17395/5 "2019-11-01T14:04:53Z")

</div>

Thank you for help, dceejay.

As workaround I use a **node.js** script as webserver now.  
calling it by [http://IPADDRESS:8888/](http://IPADDRESS:8888/)

```auto
var http = require("http");
const exec = require("child_process").exec;

function onRequest(request, res) {
  console.log("Request received.");

  var child = exec('bash /home/pi/campic.sh', function(err, stdout, stderr) {
            console.log(stdout);
            console.log(stderr);
            if (err !== null) {
                console.log(`exec error: ${err}`);
            }
  });
}

http.createServer(onRequest).listen(8888, function () {
  console.log("Server has started.");
});

```

If someone has a better idea, please let me know.

---

<div class="post-metadata">

### Author: ![lei1](https://avatars.discourse-cdn.com/v4/letter/l/8e7dd6/32.png) [@lei1](https://discourse.nodered.org/u/lei1)
#### Post date: [25 October 2021 12:28 UTC](https://discourse.nodered.org/t/execute-fswebcam-running-node-red-in-docker/17395/6 "2021-10-25T12:28:18Z")

</div>

Do you have a better way?

---

<div class="post-metadata">

### Author: ![cymplecy](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/cymplecy/32/2773_2.png) [@cymplecy](https://discourse.nodered.org/u/cymplecy)
#### Post date: [25 October 2021 12:32 UTC](https://discourse.nodered.org/t/execute-fswebcam-running-node-red-in-docker/17395/7 "2021-10-25T12:32:50Z")

</div>

You've opened your own thread so closing this one

---

<div class="post-metadata">

### Author: ![cymplecy](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/cymplecy/32/2773_2.png) [@cymplecy](https://discourse.nodered.org/u/cymplecy)
#### Post date: [25 October 2021 12:33 UTC](https://discourse.nodered.org/t/execute-fswebcam-running-node-red-in-docker/17395/8 "2021-10-25T12:33:05Z")

</div>


