├── .gitignore ├── volumes └── knowledge │ └── custom_connection.xml ├── Dockerfile ├── docker-compose.yml └── README.md /.gitignore: -------------------------------------------------------------------------------- 1 | volumes/initdb 2 | volumes/postgres 3 | volumes/knowledge/* 4 | !volumes/knowledge/custom_connection.xml 5 | -------------------------------------------------------------------------------- /volumes/knowledge/custom_connection.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | custom 4 | org.postgresql.Driver 5 | jdbc:postgresql://db/knowledge_production 6 | postgres 7 | admin123 8 | public 9 | 0 10 | false 11 | 12 | -------------------------------------------------------------------------------- /Dockerfile: -------------------------------------------------------------------------------- 1 | # Dockerfile for Knowledge 2 | 3 | FROM tomcat:jre8 4 | 5 | # ==== dumb-init ==== 6 | RUN apt-get update && \ 7 | apt-get install -y dumb-init && \ 8 | apt-get clean 9 | 10 | # ==== environment ==== 11 | RUN rm -rf /usr/local/tomcat/webapps/ROOT \ 12 | && update-ca-certificates -f 13 | 14 | # ==== add Knowledge ==== 15 | ADD https://github.com/support-project/knowledge/releases/download/v1.13.1/knowledge.war \ 16 | /usr/local/tomcat/webapps/ROOT.war 17 | 18 | VOLUME [ "/root/.knowledge" ] 19 | EXPOSE 8080 20 | 21 | CMD [ "dumb-init", "/usr/local/tomcat/bin/catalina.sh", "run" ] 22 | -------------------------------------------------------------------------------- /docker-compose.yml: -------------------------------------------------------------------------------- 1 | version: '2' 2 | services: 3 | app: 4 | image: koda/docker-knowledge 5 | #build: . 6 | volumes: 7 | - ./volumes/knowledge:/root/.knowledge 8 | ports: 9 | - "8080:8080" 10 | restart: always 11 | depends_on: 12 | - "db" 13 | db: 14 | image: postgres:9 15 | environment: 16 | - POSTGRES_USER=postgres 17 | - POSTGRES_PASSWORD=admin123 18 | - POSTGRES_DB=knowledge_production 19 | volumes: 20 | #- ./volumes/initdb:/docker-entrypoint-initdb.d 21 | - ./volumes/postgres/data:/var/lib/postgresql/data 22 | restart: always 23 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # docker-knowledge 2 | Docker file for knowledge 3 | 4 | - This is Dockerfile that can build a docker image of [Knowledge](https://github.com/support-project/knowledge). 5 |  6 | 7 | ## What's Knowledge 8 | - Free Knowledge Management System 9 | 10 | - [Live Demo](https://support-project.org/knowledge/index) 11 | 12 | - [Landing page](https://support-project.org/knowledge_info/index) 13 | 14 | 15 | 16 | ## Get from Docker Hub 17 | 18 | ``` 19 | docker pull koda/docker-knowledge 20 | mkdir /home/hoge/knowledge 21 | chmod a+w /home/hoge/knowledge 22 | docker run -d -p 80:8080 -v /home/hoge/knowledge:/root/.knowledge --name knowledge koda/docker-knowledge 23 | ``` 24 | 25 | 26 | 27 | ## Build yourself 28 | 29 | Get DockerFile and run this command. 30 | 31 | ``` 32 | docker build -t knowledge . 33 | mkdir ~/home/hoge/knowledge 34 | chmod a+w /home/hoge/knowledge 35 | docker run -d -p 80:8080 -v /home/hoge/knowledge:/root/.knowledge --name knowledge knowledge 36 | ``` 37 | 38 | --------------------------------------------------------------------------------