Run on Docker
How to run Chartbrew on Docker
The setup is not yet updated for PostgreSQL. Please open a PR or a new issue if you have a solution or encounter any problems that can help us with the support.
A Chartbrew docker image is built whenever a new version is released.
Before running the commands below, make sure you have a MySQL server already running and an empty database that Chartbrew can use. The database name should match the value of the CB_DB_NAME
variable.
You will need a 32 bytes AES encryption key for the CB_ENCRYPTION_KEY
variable. Run the following command to generate one:
Changing environmental variables
If you change any of the VITE_APP_*
variables after the first run, it’s important to build the client application again from inside the image. This is done by running the following command:
Now let’s analyse what is needed for the docker image to run properly.
The 4019
port is used by the API and 4018
for the client app (UI). Feel free to map these to any other ports on your system (e.g 4523:4019
).
CB_ENCRYPTION_KEY
this string will be used to encrypt passwords and tokens. Use a secure 32 bytes string. You can generate one here.CB_API_HOST
needs to point to the home address of the system. Usually for a docker image this is0.0.0.0
.CB_DB_HOST
is the host of your database and determines how the application can reach it.host.docker.internal
is used when you want the container to connect to a service on your host such as a database running on your server already.CB_DB_PORT
is the port number of your database.CB_DB_NAME
the name of the database (make sure the database exists before running the image).CB_DB_USERNAME
andCB_DB_PASSWORD
are used for authentication with the DB.CB_REDIS_HOST
,CB_REDIS_PORT
, andCB_REDIS_PASSWORD
are used for the Redis queue.VITE_APP_CLIENT_HOST
is the address of the client application and is used by the client to be aware of its own address (not as important)VITE_APP_CLIENT_PORT
The port number where your client application will run from.VITE_APP_API_HOST
this is used for the client application to know where to make the API requests. This is the address of the API (backend).
If the setup fails in any way, please double-check that the environmental variables are set correctly. Check that both API and Client apps are running, and if you can’t get it running, please open a new issue with as much info as you can share (logs, vars).