An example nginx config that serves as a proxy to Mixpanel's Ingestion API and JavaScript library endpoints. To learn more, visit our Self-Hosted Tracking Docs.
- Make changes to nginx.conf, Dockerfile or any other file.
- Build docker image:
make
- Locally run with:
docker run --rm -p 8081:80 mixpanel-proxy
(listens on port 8081)
- Ensure you are on master and have no uncommitted changes
- Build docker image:
make
- Tag docker image:
make tag
- Publish to dockerhub:
make push
There are a few ways you can use this repo to deploy a server that can be use to proxy Mixpanel API requests: one-click deploy to cloud, build a docker image, or copy and paste the nginx settings to your own nginx config file.
Assuming you have Docker installed on your system, you can do the following:
- Clone the repo
- Build the Docker image:
docker build -t mixpanel-proxy .
- Run a container using the image:
docker run --name my-tracking-proxy -d -p 8080:80 mixpanel-proxy
- Visit
http://localhost:8080
For production, you would deploy this docker image to whatever servers you run your production services on.
If you already have servers running nginx, you can copy and paste the locations from the nginx.conf file in this repo and adjust the locations to match your preference.