# Important Notes

{% hint style="warning" %}
**Early access:** You're on the Tashi Alphanet, a public testing phase. Real $TASHI is not involved, and all features are subject to change or reset.
{% endhint %}

## Monitoring your Node

You can run `docker ps` or `podman ps` to see the current status of your node:

```shellscript
$ docker ps
CONTAINER ID   IMAGE          COMMAND                  CREATED         STATUS         PORTS                                                                       NAMES
e473e98c67b9   503a236bb1a1   "/bin/bash container…"   3 minutes ago   Up 3 minutes   127.0.0.1:9000->9000/tcp, 0.0.0.0:39065->39065/tcp, [::]:39065->39065/tcp   tashi-depin-worker
```

This command only lists running containers. If the container has exited for some reason, it won't appear in this output. Instead, run `docker ps -a` or `podman ps -a` to see all containers, including stopped containers.

Run `docker logs tashi-depin-worker` or `podman logs tashi-depin-worker` to see the logs from the worker:

```shellscript
$ $ docker logs tashi-depin-worker
2025-07-24T07:56:59.625847Z  INFO tashi_depin_worker::cli: starting node agent public_key=2a9cbb2e1b7a738363a709eae08f59b629c4431c3294f6646601175b8cdce9c2e752f27ece728e6205
2025-07-24T07:56:59.625870Z  INFO tashi_consensus_engine::quic::socket: Bound to 0.0.0.0:39065
2025-07-24T07:56:59.626537Z  INFO tashi_depin_worker::cli: connecting to orchestrator orchestrator_url=wss://orchestrator.devnet.depin.infra.tashi.dev/v1/node/ws
2025-07-24T07:56:59.626554Z  INFO tashi_depin_worker::cli: Operator bond successful
2025-07-24T07:56:59.629450Z  INFO tashi_depin_worker::cli: starting http server
2025-07-24T07:56:59.986570Z DEBUG connect_with_backoff: tashi_depin_worker::orchestrator: sending bond bond=Bond { node_auth: SignedAuth { auth_json: "{\"v\":\"v1\",\"n\":\"BzmdcymXExTubayaGru8bVtyjaBgogEw99j1pGsdyJNG\",\"o\":\"CsmmCK2i3di9bZobvYEdgLLQMvRSf2BrXnyGk9LJwG8A\",\"t\":1753343694787}", signature: "4TwsMBLZuwPDN6MWMgNjgsSAUy26k1taN746xMwJmfXhdRARG2NVwRXA3RVUHRzewJ4McsHVuzbXpFXSQgvtw7UK" }, agent_pub_key: 2a9cbb2e1b7a738363a709eae08f59b629c4431c3294f6646601175b8cdce9c2e752f27ece728e6205, agent_addr: 0.0.0.0:39065, timestamp: TimestampNanos(1753343819986370539) }
2025-07-24T07:57:00.317989Z DEBUG connect_with_backoff: tashi_depin_worker::orchestrator: staking claim successful
```

You should see new activity here periodically.

If you have trouble with the worker, you may be asked to provide the output from this command.

{% hint style="info" %}
Log messages mentioning disconnections are normal; the worker periodically re-connects to the DePIN backend to refresh its status. This is only an issue if the worker is repeatedly failing to connect.
{% endhint %}

## Run Nodes on Custom Ports

You may want to control what ports your node runs on. In order to do so, run the following commands in a terminal:

```shellscript
docker run --rm -it --volume tashi-depin-worker-0:/home/worker/auth --platform linux/amd64 ghcr.io/tashigg/tashi-depin-worker:0 interactive-setup /home/worker/auth
```

This will create the image and volume, then promptly shut down the image.\
\
This next command will restart the image, set the new custom port mapping, and tell the container to restart as long as Docker is running:

```shellscript
docker run --restart always -p 9010:9000 -p 39065:39065 -d --volume tashi-depin-worker-0:/home/worker/auth --platform linux/amd64 ghcr.io/tashigg/tashi-depin-worker:0 run /home/worker/auth
```

