root@test:/home/test# docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 95388eefd716 tomcat:v10.0.7 "./bin/catalina.sh r…" 17 seconds ago Up 12 seconds 0.0.0.0:18080->8080/tcp tomcat_test 468c29ab4ed3 mysql "docker-entrypoint.s…" 20 seconds ago Up 17 seconds (health: starting) 33060/tcp, 0.0.0.0:13306->3306/tcp mysql_test root@test:/home/test# docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 95388eefd716 tomcat:v10.0.7 "./bin/catalina.sh r…" About a minute ago Up About a minute 0.0.0.0:18080->8080/tcp tomcat_test 468c29ab4ed3 mysql "docker-entrypoint.s…" About a minute ago Up About a minute (unhealthy) 33060/tcp, 0.0.0.0:13306->3306/tcp mysql_test
root@test:/home/test# docker ps --no-trunc CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES c04a1f7dbb7440894ad4ea3ac827049f4d6d0d432eac12fd3a3ea204bf11e1a8 tomcatone "./wait-for-it.sh db:3306 --strict -- ./bin/catalina.sh run - 18080:8080" 26 seconds ago Up 21 seconds 8080/tcp tomcat_test 3fb9d523bf9f6697d152a627e831504c82087d6dfa1abd0b7551637513c0fffe mysql "docker-entrypoint.sh mysqld" 6 minutes ago Up 26 seconds 33060/tcp, 0.0.0.0:13306->3306/tcp mysql_test
修改docker-compose.yaml文件command命令中的端口改为13306,执行docker-compose up后,由于访问不到对应的13306端口,tomcat没有启动“tomcat_test | wait-for-it.sh: strict mode, refusing to execute subprocess”
1 2 3 4 5 6 7 8 9
root@test:/home/test# docker-compose -f docker-compose.yaml up Starting mysql_test ... done Recreating tomcat_test ... done Attaching to mysql_test, tomcat_test …… mysql_test | 2021-07-06T16:15:19.030658Z 0 [System] [MY-010931] [Server] /usr/sbin/mysqld: ready for connections. Version: '8.0.25' socket: '/var/run/mysqld/mysqld.sock' port: 3306 MySQL Community Server - GPL. tomcat_test | wait-for-it.sh: timeout occurred after waiting 60 seconds for db:13306 tomcat_test | wait-for-it.sh: strict mode, refusing to execute subprocess tomcat_test exited with code 124