Skip to content

Docker Swarm Stack for production #17

@Zeigren

Description

@Zeigren

I'm working on a production Docker Swarm stack and am a little stuck so I was hoping for some guidance.

Right now I'm stuck with the wonderful
Sorry Server isn't available, please try again
error message. But I can't figure out exactly what I've messed up.

Currently, the stack looks like this (which is a modified version of your stack):

  • DocDokuPLM using payara/server-full:4.181
  • Nginx Alpine
  • MariaDB 10/latest
  • Elasticsearch:6.6.1
  • DocDokuPLM-build using ubuntu:16.04 for building DocDokuPLM

Nginx, MariaDB, and Elasticsearch are all using their base containers with all configuration handled by environment variables, Docker Swarm configs, and Docker Swarm secrets.

The DocDokuPLM container is the payara container but uses an entrypoint script to run all the configuration commands that are in the back container. This makes it reconfigurable from the docker-swarm.yaml without needing to rebuild the container.

The DocDokuPLM-build container incorporates the init, build, and deploy commands in `platform-ctl' since everything needs to be built within the Docker volumes as they're not tied to any particular local storage/folder.

There are no error messages from the containers/build processes as far as I can tell, of course, it's possible I missed something. The only thing I get is a 200 605 code from Nginx when I try to connect.

What I'm looking at right now is the webapp.properties.json and vhost.conf. Most of vhost.conf is what I run in my other stacks so I've tested it, my main interest is at the bottom where the webapp.properties.json location is. I'm not sure if I have that quite right.

Next in line would be DOCDOKU_PLM_CODEBASE, DATABASE_URL, and ES_SERVER_URI in docker-swarm.yaml. Within Docker networks you usually can reference the other containers by name instead of by address or ip, but I'm not sure if that's an issue here or not.

Besides that would be any errors in the docker-entrypoint.sh, build, deploy, or init scripts. But those seem to checkout.

So yeah anything stick out?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions