to standard and simple building and running java web in dev/pro env.
some important soflt need to be prepared:
hostname: mysql
the state will add a host resovle in the db cm mysql, in file /etc/hosts with content xxx.xx.xx.xx mysql.
it will map the address http://mysql to the db cm mysql,equals to http://localhost in the db cm mysql
the data in cm will destory when the cm is destory, you need to make volume maping from cm path to your pm path in docker-compose.yml:
/var/lib/mysqlthe db cmmysqldata file path must to mount to your pm path/usr/local/tomcat/logsthe serve cm tomcat log file path .you can mount to your pm path too/datathe db cmredisdata file path/data/activemqthe db cmactivemqdata file path will map the addresshttp://mysqlto the db cmmysql,equals tohttp://localhostin the db cmmysql
after debuging the project,start with -d arg to run in backgroud process.
you also can use docker-compose logs -f to get start log.
# run in backgroud process
docker-compose up -d
# get the start log
docker-compose logs -f- JAVA :
1.8 - Tomcat :
8.5.41 - maven :
maven:3.6.1-jdk-8 - MySQL :
10.3.15 - Redis :
5.0.7 - ActiveMQ :
5.14.3
the maven you can update it in init-conf.sh file.
the other solft version updated in docker-compose.yml file or Dockerfile file
# fetch from a remote image
# image: redis:5.0.7
# build image with a local config
build: ./redisafter updating docker-compose.yml file or Dockerfile file,need to rebuild image .you can run as below but not last:
docker-compose up --buildjavaweb-compose/
├── activemq
│ ├── data # pm data path mount to cm
│ ├── Dockerfile # the image conf file
│ └── logs # pm log path mount to cm
├── docker-compose.yml # docker-compose conf file
├── mysql
│ ├── conf # pm conf path mount to cm
│ ├── data # pm data path mount to cm
│ └── Dockerfile # the image conf file
├── README.md
├── redis
│ ├── conf # pm conf path mount to cm
│ ├── data # pm data path mount to cm
│ └── Dockerfile
└── tomcat
├── conf # pm conf path mount to cm
├── Dockerfile # image conf file
├── logs # pm log path mount to cm
└── webapps
└── ROOT # tomcat default project ROOT dir
……………