{"id":22707497,"url":"https://github.com/eugenmayer/docker-image-atlassian-confluence","last_synced_at":"2025-12-27T05:35:36.468Z","repository":{"id":51510933,"uuid":"96689747","full_name":"EugenMayer/docker-image-atlassian-confluence","owner":"EugenMayer","description":"Dockerized Atlassian Confluence","archived":false,"fork":false,"pushed_at":"2025-03-18T06:14:48.000Z","size":135,"stargazers_count":24,"open_issues_count":1,"forks_count":17,"subscribers_count":5,"default_branch":"main","last_synced_at":"2025-04-12T13:13:26.360Z","etag":null,"topics":["confluence","docker","java","mysql","postgresql"],"latest_commit_sha":null,"homepage":"","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":"teamatldocker/confluence","license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/EugenMayer.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null},"funding":{"github":"eugenmayer","patreon":"eugenmayer"}},"created_at":"2017-07-09T14:30:51.000Z","updated_at":"2025-01-30T16:12:45.000Z","dependencies_parsed_at":"2023-01-31T19:16:00.580Z","dependency_job_id":null,"html_url":"https://github.com/EugenMayer/docker-image-atlassian-confluence","commit_stats":null,"previous_names":[],"tags_count":24,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/EugenMayer%2Fdocker-image-atlassian-confluence","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/EugenMayer%2Fdocker-image-atlassian-confluence/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/EugenMayer%2Fdocker-image-atlassian-confluence/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/EugenMayer%2Fdocker-image-atlassian-confluence/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/EugenMayer","download_url":"https://codeload.github.com/EugenMayer/docker-image-atlassian-confluence/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248714355,"owners_count":21149866,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["confluence","docker","java","mysql","postgresql"],"created_at":"2024-12-10T10:13:11.300Z","updated_at":"2025-12-27T05:35:36.431Z","avatar_url":"https://github.com/EugenMayer.png","language":"Shell","funding_links":["https://github.com/sponsors/eugenmayer","https://patreon.com/eugenmayer"],"categories":[],"sub_categories":[],"readme":"[![Docker Stars](https://img.shields.io/docker/stars/eugenmayer/confluence.svg)](https://hub.docker.com/r/EugenMayer/confluence/) \n# NOTICE\n\nSince we are no longer using this images to run confluence in production, only for development usage, thus we are not goint to update the image as often as we used to.\nIf you like to udpate it more recent, please apply as contributor, we are happy to add you.\n\n# Docker images for Atlassian Confluence\n\nProduction-ready AND **development** ready, up to date builds of Atlassian Confluence - right from the original binary download based on\n\n- bellsoft openjdk 17 (Confluence 9+)\n- bellsoft openjdk 11 (Confluence 7+)\n- bellsoft openjdk 8 (Confluence 6)\n\nYou can run those images for production use ( see `./examples` ) or for developing with auto-setup and debugging.\n\n## Usage\n\n### Production\n\n- See `./example/postgres` using postgresql\n- See `./example/mysql` using mysql\n- See `./example/ssl` with SSL, see below\n\n### SSL\n\nYou can also run the stack with official SSL certificates using the\nTraefik based stack, see `./example/ssl`. Just enter your `CONFLUENCE_DOMAIN` in `./example/ssl/.env` and you are all set.\n\n### Development\n\n- See `./example/debug` to see how to run with enabled debugger\n- See `./example/login` to see how to allow URL based login (insecure) using `os_username`\n\n## Automatic builds\n\nBuild via github actions.\n\n## Supported tags and respective Dockerfile links\n\n| Product    | Version             | Tags                                                                                                  | Dockerfile                                                                                                       |\n| ---------- | ------------------- | ----------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- |\n| github     | 7.15+-9.x+             | [see tags](https://github.com/EugenMayer/docker-image-atlassian-confluence/pkgs/container/confluence) | [Dockerfile](https://github.com/EugenMayer/docker-image-atlassian-confluence/blob/master/Dockerfile)             |\n| (legacy) docker-hub | 7.0-7.15     | [see tags](https://hub.docker.com/r/eugenmayer/confluence/tags/)                                      | -          |\n| (legacy) docker-hub | 6.13.x \u003c7.x  | [see tags](https://hub.docker.com/r/eugenmayer/confluence/tags/)                                      | - |\n\n# Quickstart\n\n```bash\ndocker-compose up\n```\n\n## Configuration\n\nPlease see the `docker-compose.yml` for the configuration variables\n\nAlso, see the folder `examples/` for different examples with Postgres or Mysql\n\n# Environment variables\n\nConfigures the DB host to wait for the DB to come up. Those variables are not used by confluence during the installation\n\n- CONFLUENCE_DB_HOST=db\n- CONFLUENCE_DB_PORT=5432\n\nSet the DEBUG port, e.g. for development\n\n- JPDA_ADDRESS=5005\n- JPDA_TRANSPORT=dt_socket\n\nConfiguration\n\n- CATALINA_OPTS=-Xms256m -Xmx1g\n- CONFLUENCE_CONTEXT_PATH= # context path like `/confluence`\n- CONFLUENCE_DELAYED_START= # seconds to wait before starting confluence\n- CONFLUENCE_PROXY_NAME= # your.domain.TLD (no scheme!)- your outer proxy domain, e.g. if you use external SSL offloading\n- CONFLUENCE_PROXY_PORT= # proxy port, 443 , e.g. if you use external ssl offloading\n- CONFLUENCE_PROXY_SCHEME= # http or https - https if you use external ssl offloading\n\n# Volumes for persistence\n\nYou will need to persist\n\n- the confluence data under `/var/atlassian/confluence`\n- the database folder postgres: `/var/lib/postgresql/data` or mysql: `/var/lib/mysql`\n\n# Custom scripts\n\nYou can add custom startup scripts to customize your confluence during the startup.\nLet's assume you have a setup.sh in your folder\n\nYour script `setup.sh` might look like this, setting up a confluence as fast as possible with\n\n- preconfigured server-id\n- a preset license\n- pre-configured database settings\n\nMoving you as fast as possible to have a blank and working confluence installation. Be sure to replace the\n\n- \u003cYOUR LICENSE\u003e part and adjust the server-id\n- adjust your database name, user, and password if needed\n\n```bash\n#!/bin/bash\nset -e\n\n# set the confluence installation set to DB select\nxmlstarlet ed --pf --inplace --update \"//setupType\" --value \"custom\" ${CONF_HOME}/confluence.cfg.xml\nxmlstarlet ed --pf --inplace --update \"//setupStep\" --value \"setupdbchoice-start\" ${CONF_HOME}/confluence.cfg.xml\n\n# configure our serverID and license\nxmlstarlet ed --pf --inplace --subnode '//properties' --type elem --name 'property' --value \"B2DL-7TV3-LFUU-8DDD\" -i '//properties/property[not(@name)]' --type attr --name 'name' --value \"confluence.setup.server.id\" ${CONF_HOME}/confluence.cfg.xml\nxmlstarlet ed --pf --inplace --subnode '//properties' --type elem --name 'property' --value \"\u003cYOUR LICENSE\u003e\" -i '//properties/property[not(@name)]' --type attr --name 'name' --value \"atlassian.license.message\" ${CONF_HOME}/confluence.cfg.xml\n\nxmlstarlet ed --pf --inplace --subnode '//properties' --type elem --name 'property' --value \"postgresql\" -i '//properties/property[not(@name)]' --type attr --name 'name' --value \"confluence.database.choice\" ${CONF_HOME}/confluence.cfg.xml\nxmlstarlet ed --pf --inplace --subnode '//properties' --type elem --name 'property' --value \"database-type-standard\" -i '//properties/property[not(@name)]' --type attr --name 'name' --value \"confluence.database.connection.type\" ${CONF_HOME}/confluence.cfg.xml\nxmlstarlet ed --pf --inplace --subnode '//properties' --type elem --name 'property' --value \"org.postgresql.Driver\" -i '//properties/property[not(@name)]' --type attr --name 'name' --value \"hibernate.connection.driver_class\" ${CONF_HOME}/confluence.cfg.xml\nxmlstarlet ed --pf --inplace --subnode '//properties' --type elem --name 'property' --value \"verybigsecretrootpassword\" -i '//properties/property[not(@name)]' --type attr --name 'name' --value \"hibernate.connection.password\" ${CONF_HOME}/confluence.cfg.xml\nxmlstarlet ed --pf --inplace --subnode '//properties' --type elem --name 'property' --value \"confluencedb\" -i '//properties/property[not(@name)]' --type attr --name 'name' --value \"hibernate.connection.username\" ${CONF_HOME}/confluence.cfg.xml\nxmlstarlet ed --pf --inplace --subnode '//properties' --type elem --name 'property' --value \"jdbc:postgresql://db:5432/confluencedb\" -i '//properties/property[not(@name)]' --type attr --name 'name' --value \"hibernate.connection.url\" ${CONF_HOME}/confluence.cfg.xml\nxmlstarlet ed --pf --inplace --subnode '//properties' --type elem --name 'property' --value \"com.atlassian.confluence.impl.hibernate.dialect.PostgreSQLDialect\" -i '//properties/property[not(@name)]' --type attr --name 'name' --value \"hibernate.dialect\" ${CONF_HOME}/confluence.cfg.xml\n\n# commong settings confluencese expects\nxmlstarlet ed --pf --inplace --subnode '//properties' --type elem --name 'property' --value \"\" -i '//properties/property[not(@name)]' --type attr --name 'name' --value \"confluence.webapp.context.path\" ${CONF_HOME}/confluence.cfg.xml\nxmlstarlet ed --pf --inplace --subnode '//properties' --type elem --name 'property' --value 'READ_WRITE' -i '//properties/property[not(@name)]' --type attr --name 'name' --value \"access.mode\" ${CONF_HOME}/confluence.cfg.xml\nxmlstarlet ed --pf --inplace --subnode '//properties' --type elem --name 'property' --value '${localHome}/index' -i '//properties/property[not(@name)]' --type attr --name 'name' --value \"lucene.index.dir\" ${CONF_HOME}/confluence.cfg.xml\nxmlstarlet ed --pf --inplace --subnode '//properties' --type elem --name 'property' --value \"true\" -i '//properties/property[not(@name)]' --type attr --name 'name' --value \"synchrony.encryption.disabled\" ${CONF_HOME}/confluence.cfg.xml\nxmlstarlet ed --pf --inplace --subnode '//properties' --type elem --name 'property' --value \"true\" -i '//properties/property[not(@name)]' --type attr --name 'name' --value \"synchrony.proxy.enabled\" ${CONF_HOME}/confluence.cfg.xml\nxmlstarlet ed --pf --inplace --subnode '//properties' --type elem --name 'property' --value '${localHome}/temp' -i '//properties/property[not(@name)]' --type attr --name 'name' --value \"webwork.multipart.saveDir\" ${CONF_HOME}/confluence.cfg.xml\nxmlstarlet ed --pf --inplace --subnode '//properties' --type elem --name 'property' --value '${confluenceHome}/attachments' -i '//properties/property[not(@name)]' --type attr --name 'name' --value \"attachments.dir\" ${CONF_HOME}/confluence.cfg.xml\n```\n\nSo now mount it in your docker-compose file for the confluence server\n\n```yaml\nvolumes:\n  - setup.sh:/docker-entrypoint.d/setup.sh\n```\n\nAfter starting the stack, just access your confluence instance once `http://localhost` and wait for about 1 minute.\nThe confluence database is set up with all the bits and pieces. Then you just select which type of profile ( blank DB or example )\nand create your admin account - that's it!\n\n# Build The Image\n\n    git clone https://github.com/EugenMayer/docker-image-atlassian-confluence\n    cd docker-image-atlassian-confluence\n\nFor any version of Confluence \u003e= 7.0.0\n\n    export VERSION=7.1.2\n    docker build . -t eugenmayer/confluence:# $VERSION --build-args CONFLUENCE_VERSION=$VERSION\n\nFor any version of Confluence \u003c= 7.0.0, we need Java 8\n\n    export VERSION=6.17.1\n    docker build . -f Dockerfile_java8 -t eugenmayer/confluence:# $VERSION --build-args CONFLUENCE_VERSION=$VERSION\n\n## Related Images\n\nYou may also like:\n\n- [jira](https://github.com/EugenMayer/docker-image-atlassian-jira)\n- [development - running this image for development with debugging](https://github.com/EugenMayer/docker-image-atlassian-confluence/tree/master/examples/debug)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Feugenmayer%2Fdocker-image-atlassian-confluence","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Feugenmayer%2Fdocker-image-atlassian-confluence","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Feugenmayer%2Fdocker-image-atlassian-confluence/lists"}