Anyone who has an idiotproof guide to how I change the default port numbers for FME server docker install into else than 80 or 443? I plan to run this on a linux server with loads of other stuff, including a web server on port 80. Lots of other stuff that breaks if I put FME server on port 80.
I'm fairly certain I'm not the only one with this use case... I am quite baffled that port number this isn't a parameter in the installation script.
Best answer by gerhardatsafe
Hi @hektopascal,
You can change the default ports for the FME Server Web Services container with an environment variable which controls the external port:
EXTERNALPORT
The default is 443 or 80 depending on the web protocol used (https/http).
Check out this documentation for more details and other useful variables for containers:
This post is closed to further activity.
It may be an old question, an answered question, an implemented idea, or a notification-only post.
Please check post dates before relying on any information in a question or answer.
For follow-up or related questions, please post a new question or idea.
If there is a genuine update to be made, please contact us and request that the post is reopened.
The process stops because I can't download from quay.io (where the images are hosted). I had to fiddle around with docker proxy setting to get it to work (this recipie: https://stackoverflow.com/a/28093517 )
docker images now download OK, but it keeps insisting on using port 80 (which is busy for other stuff)
Creating fmeserver_nginx_1 ... error ERROR: for fmeserver_nginx_1 Cannot start service nginx: driver failed programming external connectivity on endpoint fmeserver_nginx_1 (fa0105eb8a8608f87d811d8ca0bc07371701b7da3a1b5a50a77cf060e329ff2d): Error starting userland proxy: listen tcp 0.0.0.0:80: bind: address already in use
ERROR: for nginx Cannot start service nginx: driver failed programming external connectivity on endpoint fmeserver_nginx_1 (fa0105eb8a8608f87d811d8ca0bc07371701b7da3a1b5a50a77cf060e329ff2d): Error starting userland proxy: listen tcp 0.0.0.0:80: bind: address already in use ERROR: Encountered errors while bringing up the project.
The process stops because I can't download from quay.io (where the images are hosted). I had to fiddle around with docker proxy setting to get it to work (this recipie: https://stackoverflow.com/a/28093517 )
docker images now download OK, but it keeps insisting on using port 80 (which is busy for other stuff)
Creating fmeserver_nginx_1 ... error ERROR: for fmeserver_nginx_1 Cannot start service nginx: driver failed programming external connectivity on endpoint fmeserver_nginx_1 (fa0105eb8a8608f87d811d8ca0bc07371701b7da3a1b5a50a77cf060e329ff2d): Error starting userland proxy: listen tcp 0.0.0.0:80: bind: address already in use
ERROR: for nginx Cannot start service nginx: driver failed programming external connectivity on endpoint fmeserver_nginx_1 (fa0105eb8a8608f87d811d8ca0bc07371701b7da3a1b5a50a77cf060e329ff2d): Error starting userland proxy: listen tcp 0.0.0.0:80: bind: address already in use ERROR: Encountered errors while bringing up the project.
@hektopascal When you disable https for the docker-compose deployment you will need to comment out port 80 in the nginx service definition of your compose file:
ports: - '${EXTERNALPORT:-443}:8443' # HTTP to HTTPS port, enable if protocol is https and redirect is requested # - 80:8080
I think that might fix your problem. Let us know how this goes.
After banging my head I finally resolved this: For some reason, my environment variables aren't available when doing the "sudo docker-compose". I must have misunderstood something about the -s and -E flags...
Anyways, logging in as root and then setting the environment variables did the trick.