{% hint style="info" %}
You can now run additional nodes with a different *volume* name and port mappings. For example, if you wanted to run a second incremental node on the same machine as the previous, you could run:

```shellscript
docker run --rm -it --volume tashi-depin-worker-1:/home/worker/auth --platform linux/amd64 ghcr.io/tashigg/tashi-depin-worker:0 interactive-setup /home/worker/auth
docker run --restart always -p 9011:9000 -p 39066:39065 -d --volume tashi-depin-worker-1:/home/worker/auth --platform linux/amd64 ghcr.io/tashigg/tashi-depin-worker:0 run /home/worker/auth
```

{% endhint %}

## Manual Update

If you opted-out of automatic updates when installing the worker, the worker will stop when an update is required.

Run one of the following commands in a terminal:

```shellscript
docker logs tashi-depin-worker
```

```shellscript
podman logs tashi-depin-worker
```

If the Privilege Check of the install script failed, you may need to prefix this command with `sudo`.

If you see the following message in the logs:

```
An update is available, but automatic updating is disabled. Manual update is required.
```

Then you need to update the worker.

The same script used to install the worker can also update it (make note of the `--update` flag):

```shellscript
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/tashigg/tashi-depin-worker/refs/heads/main/install.sh)" - --update
```

This performs the same checks as installation, but skips the [2.-install-script-docker](https://docs.tashi.network/node-operators/nodes/node-installation/2.-install-script-docker "mention") step as it simply re-uses the existing authorization.

At the end of the update process, the script prompts if you want to delete the old worker container:

```
Would you like to delete tashi-depin-worker-old? (Y/n)
```

Unless you've been instructed to otherwise by a Tashi representative, press `Enter` to delete the old container.

## Uninstalling

Uninstalling the worker is as simple as deleting the container.&#x20;

Run one of the following commands in a terminal:

```shellscript
docker rm -f tashi-depin-worker
```

```shellscript
podman rm -f tashi-depin-worker
```

If the Privilege Check of the install script failed, you may need to prefix this command with `sudo`.

### Deleting Node Authorization

The worker node authorization is retained as a persistent volume.

This means that, if you install the worker again later, you won't need to repeat the steps in [3.-bond-worker](https://docs.tashi.network/node-operators/nodes/node-installation/3.-bond-worker "mention").

However, this also means you won't be able to bond the worker to a different wallet address.

If you have already uninstalled the worker, you can also delete the volume containing the authorization. This will let you re-do the steps in [3.-bond-worker](https://docs.tashi.network/node-operators/nodes/node-installation/3.-bond-worker "mention") after reinstalling the worker node.

Run one of the following commands in a terminal:

```shellscript
docker volume rm tashi-depin-worker-auth
```

```shellscript
podman volume rm tashi-depin-worker-auth
```

If the Privilege Check of the install script failed, you may need to prefix this command with `sudo`.

{% hint style="info" %}
If you get an error about the volume being in-use, this means you need to uninstall the worker first.

If you have already uninstalled the worker, you may have an old container that stuck around from a manual upgrade of the worker. Try one of the following commands:

```shellscript
docker rm -f tashi-depin-worker-old
```

```shellscript
podman rm -f tashi-depin-worker-old
```

If the Privilege Check of the install script failed, you may need to prefix this command with `sudo`.
{% endhint %}

## Troubleshooting

If you encounter a problem not covered here, please contact your Tashi representative for support.

### The container name "/tashi-depin-worker" is already in use

The worker is already installed. Proceed to the [3.-bond-worker](https://docs.tashi.network/node-operators/nodes/node-installation/3.-bond-worker "mention") step or see [#uninstalling](#uninstalling "mention") for how to uninstall the existing worker.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.tashi.network/node-operators/nodes/node-installation/important-notes.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
