mirror of
https://github.com/orbien-org/orbien.git
synced 2026-09-25 00:01:36 +00:00
3.5 KiB
3.5 KiB
sidebar_position, sidebar_label, title
| sidebar_position | sidebar_label | title |
|---|---|---|
| 4 | Docker | Docker |
Docker
Server
Prepare orbien-server.toml:
listen = "0.0.0.0:9527"
# optional: domain routing
# httpGwPort = 80
# httpsGwPort = 443
# optional: client authentication
# [auth]
# token = "YOUR_TOKEN"
# optional: web dashboard
[dashboard]
addr = "0.0.0.0"
port = 8020
user = "admin"
password = "123456"
:::warning
dashboard.addr must be 0.0.0.0, otherwise the host cannot reach the dashboard through port mapping
:::
Option 1: Start with a config file
docker run -d --name orbien-server --restart unless-stopped \
-p 9527:9527 \
-p 8020:8020 \
-v "$PWD/orbien-server.toml:/etc/orbien/orbien-server.toml:ro" \
ghcr.io/orbien-org/orbien-server:latest
Option 2: Start with Compose
# docker-compose.yaml
services:
orbien-server:
image: ghcr.io/orbien-org/orbien-server:latest
container_name: orbien-server
restart: unless-stopped
ports:
- "9527:9527"
- "8020:8020"
# - "80:80"
# - "443:443"
volumes:
- ./orbien-server.toml:/etc/orbien/orbien-server.toml:ro
docker compose up -d
Option 3: Inject config from environment variables
Write {'{{env.NAME}}'} in the config, then pass values with -e or Compose environment. See Environment Variables for the syntax.
#orbien-server.toml
listen = "{{env.ORBIEN_LISTEN:0.0.0.0:9527}}"
[auth]
token = "{{env.ORBIEN_TOKEN}}"
[dashboard]
addr = "0.0.0.0"
port = 8020
user = "{{env.DASHBOARD_USER:admin}}"
password = "{{env.DASHBOARD_PASSWORD:123456}}"
# docker-compose.yaml
services:
orbien-server:
image: ghcr.io/orbien-org/orbien-server:latest
container_name: orbien-server
restart: unless-stopped
ports:
- "9527:9527"
- "8020:8020"
environment:
ORBIEN_TOKEN: ${ORBIEN_TOKEN}
DASHBOARD_PASSWORD: ${DASHBOARD_PASSWORD}
volumes:
- ./orbien-server.toml:/etc/orbien/orbien-server.toml:ro
export ORBIEN_TOKEN=YOUR_TOKEN
export DASHBOARD_PASSWORD=change-me
docker compose up -d
:::warning
String fields must quote the placeholder. If a variable is unset and has no default, the process fails to start. Do not write {'{{env.}}'} in the desktop client's config.
:::
Client
Mount the config
Prepare orbien.toml:
server = "YOUR_SERVER_IP:9527"
# must match if the server has a token
# [auth]
# token = "YOUR_TOKEN"
[[tunnels]]
name = "mysql"
protocol = "tcp"
service = "127.0.0.1:3306"
remotePort = 9000
Option 1: Start with a config file
docker run -d --name orbien --restart unless-stopped \
-v "$PWD/orbien.toml:/etc/orbien/orbien.toml:ro" \
ghcr.io/orbien-org/orbien:latest
:::tip
Inside the container, 127.0.0.1 is the container itself. To expose a service on the host, set service to the host IP, or use host networking below
:::
Host networking
Share the host network so the config can use 127.0.0.1 to reach local services:
docker run -d --name orbien --restart unless-stopped \
--network host \
-v "$PWD/orbien.toml:/etc/orbien/orbien.toml:ro" \
ghcr.io/orbien-org/orbien:latest
Option 2: Start with Compose
# docker-compose.yaml
services:
orbien:
image: ghcr.io/orbien-org/orbien:latest
container_name: orbien
restart: unless-stopped
# network_mode: host
volumes:
- ./orbien.toml:/etc/orbien/orbien.toml:ro
docker compose up -d