Skip to content

Commit 5cd6971

Browse files
authored
Update linux-docker.md (#28)
Updated self-hosting docker instructions
1 parent f417793 commit 5cd6971

1 file changed

Lines changed: 26 additions & 15 deletions

File tree

docs/setup/operating-systems/linux-docker.md

Lines changed: 26 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -147,8 +147,9 @@ This creates a folder called Zeppelin and clones the bot code there.
147147
- `CLIENT_SECRET`: This is the secret from the Oauth page in the Discord developer portal
148148
- `BOT_TOKEN`: This is the bot token from the Bot page in the Discord developer portal.
149149
- `DASHBOARD_URL`: This is the URL you and other bot managers will use to access the dashboard to manage server configs
150-
- If you are using a domain, fill in https://DOMAIN (e.g. https://zeppelin.gg)
151-
- if you are using an IP address, fill in https://IP
150+
- If you are using a domain, fill in http://DOMAIN (e.g. http://zeppelin.gg)
151+
- if you are using an IP address, fill in http://IP
152+
- Change http to https if you will implement SSL in some way. By default Zeppelin does not set one up.
152153
- `API_URL`: This is used by the dashboard to access the bot internals; also used by Discord to redirect you back to the dashboard after you log in.
153154
- Use your dashboard URL, but add `/api` at the end (e.g. https://zeppelin.gg/api)
154155
- `STAFF`: These are staff to help manage the bot itself. These are not server staff that would manage bot configs.
@@ -158,23 +159,33 @@ This creates a folder called Zeppelin and clones the bot code there.
158159
- `DEFAULT_ALLOWED_SERVERS`: Normally servers need to be allowed before the bot can be added to it. Otherwise it leaves. This indicates the first server that the bot could be added to, where administrative commands can be run to allow other servers.
159160
- Fill in the Discord server's ID.
160161
- `PHISHERMAN_API_KEY`: Phisherman is a live database used for identifying malicious, scam, and phishing links. Uncomment the row if you have an api key.
161-
- `DOCKER_USER_UID`: Paste in the output of `id -u` from Step 3 above
162-
- `DOCKER_USER_GID`: Paste in the output of `id -g` from Step 3 above
163-
- `DOCKER_PROD_DOMAIN`: If you are using a domain to access the dashboard, put the domain here
164-
- Put only the domain (e.g. zeppelin.gg) and not the URL.
165-
- `DOCKER_PROD_WEB_PORT`: The port used to access the dashboard.
166-
- If you have a webserver or another service that uses port 443 running on the host computer, change the port to something else, e.g. 444
167-
- `DOCKER_PROD_MYSQL_PORT`: This will allow you to access the dashboard from the host computer or another computer using a program such as DBeaver.
168-
- It does not need to be changed unless there is a port conflict with the host computer.
169-
- `DOCKER_PROD_MYSQL_PASSWORD`: Database access password for the zeppelin user.
170-
- Do not use `$'"(){}#` in the password
171-
- `DOCKER_PROD_MYSQL_ROOT_PASSWORD`: Database access password for the root user
172-
- Do not use `$'"(){}#` in the password
162+
- DEVELOPMENT: Skip the entire section
163+
- STANDALONE: Fill in this section unless you already have a MySQL database service set up that you would like to use with Zeppelin. If you don't know, you don't, and fill in this section.
164+
- STANDALONE_WEB_PORT: Leave this alone unless port 80 on the host computer is already occupied. If it is, change it to something like 81 or 82. If you change this value, go back up to DASHBOARD_URL and API_URL and add a port after the domain or IP. For example: http://zeppelin.gg:81 or http://8.8.8.8:81 for the dashboard and http://zeppelin.gg:81/api or http://8.8.8.8:81/api for the api.
165+
- STANDALONE_MYSQL_PORT: This will allow you to access the dashboard from the host computer or another computer using a program such as DBeaver.
166+
- It does not need to be changed unless there is a port conflict with the host computer.
167+
- STANDALONE_MYSQL_PASSWORD: Database access password for the zeppelin user.
168+
- Do not use `$'"(){}#` in the password
169+
- STANDALONE_MYSQL_ROOT_PASSWORD: Database access password for the root user
170+
- Do not use `$'"(){}#` in the password
171+
- LIGHTWEIGHT: Fill in this section only if you already have a MySQL database service set up that you would like to use with Zeppelin. If you filled in the Standalone section above, skip this one.
172+
- LIGHTWEIGHT_API_PORT: Port with which the API will be accessible to the host computer and to the public. Change if there's a conflict on the host computer.
173+
- LIGHTWEIGHT_DASHBOARD_PORT: Port with which the dashboard will be accessible to the host computer and to the public. Change if there's a conflict on the host computer.
174+
- LIGHTWEIGHT_DB_HOST: URL or IP of the MySQL database you will use for Zeppelin
175+
- LIGHTWEIGHT_DB_PORT: Port of the MySQL database. Default is 3356
176+
- LIGHTWEIGHT_DB_USER: User of the MySQL database specifically for Zeppelin. For security reasons, try not to use the root user.
177+
- LIGHTWEIGHT_DB_PASSWORD: Password of the database user Zeppelin will use.
178+
- LIGHTWEIGHT_DB_DATABASE: Name of the database
179+
- LIGHTWEIGHT_API_PATH_PREFIX: This allows you to set the route prefix for the api. If you don't know what this means, leave it blank.
180+
173181
5. When you are done editing, press Ctrl-X, then Y, then Enter to save and exit Nano.
174182

175183
## Build and Start the bot
176184

177-
`docker compose -f docker-compose.production.yml up -d --build`
185+
- If you filled in the Standalone section in the env file:
186+
- `docker compose -f docker-compose.standalone.yml up -d --build`
187+
- If you filled in the Lightweight section in the env file:
188+
- `docker compose -f docker-compose.lightweight.yml up -d --build`
178189

179190
**NOTE**: Make sure to run the above command every time you update/change the source code.
180191

0 commit comments

Comments
 (0)