Added a docker-compose.yml (#1613)
[openemr.git] / docker-compose.yml
blob80fd42d4d7652b5d9f876adc85d576dcba03da95
2 # This is for building a local OpenEMR development and testing environment.
3 # (Recommend not running it from your git repo and instead mirroring your
4 #  git repo to a testing directory (such as your web directory).)
6 # How to use:
7 #   1. docker-compose up -d
8 #   2. http://localhost:8080 to run setup in openemr (alpine 3.7 with PHP 7.1)
9 #      or
10 #      https://localhost:8090 to run setup in openemr with SSL (alpine 3.7 with PHP 7.1)
11 #      or
12 #      http://localhost:8081 to run setup in openemr (alpine edge with PHP 7.2)
13 #      or
14 #      https://localhost:8091 to run setup in openemr with SSL (alpine edge with PHP 7.2)
15 #  On the main setup input screen:
16 #   1. for Server Host, use either 'mysql' or 'mariadb' (have both mysql/mariadb dockers ready to go make testing either one easy)
17 #   2. for Root Pass, use 'root'
18 #   3. for User Hostname, use '%'
19 #  And when need to tear it down and restart it
20 #   1. docker-compose down -v
21 #   2. docker-compose up -d
22 #  Can see databases via:
23 #   -mariadb via http://localhost:8100
24 #   -mysql   via http://localhost:8101
26 version: '3.1'
27 services:
28   openemr-7-1:
29     restart: always
30     image: openemr/openemr:flex
31     ports:
32     - 8080:80
33     - 8090:443
34     volumes:
35     - .:/var/www/localhost/htdocs/openemr
36     environment:
37       EMPTY: "yes"
38   openemr-7-2:
39     restart: always
40     image: openemr/openemr:flex-edge
41     ports:
42     - 8081:80
43     - 8091:443
44     volumes:
45     - .:/var/www/localhost/htdocs/openemr
46     environment:
47       EMPTY: "yes"
48   mariadb:
49     restart: always
50     image: mariadb:10.2
51     command: ['mysqld','--character-set-server=utf8']
52     environment:
53       MYSQL_ROOT_PASSWORD: root
54   mysql:
55     restart: always
56     image: mysql:5.7
57     command: ['mysqld','--character-set-server=utf8']
58     environment:
59       MYSQL_ROOT_PASSWORD: root
60   phpmyadmin-mariadb:
61     restart: always
62     image: phpmyadmin/phpmyadmin
63     ports:
64     - 8100:80
65     environment:
66       PMA_HOST: mariadb
67   phpmyadmin-mysql:
68     restart: always
69     image: phpmyadmin/phpmyadmin
70     ports:
71     - 8101:80
72     environment:
73       PMA_HOST: mysql
74   couchdb:
75     restart: always
76     image: couchdb
77     environment:
78       COUCHDB_USER: admin
79       COUCHDB_PASSWORD: password