I'm deploying Jira, Confluence, and Bitbucket in a Docker environment.
The configuration is fairly standard. Using Atlassian images, host volumes for application data, etc.
Jira and Bitbucket are working fine and can be accessed via <ip>:<port> on the same network, no issues.
Confluence, however, can only be accessed from the host machine using localhost:<port>. I've spent many hours trying to understand why I can't hit <ip>:<port> for Confluence, while the other apps are working fine.
Here is the snippet of my docker-compose for Confluence:
confluence:
  image: atlassian/confluence-server:7.4.0
  networks:
    - atlassian
  volumes:
    - /atlassian/application-data/confluence:/var/atlassian/application-data/confluence
  environment:
    CONFLUENCE_HOME: /var/atlassian/application-data/confluence
    ATL_JDBC_URL: jdbc:postgresql://database:5432/confluence
    ATL_JDBC_USER: postgres
    ATL_JDBC_PASSWORD: postgres
    ATL_DB_TYPE: postgresql
    JVM_MINIMUM_MEMORY: 4g
    JVM_MAXIMUM_MEMORY: 8g
  ports:
    - "8090:8090"
    - "8091:8091"
  deploy:
    resources:
      reservations:
        memory: 8G
I have no other configurations, or anything. Jira and Bitbucket are set up the exact same way in the compose file, except for their own ports being exposed.
The only thing I can see is that Confluence moved to Tomcat 9 and Java 11 in version 7+, and that there could be something in the built-in server.xml that I need to change, but I can't figure it out.
Any idea why I can't hit Confluence remotely via <ip>:<port> but I can access other tools?
Troubleshooting already done:
- This system is running on CentOS 7
 - firewalld and selinux are off d
 - No other network configurations that would prevent 8090 from being accessible
 - I also tried to map other external ports to the internal 8090 with no luck
 - I was able to deploy the Confluence 7.4.0 TAR manually and I could reach it remotely over 8090
 - I tried in all Docker configurations: docker run, docker-compose, and swarm. Same result