# OpenIM Web Service - [OpenIM Web Service](#openim-web-service) - [Overview](#overview) - [User](#user) - [Docker Deployment](#docker-deployment) - [Build the Docker Image](#build-the-docker-image) - [Run the Docker Container](#run-the-docker-container) - [Configuration](#configuration) - [Contributions](#contributions) OpenIM Web Service is a lightweight containerized service built with Go. The service serves static files and allows customization via environment variables. ## Overview - Built using Go. - Deployed as a Docker container. - Serves static files from a directory which can be set via an environment variable. - The default port for the service is `20001`, but it can be customized using an environment variable. ## User example: ```bash $ ./openim-web -h Usage of ./openim-web: -distPath string Path to the distribution (default "/app/dist") -port string Port to run the server on (default "20001") ``` Variables can be set as above, Environment variables can also be set example: ```bash $ export OPENIM_WEB_DIST_PATH="/app/dist" $ export OPENIM_WEB_PPRT="11001" ``` Initialize the env configuration file: ```bash $ make init ``` ## Docker Deployment ### Build the Docker Image Even though we've implemented automation, it's to make the developer experience easier: To build the Docker image for OpenIM Web Service: ```bash $ docker build -t openim-web . ``` ### Run the Docker Container To run the service: ```bash $ docker run -e DIST_PATH=/app/dist -e PORT=20001 -p 20001:20001 openim-web ``` ## Configuration You can configure the OpenIM Web Service using the following environment variables: - **DIST_PATH**: The path to the directory containing the static files. Default: `/app/dist`. - **PORT**: The port on which the service listens. Default: `11001`. ## Contributions We welcome contributions from the community. If you find any bugs or have feature suggestions, please create an issue or send a pull request.