Fixie Koyeb
With Fixie static IP for Koyeb, your applications hosted on Koyeb can make outbound requests (HTTP, HTTPS, Database, TCP, and more) from a consistent set of static IP addresses. This integration is designed to be language- and framework-independent, ensuring broad compatibility across various development stacks.
Typically, Koyeb applications are given a dynamic range of IP addresses for outbound requests. This dynamic assignment can complicate interactions with external services that require a specific IP address range for security reasons, such as some APIs and corporate firewalls. To mitigate these challenges, Fixie offers both HTTP and SOCKS V5 proxies for your application's outbound traffic, supporting HTTP/S requests, and database connections. This enhancement ensures your application remains compliant with external services and firewalls that necessitate an IP allow-list.
Fixie's versatility extends across multiple backend languages, offering support for JavaScript, Ruby, Python, Java, Go, and PHP.
Getting Started
To get started, create a Fixie account, and create a new Proxy Application.
In order to minimize latency, please select the closest region to the one where your Koyeb app is already deployed.
To check the Koyeb region for your app, run the following Koyeb CLI command and see the value(s) under REGION
column.
koyeb instances list
For example, fra
region is Frankfurt, Germany and would correspond to Fixie's EU
region. Learn more about Koyeb's regions here.
After the proxy is created, go to Proxy’s Details page where you’ll see a couple of important values:
- Proxy URL: Your Fixie HTTP/S or SOCKS proxy URL that includes your username, password and proxy server load-balancer to use.
- Outbound IPs: Your pair of Fixie IP-addresses. These will never change, so feel free to allow-list them with firewalls or services
Configure your application
Next, update your application to use your Fixie proxy server. We have documentation for many popular languages supported by Koyeb:
You also need to make sure Fixie credentials are accessible by your Koyeb app. We recommend against hardcoding the values in the source code and instead adding Proxy URL or HOST string to your Secrets. We do recommend the following naming conventions for Environment Variables so it’s easier to follow along with our documentation:
FIXIE_URL
for your Fixie HTTP/S proxyFIXIE_SOCKS_HOST
for your Fixie SOCKS proxy
Now using Koyeb CLI run the following command for HTTP/S proxy:
koyeb secret create FIXIE_URL --value "<SECRET_VALUE>"
koyeb app init <YOUR_APP_NAME> \
...
--env "FIXIE_URL=@FIXIE_URL"
or the following command for our SOCKS proxy:
koyeb secret create FIXIE_SOCKS_HOST --value "<SECRET_VALUE>"
koyeb app init <YOUR_APP_NAME> \
...
--env "FIXIE_SOCKS_HOST=@FIXIE_SOCKS_HOST"
Feel free to create different Fixie proxies for different environments (for example, development and production) to keep credentials and logs separate. For more information regarding managing environment variables for Koyeb, visit this documentation page.
The other way to integrate your application with Fixie is by using Fixie Socks proxy type and adding the fixie-wrench binary to your project. For more information, see the Koyeb example app for making a static IP request to a 3rd party API using Fixie.
Local setup
To use Fixie locally, replicate the FIXIE_URL
and/or FIXIE_SOCKS_HOST
environment variables in your local environment. For example, you can add it to .env
file locally
Keep sensitive configuration values, like credentials, out of source control. Exclude the
.env
file in Git with:echo '.env' >> .gitignore
.
Changing plans
Use the Fixie dashboard to change your plan. To change the plan, click Change Plan button and select an appropriate plan.
NOTE: Changing the plan won't affect your outbound IP address
Deleting a proxy
To remove the proxies, go to the Fixie dashboard and select Delete for the desired proxy.
Having issues? Please reach out to our team here.