The choice of the means of publishing instructions?

Gentlemen, need Your help. Maybe someone already faced the problem of choice.

To find a tool for compile and publish instructions

1. Web solution
2. Edit the text in the wiki markup or similar
3. Versioning is the ability to save drafts
4. It is desirable to have a mechanism for the approval
5. Restricted access by user group
6. Preferably, the mechanism for confirming familiarization
7. It is desirable to have a mechanism for email notifications to certain groups of users when you publish the changes
8. Preview of office (and other) file formats right in the browser without the need of downloading
9. AD integration
10. Integration with JIRA (links to tasks, task lists, ability to get a task from the page)
11. Organization knowledge base
12. The structure of the discussion (it is possible to use separate tool for this)

Be sure to selfhosted. There is an opportunity to finished some of the requirements yourself, the main thing was open source.
Purchase also consider, but the price tag is not exorbitant.
Atlassian Confluence - for the all clear, but expensive. Or someone tell me the possibilities are endless probes? (:

PS XS which tags to this question to stick.
June 8th 19 at 16:53
1 answer
June 8th 19 at 16:55
Probably OK xwiki.org

Not sure about the presence of items 4, 6, 8 (for sure there is a plugin for PDF) 10.
Other possibilities, like, there.

Find more questions by tags Web Development