In this document, we are planning to bring up xconfadmin, xconfui, xconfwebconfig, cassandra in four different containers and checking the connectivity in them. This is documented based on the docker bringup in Ubuntu 24.04 machine
$ docker --version Docker version 27.5.1, build 27.5.1-0 |
$ docker compose version Docker Compose version v2.36.2 |
Tree structure of the code details https://github.com/rdkcentral/rdk-cloud-container-config is as follows.
├── cassandra │ └── db │ ├── db_create_tables.cql │ └── db_init.cql ├── docker-compose.yaml ├── init-cassandra.sh ├── xconfadmin │ ├── Dockerfile │ └── config │ └── sample_xconfadmin.conf ├── xconfui │ ├── Dockerfile │ └── config │ └── sample_xconfui.conf └── xconfwebconfig ├── Dockerfile └── config └── sample_xconfwebconfig.conf |
xconfadmin, xconfui, xconfwebconfig holds the configuration which is same as whatever available in their respective github repo.
Eg: For xconfadmin, https://github.com/rdkcentral/xconfadmin/commit/d740d4190db6c9f285ab68fd7d3e4ffaf94e8e2b#diff-840011df7d93f21a964cb8112e896a59d8cdc5368b890f0fe32d2c6b2634498b.
The difference is in
database {
hosts = [
"127.0.0.1"
]
For standalone, it will be localhost as cassandra is running in different container this needs to address with Container name instead of localhost.
https://github.com/rdkcentral/rdk-cloud-container-config/blob/main/xconf/xconfadmin/config/sample_xconfadmin.conf#L76. For easeness, modified file is kept in the container config github repo.
$ docker compose up --build -d |
$ docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES e9ca26d40704 xconfwebconfig "/bin/sh -c 'sh -c \"…" 22 minutes ago Up 21 minutes 0.0.0.0:9000->9000/tcp, :::9000->9000/tcp xconfwebconfig 803f61de1b89 xconfadmin "/bin/sh -c 'sh -c \"…" 22 minutes ago Up 21 minutes 0.0.0.0:9001->9001/tcp, :::9001->9001/tcp xconfadmin 7c6357f76099 xconfui "./xconfui-linux-amd…" 22 minutes ago Up 21 minutes 0.0.0.0:8081->8081/tcp, :::8081->8081/tcp, 9090/tcp xconfui 0611c634c4f3 cassandra:3.11 "docker-entrypoint.s…" 22 minutes ago Up 22 minutes (healthy) 7000-7001/tcp, 7199/tcp, 9160/tcp, 0.0.0.0:9042->9042/tcp, :::9042->9042/tcp cassandra |
$ docker images REPOSITORY TAG IMAGE ID CREATED SIZE xconfui latest 64887efb14ac 22 minutes ago 808MB xconfwebconfig latest 04ff76ce94ec 43 minutes ago 48.5MB xconfadmin latest d301fe78f627 58 minutes ago 54.3MB cassandra 3.11 8c9391a40c86 3 months ago 303MB |
Note : For this bringup, xconf port is modified to 8081, rest of the ports used are same as in the repo.
For errors, can be checked by $ docker logs <containerid>
Verify xconfadmin is running properly
|
Verify xconfwebconfig is runing properly
|
Verify UI is working properly
|
Rest of the testing, refer the wiki page Xconf Golang Server - User guide for configuration and feature validation