# Node config.yaml variables not working properly

**URL:** <https://forum.storj.io/t/node-config-yaml-variables-not-working-properly/22261>\
**Category:** troubleshooting\
**Tags:** docker\
**Created:** [April 11, 2023, 4:27pm UTC](https://forum.storj.io/t/node-config-yaml-variables-not-working-properly/22261 "2023-04-11T16:27:38Z")\
**Posts on this page:** 10\
**Page:** 1

<div class="post-metadata">

**Author:** ![Grimm](https://storj.bcdn.literatehosting.com/user_avatar/forum.storj.io/grimm/32/7823_2.png) [@Grimm](https://forum.storj.io/u/Grimm)\
**Post date:** [April 11, 2023, 4:27pm UTC](https://forum.storj.io/t/node-config-yaml-variables-not-working-properly/22261/1 "2023-04-11T16:27:38Z")

</div>

I have encountered that these variables where not working since 1,72 if I am not mistaken using docker container with docker-compose.  
console.address: does not change the Port  
storage.allocated-disk-space: Does not work defaulting to 1GB

I have to use environment variables for these to work.

ATM I do not know if filestore.write-buffer-size: also works only from config file.

---

<div class="post-metadata">

**Author:** ![clement](https://storj.bcdn.literatehosting.com/user_avatar/forum.storj.io/clement/32/11821_2.png) [@clement](https://forum.storj.io/u/clement)\
**Post date:** [April 11, 2023, 5:38pm UTC](https://forum.storj.io/t/node-config-yaml-variables-not-working-properly/22261/2 "2023-04-11T17:38:09Z")

</div>

You should be able to specify these config values either directly with the docker command or with docker-compose. Can you share your docker-compose file?

---

<div class="post-metadata">

**Author:** ![Alexey](https://storj.bcdn.literatehosting.com/user_avatar/forum.storj.io/alexey/32/41_2.png) [@Alexey](https://forum.storj.io/u/Alexey)\
**Post date:** [April 12, 2023, 8:29am UTC](https://forum.storj.io/t/node-config-yaml-variables-not-working-properly/22261/3 "2023-04-12T08:29:29Z")

</div>

`console.address` you should provide as an argument (with `--`) in your `command:` clause, the `storage.allocated-disk-space:` option should be provided as environment variable `STORAGE`.  
I.e.

```auto
version: "3.7"
services:
  storagenode2:
    container_name: storagenode2
    restart: always
    stop_grace_period: 300s
    image: storjlabs/storagenode:latest
    ports:
      - "28969:28967/tcp"
      - "28969:28967/udp"
      - "14003:14003"
    volumes:
      - type: bind
        source: /mnt/storj/storagenode2/identity
        target: /app/identity
      - type: bind
        source: /mnt/storj//storagenode2
        target: /app/config
    environment:
      - WALLET=0x...
      - EMAIL=yyyy@zzz
      - ADDRESS=xxx:28969
      - STORAGE=7TB
    command:
      - "--operator.wallet-features=zksync"
      - "--console.address: 14003"

```

---

<div class="post-metadata">

**Author:** ![Grimm](https://storj.bcdn.literatehosting.com/user_avatar/forum.storj.io/grimm/32/7823_2.png) [@Grimm](https://forum.storj.io/u/Grimm)\
**Post date:** [April 12, 2023, 11:05am UTC](https://forum.storj.io/t/node-config-yaml-variables-not-working-properly/22261/4 "2023-04-12T11:05:03Z")

</div>

I know I can pass them in the command section of docker compose, that’s how I have it right now, I am just reporting they don’t work on the config.yaml, so you pass the command arguments instead of having just the config file.

---

<div class="post-metadata">

**Author:** ![Grimm](https://storj.bcdn.literatehosting.com/user_avatar/forum.storj.io/grimm/32/7823_2.png) [@Grimm](https://forum.storj.io/u/Grimm)\
**Post date:** [April 12, 2023, 11:07am UTC](https://forum.storj.io/t/node-config-yaml-variables-not-working-properly/22261/5 "2023-04-12T11:07:38Z")

</div>

wallet-features work if set in the config.yaml

> [@Node config.yaml variables not working properly](https://forum.storj.io/t/node-config-yaml-variables-not-working-properly/22261/4):
>
> I know I can pass them in the command section of docker compose, that’s how I have it right now, I am just reporting they don’t work on the config.yaml, so you pass the command arguments instead of having just the config file.

---

<div class="post-metadata">

**Author:** ![Alexey](https://storj.bcdn.literatehosting.com/user_avatar/forum.storj.io/alexey/32/41_2.png) [@Alexey](https://forum.storj.io/u/Alexey)\
**Post date:** [April 13, 2023, 2:59am UTC](https://forum.storj.io/t/node-config-yaml-variables-not-working-properly/22261/6 "2023-04-13T02:59:47Z")

</div>

The parameters in the `docker run` command have a precedence above parameters in the `config.yaml`, especially required ones such as `-e STORAGE`, the `console.address:` is hardcoded in the entrypoint script, so you must provide it as an argument to override the hardcode.  
See

> <https://github.com/storj/storagenode-docker/blob/21b0028b8e02a7fea2370c06360a0250c7ec603f/docker/entrypoint#L64>

---

<div class="post-metadata">

**Author:** ![Grimm](https://storj.bcdn.literatehosting.com/user_avatar/forum.storj.io/grimm/32/7823_2.png) [@Grimm](https://forum.storj.io/u/Grimm)\
**Post date:** [April 13, 2023, 11:35am UTC](https://forum.storj.io/t/node-config-yaml-variables-not-working-properly/22261/7 "2023-04-13T11:35:35Z")

</div>

> [@Alexey](#):
>
> cially required ones such as `-e STORAGE`, the `console.address:` is hardcoded in the entrypoint script, so you m

Thanks for the answer, that makes it very clear, the ENV variables are set in the docker file so the entrypoint forces the values.

A sugestion, maybe an ENV FORCE\_CONFIG to bypass the entrypoint from using run params and use the config file instead?  
It makes docker commands and docker files much smaller and cleaner.

Also it makes it seems that the entrypoint impossible to change the default port 14002 to port 80 for example.

Same goes for the Multinode dashboard

```auto
RUN_PARAMS="${RUN_PARAMS:-} --console.address=:15002"

```

Not contesting if it should do by default but at least have a way to actually bypass it, since all my dockers have an IP in a pretty restricted vlan and I really did want to use port 80 to facilitate FW rules.

Thanks.

---

<div class="post-metadata">

**Author:** ![Alexey](https://storj.bcdn.literatehosting.com/user_avatar/forum.storj.io/alexey/32/41_2.png) [@Alexey](https://forum.storj.io/u/Alexey)\
**Post date:** [April 14, 2023, 8:22am UTC](https://forum.storj.io/t/node-config-yaml-variables-not-working-properly/22261/8 "2023-04-14T08:22:55Z")

</div>

> [@Grimm](#):
>
> Also it makes it seems that the entrypoint impossible to change the default port 14002

You can override it with an argument `--console.address=:80` after the image name in your `docker run` command, or in the `command:` clause in case of `docker-compose.yaml`.  
However, it’s an internal container port, so you may not change it and use the port mapping as usual, like `-p 80:14002` (or `-p 80:15002` for multinode).

> [@Grimm](#):
>
> dockers have an IP in a pretty restricted vlan and I really did want to use port 80 to facilitate FW rules.

Please do not expose your dashboard to the Internet without any protection, use this method instead: [How to remote access the web dashboard - Storj Docs](https://docs.storj.io/node/resources/faq/how-to-remote-access-the-web-dashboard)

The multinode dashboard is better to run on your other device - it allows to access your remote node securely.

---

<div class="post-metadata">

**Author:** ![Grimm](https://storj.bcdn.literatehosting.com/user_avatar/forum.storj.io/grimm/32/7823_2.png) [@Grimm](https://forum.storj.io/u/Grimm)\
**Post date:** [April 14, 2023, 3:48pm UTC](https://forum.storj.io/t/node-config-yaml-variables-not-working-properly/22261/9 "2023-04-14T15:48:17Z")

</div>

Ok, I will try the argument `--console.address=:80`

Can’t really use port map, using ipvlan.

> [@Alexey](#):
>
> Please do not expose your dashboard to the Internet without any protection

Don’t worry I am not, I am isolating storj nodes in a vlan separated from other devices, I want to minimize rules has much has possible in inter-vlan routing, I know it’s not a big performance issue, it just keeps it a bit more simple and safe to just allow LAN devices to access port 80 on DMZ VLAN rather than add several rules for extra ports.

If I need to access my dashboard I have a VPN, only thing I port forward and expose is port 28967 and subsequent for each new node.

---

<div class="post-metadata">

**Author:** ![Alexey](https://storj.bcdn.literatehosting.com/user_avatar/forum.storj.io/alexey/32/41_2.png) [@Alexey](https://forum.storj.io/u/Alexey)\
**Post date:** [April 15, 2023, 1:23am UTC](https://forum.storj.io/t/node-config-yaml-variables-not-working-properly/22261/10 "2023-04-15T01:23:59Z")

</div>

> [@Grimm](#):
>
> Can’t really use port map, using ipvlan.

I mean the `-p` option in your `docker run` command. If you do not use it with `--network host`, it will work in the NAT mode by default, so you need to do a port mapping in the `docker run` command, i.e.

```auto
docker run -d ... \
-p 28967:28967/tcp \
-p 28967:28967/udp \
-p 80:14002 \
...
storjlabs/storagenode:latest

```

See [Storage Node - Storj Docs](https://docs.storj.io/node/setup/cli/storage-node#1wH-F)
