Skip to content

Commit 273b7a3

Browse files
authored
Merge pull request #11 from petercool/iss-10
[ISS-10][Documentation] Implement documentation
2 parents 9a394ad + 8729b86 commit 273b7a3

File tree

4 files changed

+51357
-0
lines changed

4 files changed

+51357
-0
lines changed

README.md

Lines changed: 82 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,82 @@
1+
# Interactive Brokers Gateway Docker Container
2+
3+
This repository contains a Dockerized version of the Interactive Brokers Client Portal Web API Gateway. It provides a containerized solution for running the IB Gateway, making it easier to deploy and manage in various environments.
4+
5+
## Features
6+
7+
- Dockerized IB Gateway
8+
- Multi-architecture support (amd64/arm64)
9+
- Automated builds via GitHub Actions
10+
- Volume mounting for configuration
11+
- Easy deployment with Docker Compose
12+
13+
## Prerequisites
14+
15+
- Docker
16+
- Docker Compose
17+
- Interactive Brokers account
18+
19+
## Quick Start
20+
21+
1. Clone this repository:
22+
```bash
23+
git clone https://github.com/petercool/ib-cp-gateway-docker.git
24+
cd ib-cp-gateway-docker
25+
```
26+
27+
2. Start the container:
28+
```bash
29+
docker compose up -d
30+
```
31+
32+
The gateway will be available at `http://localhost:8000`
33+
34+
## Configuration
35+
36+
The gateway configuration is managed through `root/conf.yaml`. Mount this file as a volume to customize the settings:
37+
38+
```yaml
39+
# Example configuration in docker-compose.yml
40+
volumes:
41+
- ./ib_cp_gateway/root:/app/root
42+
```
43+
44+
## Building Locally
45+
46+
To build the Docker image locally:
47+
48+
```bash
49+
docker compose build
50+
```
51+
52+
## Environment Variables
53+
54+
No environment variables are required for basic operation. All configuration is handled through the `conf.yaml` file.
55+
56+
## Security Considerations
57+
58+
- The gateway runs on port 8000 by default
59+
- Consider implementing additional security measures when deploying to production
60+
- Follow IB's security best practices for API usage
61+
62+
## Development
63+
64+
### OpenAPI Documentation
65+
66+
To format the OpenAPI documentation in a more readable way, you can use the following command:
67+
68+
```bash
69+
yq eval -P ./docs/openapi.yml > ./docs/openapi.pretty.yml
70+
```
71+
72+
This command creates a prettified version of the OpenAPI specification.
73+
74+
## License
75+
76+
This project is licensed under the MIT License - see the LICENSE file for details.
77+
78+
## Acknowledgments
79+
80+
- Interactive Brokers for providing the Client Portal Web API
81+
- Docker for containerization support
82+
- GitHub Actions for CI/CD capabilities

0 commit comments

Comments
 (0)